Hi everyone.
I’m new in this forum from the old grasshopper3d.com, so this is my first post.
I have a curved surface i want to panelize in panels of specific dimensions.
Q:I’m having a problem when I divide the surface with the ‘divide domain squared’ component.
The domain of the individual surface in the U direction (divide domain squared output)it’s different from the dimension of the same surface (u dimension output).
This happened only when i use a curved surface, made by the extrusion of an arc or a spline for example. Instead it’s all ok if i use a simple flat surface.
The same issue we can see if we measure the lenght of the borders of the surface: with ‘dimensions’ component and by extracting the lines with ‘deconstruct brep’.
Parameters are not equal to lengths. You can easily see this by dividing a curve domain into equal steps and then evaluating at the domain divisions: divide curve domain.gh (7.6 KB)
See how the division points are spaced further apart when adjacent control-points are further apart? And how there’s additional stretching near the ends of the curve? The exact same thing happens with surfaces too. Sometimes a curve or surface can be defined mathematically in such a way as to give consistent parameter spacing along its length (with lines and plane surfaces for example), but you cannot rely on this being the case.
If you want to divide into equal length segments, then you must use the Divide Curve components. Then after you’ve divided your curve you can project those division points back into surface uv space to get the actual equal length subdomains.
I extracted the parameters from Divide component and then i created a new Divide domain squared, that has a quite different result from the domain created with the original Divide domain squared.
Hi. Take a look at the attachment.
If you’d like to retrieve more even and stabilized edge length result using Divide Domain2 and Isotrim, then try to rebuild your initial referenced surface.