algorithmic modeling for Rhino
I am trying to understand and modify a Grasshopper script that has a lot of components and wire connections. Sometimes the two connected entities are far in the canvas and there is a tangle of wires! Does anyone know if there is a way to quickly detect the end of a wire from its starting point? Thank you for your help.
If you select the component where the wire is coming from, and then hit ctrl+right arrow, all of the components that depend on the selected component will become selected. If you do shift+ctrl+right arrow, then it will add all dependent components to the selection...you can "walk" down your definition this way and quickly understand dependencies.
It also works in the other direction, using the left arrow. One of Grasshopper's many, wonderful, partly hidden UI treats.
Thank you David for the tip. I think I can manage with ctrl+right arrow.
Besides named views via the toolbar and the pencil tool to crudely add letters to the canvas to match the view name, just select the component involved to turn its wires green, then use a mouse with a scroll wheel, even on a laptop, to quickly zoom out to see the whole canvas and move the mouse pointer to where you want to re-zoom at and scroll on in. This is so fast I don't think about needing any other strategy.
For housecleaning I often start stacking components on top of each other, leaving vertical space for the Canvas Widgets > Profiler timing displays, and grouping them, using faint wires between groups, and faint wires only become very faint when zoomed in, you can still see them selected as thick green, when zoomed way out.
Thank you Nik for your reply. I will try to follow your advice about how to tidy up the canvas. I was thinking like you that "quickly zoom out to see the whole canvas and move the mouse pointer to where you want to re-zoom at and scroll on in. This is so fast I don't think about needing any other strategy.", but when wires becomes really tangled and connected components are far from each other you get lost, believe me :)
maybe you can try the Jump component(s) (from Params > Util Tab). it's not exacly what you asked for, but I think it might be good to know that option exists too.
Oh, thank you Pieter. This will be definitely useful.