Grasshopper

algorithmic modeling for Rhino

Hello,

I have a definition with mainly GHPython components using the rhinoscriptsyntax library.

Often the polysurfaces are displayed completely wrong. In this case I lofted the cross-sectional polylines:

If I set the display quality to "High" it gets better but still has random mistakes:

When I bake it though, everything turns out the way it should:

This happens especially often when using trims.

Does anyone know what's going on and how to prevent it?

Cheers,

Max

Views: 381

Replies to This Discussion

I suspect the creases in the surface are not treated as proper creases. When geometry is baked to the 3dm document then Rhino applies a whole range of algorithms designed to detect and repair quirks. One of the things it does is figure out whether a surface has a sharp crease running across it, and if it does it will split that surface at the crease and create a polysurface instead.

Surfaces with creases often result in lame meshes. Most components which potentially output creased surfaces actually perform this check as well, but if you're making the geometry yourself through code then perhaps you need to also split creases?

Hi David, thanks for the quick response.

I tried exploding it (was that what you meant?) but it didn't work. I noticed it returns True on IsBrep but False on IsPolysurface...what does that mean? In Rhino lofting like this would have produced a polysurface.

You can try calling BrepFaceList.SplitKinkyFaces on the Faces member of your brep.

"SplitKinkyFaces" ^^ You guys are the best.

Thanks, I'll try with that.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service