I need to perform boolean operations on tessellated solids. I am trying to convert each of the tessellated solids into TopoDS_Shape(using BRepBuilder) and perform the boolean operations using opencascade(BRepAlgo_BooleanOperation). This works, but the process of constructing faces for each triangles and sewing them all together to get a Topo_DSShape is tooooo slow. Does anyone have any idea regarding this? Is there a way to make this process faster or is there any other way to achieve what I am trying to do? Suggestions are welcome.