Cap command is corrupting the surface

Hey. I’ve got some strange problem with capping the polysurface after Sweep1.

I’ve got curve and rail as on picture below. The location of starting point is not accidental. After Sweep1 I want to have seam in this point.

After Sweep1 everything look fine. I’ve got my front face divided as I wanted.

After making cap on my polysurface, something strange is happening. The front face is corrupted which can be seen in shaded and rendered view and in zebra analysis

This resulting impossibility in latter BooleanDifference operation.

Why is that ?

You might want to post your file

Sure.

CapProblem.3dm (401.3 KB)

I think my approach to an object like this would be to create a closed poly line with ortho on, then fillet corners as desired to make the cross section. Then I would extrude it. If you need it to be a solid instead of an extrusion, then explode it, select all the pieces and join them.

This is not to say that Sweep1 shouldn’t work.

Hello - run the DivideAlongCreases command, with no pre-selection and set SplitAttangents =Yes, then select the object.
Surfaces that have segments that are tangent and not curvature continuous (e.g. often created when the input is tangent arcs and straights) can cause problems for the meshing needed to display the object in shaded modes - by splitting the surfaces up at tangent locations, each new face is meshed independently. This is generally a better situation for other operations as well.

-Pascal

hi Pascal, This seems like a bad meshing bug, no? A user should not have to split a surface for this to work IMO.

G

Yes. Or, splitting should just happen, and merging should be the thing you have to do deliberately. I have not got any traction with that over the years. SplitAttangents=Yes/No in some commands is the best we have.

-Pascal

Me neither.

At least if that was set to yes by default, it wouldn’t be so bad. But it’s not.

I’ll give it another spin…

RH-61054 ExtrudeCrv: Split by default

-Pascal

I didn’t have a problem with extruding that curve to a solid.

The curve does however have a few unnecessary control points at the top.

Below is a screenshot with the faulty brep from @kubadrozdowski and mine in front

Hi Martin - if you use extrusions then the splitting occurs; if 1) UseExtrusions is set to Polysurfaces (not the default) and 2) SplitAtTangents=No (default) then you get the combined surfaces in ExtrudeCrv.

-Pascal

I’ve only seen trouble from extrusions not split at tangents. What’s their benefit? What’s a good use case to have decided to make them a default behavior?

G

1 Like

Exactly!

Philip