boolean_union_mesh_mesh

compas.geometry.boolean_union_mesh_mesh(A, B)[source]

Compute the boolean union of two triangle meshes.

Parameters
  • A ((list, list)) – The vertices and faces of mesh A.

  • B ((list, list)) – The vertices and faces of mesh B.

Returns

tuple – The vertices and the faces of the boolean union.

Examples

>>> from compas.geometry import Box, Sphere
>>> from compas.geometry import boolean_union_mesh_mesh
>>> from compas.geometry import trimesh_remesh
>>> from compas.datastructures import Mesh
>>> box = Box.from_width_height_depth(2, 2, 2)
>>> box = Mesh.from_shape(box)
>>> box.quads_to_triangles()
>>> sphere = Sphere([1, 1, 1], 1)
>>> sphere = Mesh.from_shape(sphere, u=30, v=30)
>>> sphere.quads_to_triangles()
>>> A = box.to_vertices_and_faces()
>>> B = sphere.to_vertices_and_faces()
>>> B = trimesh_remesh(B, 0.3, 10)
>>> V, F = boolean_union_mesh_mesh(A, B)
>>> union = Mesh.from_vertices_and_faces(V, F)