Sweep 2 Rails and 2 cross section Curves issue

Hi there, sometimes I faced the issue with the result of created polysurface. So when I select 2 rails and start section curve and end, then I select where I want the seam to be placed, and along that seam, surfaces are not joined for a bizarre reason. However, when I join a created polysurface to another that open edge closed.

Post a .3dm file with an example of input curves and your result. You can post a file by dragging it to where you type a post, or by clicking on the vertical arrow icon above where you type a post.

Uploaded 3dm

sweep2railsIssue.3dm (240.5 KB)

Hi Pavlo,

Nurbs surfaces are four sided. Seams are a feature of closed surfaces, ie surfaces that curve around so that a pair of opposing edges meet (e.g. in a cylinder). They mark where those edges lie.

Your objects are polysurfaces, in this case four surfaces joined together. You don’t have seams between surfaces, you have edges. If you leave the seam indicator running along an edge then Rhino shrugs its shoulders and ignores it. By moving it into the middle of one surface you are saying split this surface into two here. I guess Rhino doesn’t check whether you have a closed surface and places edges there.

Leave the seam marker lying along an edge and you’ll be fine. You’ll have four surfaces in your polysurface, not five, and you won’t end up with a seam. Only adjust the seam if you are working with a closed surface.

HTH
Jeremy

EDIT “Closed” is used below to describe a surface or polysurface where all coincident edges are joined, even if there are holes in the surface or polysurface.

This is different. ShowEdges does not show the seam of a closed polysurface as a naked edge. This appears to be caused by the particular pair of sections which are closed polycurves.

I downloaded the file and looked at the geometry. The sections are closed polycurves, but the polysurface produced by Sweep2 is not closed with a seam. Instead is an open surface with a “split” (a pair of coincident naked edges). The expected and usual result when the sections are closed polycurves is a closed polysurface, not an open polysurface.

I was able to reproduce this result with the original rail and section curves in the file. An open surface always resulted, independent of where I set the seam. However, if only one section (either section) is used the result is a closed polysurface. Modifying or replacing the rails also results in an open polysurface. Building new sections which match the original sections and using the original rails results in a closed polysurface. Therefore the cause appears to be the something about the sections in combination.

Hi David,
I’m not following you here: surely, if you sweep - whether one rail or two, one curve or two - a closed curve you always get an open polysurface, because it is uncapped. You have to sweep a surface to get a closed polysurface.

A closed surface is closed if two edges coincide. A closed polysurface is closed if there are two surfaces meeting at every edge. Closed means two different things - which doubtless makes this discussion confusing.

If you take any closed polycurves and sweep them with the “seam” moved away from an edge, a split surface is created.

However the concept of a seam is meaningless for a polysurface, and indeed if you attempt to use _Srfseam on a polysurface it won’t accept it as an input. Perhaps the sweeps should take account of the objects being swept and only present the seam alignment option if they are closed curves, not closed polycurves.

I suspect the extra edges are not joined because this is a use case that nobody thought of at McNeel so there is no provision made for joining them - why would anyone move the seam on a surface for which a seam is not applicable? EDIT: I’ve just revisited this with some new curves and now I am seeing these edges being joined, so it is catered for in some circumstances. I haven’t yet worked out why you sometimes get a join and sometimes don’t. More experiment called for…

Does that make sense?

Regards
Jeremy

This is a simplified redo of my now deleted previous post.

@jeremy5 That is the issue here, independent of the terminology used to describe it. When closed polycurve/polycurves are swept, extruded or lofted in Rhino the standard result is a polysurface with a seam or seams which have all coincident edges joined.

Hi David,

I posted a couple of examples per your request (deleted post) but revisited them and found they didn’t show what I thought so I deleted my post too. I have a horrible suspicion I had Edge Analysis set to All before…

Anyway, re the OP’s object. The two shapes are constructed differently. In particular the curved portion is an arc on one and a nurbs arc on the other. A couple of the straight sections at one end are degree 2, all the rest are degree 1. If you change the degree 2 lines to degree 1 and replace the nurbs arc with an arc then the “seam” edges will be joined. If you have one or two nurbs arcs or keep the degree 2 lines then they won’t.

Could I ask you to check and confirm that? I don’t trust my ability to get the facts right just now…

Regards
Jeremy

Yes, that results in the conicident edges being joined.

I did the same, but realized it before posting. :slightly_smiling_face: