SubD Conversion glitch in grasshopper

I found a weird glitch where if I take this brep:

… and then convert to SubD in grasshopper, I get a broken vertex in one spot, like this:

For some reason, if I rotate the referenced brep in Rhino a little bit, it fixes it:

Any idea why this would happen?

Here’s the definition used to convert it, with internalized data. There’s a curve object you can highlight to create a bounding box around the problem area so you can find it, and a stream filter to toggle between the input brep and the slightly rotated input brep.

Sub (539.0 KB)

It’s a naked edge.

Moving the object 0.001 units in Y direction eliminates the issue too.

I think it has to do with the tolerance.
Putting an Align Vertices component before your NGON script solves the problem.

Pretty cool object…

I’m confused, the input object is a closed polysurface.

Running _What returns this:


ID: aa6f5e9d-8e39-4fec-bab3-801aac6506ba (94)
Object name: (not named)
Layer name: Work
Render Material:
source = from layer
index = -1

Valid polysurface.
closed solid polysurface with 389 surfaces.
Edge Tally:
905 manifold edges
Edge Tolerances: all 0.000
Vertex Tolerances: all 0.000
Render mesh: 389 basic custom meshes 2876 vertices 2009 polygons
Analysis mesh: none present

The problem is where you create the mesh from Brep. That new mesh has naked edges.

I had to create meshes from polylines recently too and chose to use a script. In your case creating the meshes from Brep Face boundaries directly leads to the meshes you want to turn into Ngons.

Attached file deleted, new version in my next post below

Ah, gotcha. When I input a mesh made by running _Mesh and _AddNgonsToMesh in rhino, it works fine.

I didn’t make the python script, I thought it was just a one-line script that used whatever the python version of Rhino’s _AddNgonsToMesh command is.

I’ll play with tolerances. I’ve had other problems with this script failing with certain tolerance conflicts and with nonmanifold edges.

I just found this post here where Giulio Piacentino posted a better script to turn Polylines to NGONs

Your example with that script: (262.1 KB)

1 Like