How Boundary Surface component works

unhandled

(Aris Nikolopoulos) #1

hi,
a question about ‘boundary surface’ component:
One would expect it to create a planar surface, aligned with the world axes and then trim it down to the perimeter of the curve.

Very curiously though I noticed that often, the surface is aligned to the curve (e.g. when the curve is rotated around the z axis, the surface is constructed with that orientation.)

Generaly it is not important, but I’ve found quite a few times that the orientation of the untrimmed surface is important further down the pipeline.

Does the curve carry some kind of metadata? (like orientation/local axes or something?). Any insight would be appreciated!

boundarySurface.gh (9.4 KB)


(David Rutten) #2

No, but the curve has a shape that can be evaluated, and when converted into nurbs, it has control points that give a limited set of possible orientations for which the aligned boundingbox would be minimal. Or, it allows us to find a rectangle which shares an edge with the curve, thus requiring no trimming on that side.

The less area of a surface is trimmed away, the more efficient that shape is. The function in Rhino which creates these surfaces assumes people do not care about UV orientation. If you do care, I do not know how to easily change that. For single curves yes, you can just start with a big enough oriented surface and split it, but when you have nested curves it will be difficult to convert the inside/outside logic to a fresh split.


(Aris Nikolopoulos) #3

Thanks! that answers it completely!
I have a few definitions that are based on my false assumption that the surface is always parallel to the world. Nothing that can’t be solved with a BBox.
Sorry If I’m being pedantic.


(Pfotiad0) #4

Given the opportunity [I have a feeling that making the right regions from closed curves is more important for your type of work], get some regions related stuff for the cold winter nights (or the warm ones if you listen to The Lord).

This is hybrid:
Curves_to_regions_entryLevel_V3.gh (127.9 KB)

This is not (is fast but doesn’t do the things that the next does):
Curves_to_regions_V2A.gh (130.2 KB)
Curves_to_regions_V2A.3dm (1.6 MB)

And this is rather sloooooow but does more things: (move the curves and have fun)
Curves_to_regions_entryGreekLevel_V1.3dm (94.4 KB)
Curves_to_regions_entryGreekLevel_V1.gh (115.3 KB)