Surface from Points (SrfGrid) does not correspond to UV Output

Hey All,

I’m trying to build a surface from a distorted grid of points but the output has UVs that are unlike those used to build it (18 vs 20 u-count). How can I directly manipulate surface UV isocurves?

Thanks in advance!

Here is one way you can get evenly distributed isocurve…(isocurves are drawn at knot locations, so the control point locations are a little different from isocurve locations.) (12.1 KB)

Wow, i’ve been looking for something like this :+1:


Thanks for helping! I should have clarified in my intial post - I’m looking to directly manipulate the isocurve grid (or knot locations?) as this allows for precise UV texture map distoriton - see image below.

In your solution, and mine previously, the grid points closest to the edge (highlighted in red) do not generate an isocurve when using the SrfGrid component. This causes the texture mapping to stretch undesirably at the edges. Ideally, I want the distorted point grid to directly relate to the surface UVs. Can this be done?

Thanks again for the assistance! (21.9 KB)

As I already mentioned, your desired outcome is just the connections of control points, not isocurves.
If you want to get that kind of isocurves, then just add knots at the every side of the edges using _InsertKnot command in rhino.

Okay, I get that control points ≠ isocurve locations but I was hoping to understand why the number of knots in the U/V direction are exactly 2 fewer than the number of control points?

The Rhino solution works (thank you!) but I was looking to achieve this parametrically, within grasshopper. In other words, how can I build a surface from a grid of knot points, not control points? (14.4 KB)

1 Like

Thanks, wasn’t aware that knot number = control point number + curve degree (-1).