Boolean operations with 3D data

Hi Open 3D community,

I would like to recieve some advice regarding a certain Open 3D functionality in 3D data processing. I am interested in knowing whether Open 3D can be used to perform Boolean operations between two objects defined by triangle meshes, such as calculating diference, union and intersection.

By going through the showcased examples and functionalities that Open 3D has, I have seen many great features that I will definetly use for my own project. However, I would like to recieve some feedback from the community on whether such things are ment for Open 3D.

Thanks in advance!


I’m not an expert of Boolean operations, but I assume they may be highly related to convex hulls and intersections. There have been scattered functions
e.g. BoundingVolume, CreateFromPointCloudAlphaShape, but I’m not aware of systematical boolean operations.

Can you please point us to potential reference implementations and give us a sense how it would be useful for real-world tasks?

I am interested in performing boolean operations between two objects defined by triangular meshes (such as .stl format files) in order to calculate the intersection and difference. See the following picture as an example:

I am planning to use this funtionalities to simulate machining operations and use the resultant mesh for FEM calculations.

I know you can do it with cloudcompare and Cork plugin:

You could also try to use PyMesh: