algorithmic modeling for Rhino
A sneak preview of some components + a user object I've been working on. Goodie #1 is a dynamic list selector; Goodie #2 is a dynamic Geometry Pipeline that accepts inputs to specify layer, name, and object type; and Goodie #3 is an implementation of a half-edge data structure that finds closed regions from intersecting planar curves. (With much faster and more reliable results than surface split.)
Tags:
Comment
Stay tuned - I'd like to get these released within the next month.
haha was hoping no one would notice :-p
Such a component can not go unnoticed.
How are things going for abres?
When will be released? It's too useful.
highly useful tools! looking forward for human!
Hi newy011 -
The bug in goodie #3 was due to the fact that I was solving the network topology as straight lines and then applying that back to the curves. This meant that any extreme curve segment that deviated widely from the line connecting its end points would fail. However, I've built in a clause now that will take those curves and subdivide them into smaller segments, thereby eliminating the problem. It's not 100% perfect (the decision of how many segments to generate is somewhat arbitrary) but it seems to fix the vast majority of error cases.
What happens if the input curves create a 'cul-de-sac' for #3? Does the bug in your code become even more troublesome?
Simon - thanks for the suggestion, this is something I'm likely to include in the next release of HDT Utilities (possibly rebranded "Human") along with other queries to the rhino document, like the list of hatch patterns, linetypes, material names, etc.
Benjamin -
#1. If you remove the item from the list, it automatically selects the next item (or previous if the item was at the end of the list)
#2 produces AND conditions between name, layer, and object type, the same as the basic pipeline component.
#3. I was inspired to do it by Trevor Patt's effort here: http://codequotidien.wordpress.com/2012/08/15/half-edge-mesh-2/
But I wrote my implementation from scratch because I was having trouble with his script. He has recently updated his implementation, so you may find it more effective - although I think his works with straight line segments only.
Great things! It would be also be great to have a compenent that outputs all rhino layers in a list.
Great work!!
What does #1 do if you remove the chosen item from the incoming list?
I'm assuming #2 is creating AND conditions when combining input criteria (must be on layer x AND be a curve, for example) rather than OR, is that correct?
#3 is awesome! Such a great thing! I would love to see the code for implementing your half-edge data structure, if you'd be willing to share. Did you base it off of someone else's implementation?
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by
You need to be a member of Grasshopper to add comments!