Search code examples
3dmeshvertexunity3d-editor

How to Separate Objects Contained Within a Single 3D Mesh


What is the name of the process or feature that I might find in a 3D mesh application that can take a single mesh and organize it into collections of one or more distinct meshes such that:

  1. There exists a path from any one vertex in one collection to any other vertex in the same collection, and

  2. There exists NO path from any one vertex in any one collection to any other vertex in any other collection.

As a specific example of my question, below is a rendering of a single mesh for a telephone (done by someone else). Presumably, the receiver, the cord and telephone are separate objects (e.g. no vertex in the receiver is reachable from any vertex in the cord or telephone, no vertex in the cord is reachable from any vertex in the receiver or telephone and no vertex in the telephone is reachable from any vertex in the receiver or cord).

enter image description here

When 3D printing, I'd like to print the receiver and telephone separately and not print the cord at all.

I imagine that some mesh applications contain functionality to separate these objects as I've described above, but not having any experience working with meshes, I don't know the name of the feature I'm looking for.

Additionally, and a little off-topic, can anyone identify some applications that contain this functionality.


Solution

  • This process is called "split disjoint(s)" and it does the following:

    1. Start from the first triangle
    2. Find all adjacent triangles
    3. Once there are no other triangles to be added, pull out the Mesh and go to point 1.