Split mesh using face domain

Does anyone know of a plugin or scripting method of how to split a mesh with a series of domains? it would basically work as an ‘‘unjoin’’ function?

e.g. when you join meshes the face order is maintained thus supplying domains would be a very computationally effective way to split large meshes into smaller parts, as opposed to conventional methods.

Are you maybe talking about partitions:

https://developer.rhino3d.com/5/api/RhinoCommonWin/html/M_Rhino_Geometry_Mesh_CreatePartitions.htm

https://developer.rhino3d.com/5/api/RhinoCommonWin/html/M_Rhino_Geometry_Mesh_GetPartition.htm

Other than, it would be pretty straight forward to copy the mesh N (i.e. amount of domain times), and then delete their faces by lists of face ID domains. But I guess this all depends on what more explicitly you mean by splitting a mesh and:

The RhinoCommon mesh class has these split methods.

Edit: I keep linking to the V5 API, here’s the V6 one (which has new fancy meshy stuff).

1 Like

Thank you Anders for getting back to me!

As I understand with the partition mesh function, it only allows for maximum values of meshes and is culling the rest of the mesh faces? This would be difficult for a domain such as 50-97 for instance as the first 50 faces would remain in this example. Maybe I’m wrong, but I am noob with coding!

The problem with the duplicating method as you mentioned is that if a mesh is heavy such as a completely joined building entity then duplicating requires serious computational power. The other issue with cull function is it too is relatively heavy when dealing with large mesh face counts. Constructing a mesh however is much quicker when only supplying the face’s and then later culling unused vertices, however, this methodology requires duplicating the host mesh multiple times :frowning: