Interactive solid geometry via partitioning trees

The extension from interactive 2D wireframe geometry to interactive solid geometry has been for sometime one of the goals of Computer Graphics. Our approach to this objective is the utilization of a computational representation of geometric sets that we believe is better suited to geometric computation than alternatives inherited from mathematics. This representation is the binary space partitioning tree. Employing such a representation leads to simpler and faster algorithms and has enabled us to construct an elementary interactive solid geometry system which can execute effectively on workstations with no graphics acceleration hardware. Interactive manipulation of a collection of polyhedral objects is provided utilizing set operations, affine transformations, collision detection, picking and dragging, calculation of metric properties, rendering of transparent objects, and solid clipping to an arbitrary polygonal view volume. This is the first such system based on partitioning trees, and as a consequence, is the first interactive system that fully supports set operations, collision detection and transparency for arbitrary polyhedral objects.