algorithmic modeling for Rhino

{0} Branch Addressing, Maintaining Tree Structure through simplify even when only operating on one branch?

How do you make sure that the initial branch address is maintained through simplify?

Working on:



But only working on Branch {0} on its own in an operation which uses simplify. Makes new branches, that is with one digit address, i.e. {0}{1}{2} and ignores its {0} address - This then creates a branch that already exists but are not being used until later on.. The new {1} will clash with the original {1} branch when I bring the assembly back together.

Q. Is there a way to graft up, so that the principle branch is maintained?


Views: 857

Replies to This Discussion

dont simplify

lol easier said than done -

It seems there are too many variables in the cases I am using. Input variables. Uncontrollable variables, so I want to be able to constrain the variables. I thought that keeping the entire tree intact but leaving branches empty might be the way forward?


That's conceivable. But simplify doesn't do you any favors - it does nothing to how trees WORK (except causing problems in variable tree scenarios). Important to note that when matching trees GH actually ignores their branch paths entirely - it just goes one by one through them. so {0} {1} {2} in one input and {0;0;0} {0;0;1} {0;0;2} in another will work just fine. 

And again feel free to post an example - I'm happy to show you my version of a best-practice approach :) 

I'm being flippant - but I'm serious. If you stop using simplify you'll be much happier. It takes a little more work to manage your trees relatively using path shift but it is much more robust to variability in upstream tree structure. If you post a definition I'd be happy to demonstrate the approach with your particular problem!

I'll second Andrew here and strongly recommend using shift paths as a means to maintain desirable and stable data tree structure...the problem you're having is in fact the exact reason not to use simplify. 

One possibility is the Elefront plugin; which allows you to reference and filter via attributes, as well maintain tree structure through the baking/reference process. This allows you to maintain Andrews rules and have additional selection/distribution possibilities.

Thanks guys. I stopped using simplify a while ago, but haven't found an automated approach so will take a look at shift?


I think the fact that I am not using shift has complicated certain "bottle-necks" where I use multiple path mappers to make sure the info goes through.

Your comments welcome.


Hey Jonathan - I'd like to take a thorough look at this. At a first glance I can tell there's a lot of opportunities for path management improvement. I will try to go through your definition and show some alternative approaches - it may take me a little while however as this is a big and complex routine!






  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service