asl / BandageNG

a Bioinformatics Application for Navigating De novo Assembly Graphs Easily
GNU General Public License v3.0
113 stars 10 forks source link

Provide better UI for paths #85

Open asl opened 2 years ago

asl commented 2 years ago

@ekg I started to draft better UI for paths. Unfortunately, I cannot check how the things are implemented in gfaestus – while after few hours I was able to compile it, I'm unable to run it.

ekg commented 2 years ago

Sorry that it's hard to run. FWIW, We are rewriting based on waragraph to simplify the GPU related dependencies. But if you have a chance please share your errors with Christian (author).

The key things are being able to go from a node to path positions and from path positions to nodes. That's most of what gfaestus and waragraph (1D, newer) aspire to both implement.

So the desired functionality would be 1) an interface that allows selection of a path name and entry of a path position or range, selecting the nodes in that range and zooming to them, and 2) given a selected node show what paths and step positions are on it.

Bonus would be 3) BED input of many ranges -> colors and or labels on the graph using the same positional mechanisms.

On Mon, Jul 11, 2022, 11:35 Anton Korobeynikov @.***> wrote:

@ekg https://github.com/ekg I started to draft better UI for paths. Unfortunately, I cannot check how the things are implemented in gfaestus – while after few hours I was able to compile it, I'm unable to run it.

— Reply to this email directly, view it on GitHub https://github.com/asl/BandageNG/issues/85, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABDQEJNSKCYEASG3KOIWBDVTPTGRANCNFSM53G3YGQQ . You are receiving this because you were mentioned.Message ID: @.***>

asl commented 2 years ago

Thanks!

Sorry that it's hard to run. FWIW, We are rewriting based on waragraph to simplify the GPU related dependencies. But if you have a chance please share your errors with Christian (author).

Sure! But basically relying on Vulkan (for a non-game app) seems to be a culprit here. In the end I received "invalid driver" or something like this w/o clear understanding how to debug / fix.

ekg commented 2 years ago

Yup, it's awkward as a dependency, but Vulkan is what allows gfaestus to provide zoomable views of whole chromosome pangenome graphs with base-level variation. The rewrite in the works rebuilds things on a more portable subset of Vulkan.

Anyway, for this conversation the key thing is the functionality, which is just as well described in the abstract. Does it make sense what I'm suggesting?

asl commented 2 years ago

@ekg Yes, all this make perfect sense! Thanks!

asl commented 2 years ago

@ekg What do to exactly mean as step in given a selected node show what paths and step positions are on it.?

asl commented 2 years ago

Ok, I think you just mean the node positions. This is WIP currently:

Screenshot 2022-07-24 at 17 07 38
asl commented 2 years ago

Path position search is also done:

Screenshot 2022-07-24 at 18 45 11
asl commented 2 years ago

I'm going to keep this open in case more requests / ideas will appear