-
Notifications
You must be signed in to change notification settings - Fork 31
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* node-hover * fixed table/added tests * fixed table/added tests * removed comment * Update empress/support_files/js/canvas-events.js Co-authored-by: Marcus Fedarko <[email protected]> * Update empress/support_files/js/canvas-events.js Co-authored-by: Marcus Fedarko <[email protected]> * Update empress/support_files/js/biom-table.js Co-authored-by: Marcus Fedarko <[email protected]> * Update empress/support_files/js/biom-table.js Co-authored-by: Marcus Fedarko <[email protected]> * ENH: Add initial stab at circular layout Needs further inspection and testing, and of course the JS needs to be modified to draw "vertical lines" as for the rect. layout (but now with curves, etc.) but this seems like a decent start * DOC: add details re circ layout alg and TODOs * ENH: draw circ layout arcs (not beziers yet), etc Lotta ugly hacky code in this commit. Will get things working then from there backtrack to make things pretty and well tested before the PR. This is looking actually pretty nice. Will probably need to fix the "shape" of the circular layout though LOL * Update empress/support_files/js/drawer.js Co-authored-by: Yoshiki Vázquez Baeza <[email protected]> * Update tests/test-biom-table.js Co-authored-by: Yoshiki Vázquez Baeza <[email protected]> * MNT: don't generate arc info for root (circlayout) * BUG: still store pos data for root * MNT: on 2nd thought draw "arc" for c.layout root consistency will be useful, and we can adjust later as needed also improved js docs for # lines needed * DOC: document c0/c1 stuff for circ layout better * BUG: Actually draw tips for circ layout turns out that the reason things in this layout looked 'incomplete', off, etc. was that xc0 and yc0 info was only being stored for internal nodes, giving the dubious impression that penultimate nodes were tips. With this, remaining circular layout TODOs are 1) drawing fancy curved arcs for internal nodes 2) adjust the UI to get the thick line stuff to work properly with the circular layout 3) clean up code, esp messy portions (like maybe store xc0/xc1 info in the layoutToCoordSuffix object somehow, by making it interpret an array of two suffixes as start and endpoints) 3) add tests * MNT: Don't store root arc info; smooth arcs; docs Improved documentation on *why* attempting to draw an arc for the root is kinda useless. Hopefully shouldn't have to update that again ._. I split up the line segment for the circular layout into two, one connecting an internal node's endpoint with its arc start and another connecting the node endpoint with its arc endpoint. This makes the layout look A LOT better; it's still essentially an approximation, though. What we need to do is hijack the WebGL code to draw bezier curves (starting and ending at the arc start/endpoints, and passing through the internal node endpoint) instead. Uh, hopefully that isn't too difficult? LOL I guess we'll see. * DOC: improve circ layout coordinate docs Addressing some ambiguities, and fixing an error w prev commit docs * DOC: add note re: internal node arcs + cornercases * BUG/MNT: Proper thick lines in c.layout; code chgs I moved the general "corner-computing" code from within Empress.thickenSameSampleLines() to its own function within VectorOps. This allows a lot more code reuse, but I think we could make the code even more compact by allowing _addTriangleCoords() to accept {tL: ..., ...} objects directly. * MNT: Make _addTriangleCoords accept corners obj ... Instead of accepting individual corner coordinates. This makes life a bit easier, or at least makes the code a bit cleaner (since now we can funnel the output from VectorOps.computeBoxCorners() straight into Empress._addTriangleCoords()). Of course it's worth noting that making the circular layout draw the arcs with curved lines/beziers (and not just as the disjointed line segments) will probably mean we'll have to abandon this particular function for that particular use case. for now, tho, this looks pretty nice * added autocomplete, and handled multiple nodes found * ENH: Small readability changes for hover table * named autocomp div * linted code * for reference, update qzv * circular layout * added tests to circular layout calculation * fix lint issue * fixed some of the tests issues * fixed test_core.py error * added tests and fixed computeBoxCorners() * added python tests * fixed format errors * Update tests/test-vector-ops.js Co-authored-by: Marcus Fedarko <[email protected]> Co-authored-by: Marcus Fedarko <[email protected]> Co-authored-by: Yoshiki Vázquez Baeza <[email protected]> Co-authored-by: Yoshiki Vázquez Baeza <[email protected]>
- Loading branch information
1 parent
db462fa
commit a994c47
Showing
10 changed files
with
804 additions
and
146 deletions.
There are no files selected for viewing
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.