Because of their ability to divide a series of polygons by an arbitrarily chosen plane, BSP trees offer the ideal data structure to perform Boolean operations on arbitrary pieces of geometry. In order to perform these operations, we have developed an algorithm that “ merges” two by BSP trees.