New Quad Remesher - Additional Parameters in RhinoCommon / Grasshopper Call?


absolutely great work on the new QuadRemesh command, thank you so much.
@Trav @scottd

Are there particular reasons why not all options of the Rhino-Interface are exposed in the API?
Or am I missing something?

For example, symmetry or guide-curves would be awesome.

I know it is WIP, just trying to understand and see if there are chances in the future.

Kind Regards

1 Like

this would be awesome!

@robert_vier the simple answer is we’re still not finished adding features to this command. For example I have multi-axis symmetry in the works so before we make RhinoCommon wrappers for all of this stuff we need to get the functionality settled in. They will become available as we progress a bit further and we’re making sure to build it in a way that it will be available to the SDK’s.



I would like to try Quad Remeshing the bases of the meshes that I use for measuring the volumes of piles on construction sites. The mesh was created from drone photos and a photogrammetry program. The only documentation for the parameters is what I found in Rhinocommon:

QuadRemesh(self: Mesh, parameters: QuadRemeshParameters) -> Mesh

but this is a little too cryptic for me to figure out how to code the options that I see on the form when I select QuadRemesh from the Toolbar:
Target Quad Count
Adaptive Size
Use Surface Edges
Symmetry Axis
Guide Curves
Detect Hard Edges
Convert to SubD

Edit: I found details on the parameters at:

So it looks like I have enough to give it a try soon.


1 Like


Looks like you found what you needed to get started. I tried to be as descriptive as I could in the QuadRemeshParameter class info but if any of it’s confusing just shout. You’ll also find several Mesh.QuadRemesh() overloads on the Mesh class.

There are several different methods based on whether or not you’re supplying guide curves, re-meshing a mesh or static functions for re-meshing a brep input as well as similar async versions for multi-threading. I may have went a little overkill but tired to add lots of options for developers to use. I also just recently switched over the QuadRemesh command to use these same API calls as well so anything you see the command doing is happening through RhinoCommon.

You can also find a grasshopper definition at the bottom of the post linked below that contains a script using the RhinoCommon methods. It should also help to get you started.