Grasshopper

algorithmic modeling for Rhino

Hi Everyone

Any thoughts on how i can extract mesh faces that have naked edge/s?

I currently have a computer heavy logic that uses face centres and closest points to reroute out the meshes i want but this does not seem like the best way.

Another idea i have been working on is using the naked mesh vertex index's to search all mesh faces to find which faces contain the naked vertices and use this data to extract them from the mesh, but yet to crack the logic to do this.

Thanks

Matt

Views: 4279

Replies are closed for this discussion.

Replies to This Discussion

Here's an approach that basically does what you describe, getting the indices of the naked mesh vertices and testing each face for the presence of one of those vertices. In the purple groups are two alternate ways of finding the naked vertex indices, one using the kangaroo naked vertices component, one using uto's "mesh edit tools". You might also be able to save a step at the end by using weaverbird's "Reroute Faces" component. 

Hi Andrew,

Thats a great help, although the logic of seaching with MIndex all faces does seem to be alot heavier than my closest point code logic i had written which i had not expected.

If i get anything super fast i will post it, as working with fractal meshes so the code gets heavy fast.

Thanks Again

Matt

I've been thinking a little more... here's a faster way with some custom scripting. With the old version, a mesh with 10000 faces took 69.2 seconds, and the same mesh in the new version is figured out in under a second, and handles a mesh with 1,000,000 faces in under 20 seconds. 

Attachments:

Hi Andrew

Sorry for the Delay,

That seems super fast compared to the old system. I have realised though that i am better rethinking the overal logic of the system and build a less heavy mesh in place of subdividing down a large mesh then removing the excess at a later stage. Making the whole code faster lighter.

Thanks for all your help

Matt

Maybe a bit late, but just to point out -

RhinoCommon has a method called HasNakedEdges that gives exactly this.

See the attached file for an example.

Attachments:

ah! I had no idea, brilliant. 

Hi, my project too has too many naked edges and non-manifold edges. How your script works? I tried to applied to mine but the components are too old, so its not usable.

Sorry for the delay, if you code maybe post your project files/code and some images of the issues maybe i can help further. As this forum is now just for reference i would suggest starting a new thread referencing this thread on here. https://discourse.mcneel.com/

Heroic

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service