Editing isocurves

hello rhino experts,

i have a polysurface (made up of 3 surfaces) and i would like to rebuild it as a single surface (keeping the same form) while defining the isocurves myself. is this possible?


All depends on what it looks like. Post the file here and someone will take a look.

thanks for the reply wim

here is the polysurface that i have polysurface.3dm (125.1 KB) . i also attached a pdf of how i would like to rebuild my surface picture.pdf (65.9 KB)

I would say that this is not possible. But the illustration on the right in the PDF shows that the surface is changed quite a bit - so it depends on to which degree you need to keep the same form.

NURBS surfaces are always 4-sided. As such, your polysurface is good - it consists of 3 untrimmed surfaces (one of them has one edge that is collapsed into a point). The shape of the 3 differ quite a bit from each other - especially the concave one. Your target illustration shows 5 edges and will involve trimming of an oversized surface. It will be especially hard to get the sharp point at the top of your illustration.

You could experiment with extracting isocurves from your surfaces and trimming part of these off where the surfaces join. Then blend the curves and use these to loft.

But the bigger question is why you want to get a single surface.

Another approach is to create a set of curves on the polysurface from which a new single surface could be constructed. Planning is needed for where the curves are desired.

Ways create the curves on the polysurface:

  • DupEdge for the edges. Then Join to create single curves with kinks where desired.
  • Contour, however Contour creates curves in parallel planes which probably isn’t helpful for this particular surface.
  • Section as desired
  • Create a set of cutting planes, and then Intersect the cutting planes with the polysurface.
  • Create a set of lines, then Project the lines onto the surface.

The curves on the polysurface will probably need rebuilding to simplify using Rebuild, RebuildCrvNonUniform, or FitCrv

Then create the new surface using Sweep2 or NetworkSrf.

This is “creating” a new surface rather than “editing” the existing surface.

Hello- why do you want to do this? Is it for texture mapping, or?


thanks for the replies.

i did it just like davidcockey suggested, i created the desired curves on the surface and then i lofted them. This gave me the isocurves that i wanted, however the result had imperfections due to the nature of the surface itself. so i would say that wim was right when he said it is not possible.

i need this for a model i am working on using tsplines. in order for it to be without errors i needed to have exactly matching edges and these edges could only match when i create this kind of surface as i illustrated.