Retaining certain Vertices through QuadRemeshing

Hey folks,
I wrote a ghpthon implementation of the new QuadRemesh command. So far it looks very promising (big props to you devs, this feature is amazing!) and I’m looking forward how the functionality will develop.
While doing this, the question arose if it may be possible to implement a behavior where certain Vertices supplied to the command (either via index in the input mesh or via vertex location) are retained through the remeshing process. There is a MeshBreps component in Karamba that pretty much lets you do this (you can supply specific point locations that will be included in the meshed result) but the result is always a triangulated mesh.

For example: I have a mesh whose naked vertices I want to keep “fixed” through the remeshing process. I read that QuadRemesh is intended to work primarily on closed meshes but I have to say that I managed to get quite good results with open meshes, too.

As a side question I was wondering if the target edgelength “mode” will be accessible via RhinoCommon, too?

Any help regarding this matter is highly appreciated! :slight_smile:

Hi @efestwin! Glad to hear that the new quad remesher is working well for you! The vertex request is currently on the road map and I hope to see it added at some point during 7’s life cycle. I’ll look to adding a target edge length option to the QuadRemeshParameters. Until then you can calculate it now like this by calculating the equivalent target quad count.

Target Quad Count = Area(InputMesh) / Desired Target Edge Length²


Hey Trav,
thanks so much for your quick reply! It’s awesome to hear that the feature I mentioned is already on the Roadmap. I’m really looking forward to it!

Computing TargetQuadCount via the area is also a really good hint. Now that you mentioned it, it seems obvious :smile:

I also managed to get a kind of workaround going for setting the naked vertices. But as it’s iterative it’s veeery slow at the moment.
I will share both implementations here as soon as I have the time for those who are interested (might be today, might be on the weekend).


1 Like

Nice! I’d love to see it in action!

1 Like