The package includes besides basic primitives more sophisticated solids such as superquadrics, 151 polyhedra, and 3D objects either defined by closed algebraic surfaces or Boolean functions. The 3D objects are subjected to geometric transformations such as scaling, rotation and translation and thus can be deformed, oriented and positioned at any spatial location. By means of Boolean operators (such as union, difference, intersection, symmetric difference, nor, xnor, nand, complement) applied to these solids it is possible to combine them to more complex bodies. Operations typical for constructive solid geometry such as extrusion and sweeping are introduced and will admit the creation of 3D solids from 2D Boolean functions by extrusion. Skewed objects such as prisms etc. are generated by sweeping too.
All procedures required are provided in the package SolidModeling.m, many examples for the creation of solids and their manipulation are given in the two supplemental articles.
In addition, another useful tool for orientation of 3D objects is viewPointSelector which facilitates the determination of an optimal viewpoint. Unfortunately, this viewpoint selector which was implemented in Mathematica V5.2 became obsolete since V6. However, due to private communication with Alexander Elkins and the MathGroup Archive from 2008 an improved version was constructed which generates a floating interactive palette. Just see : "viewPointSelector.nb" and "viewPointSelector_GeneratingPalette.nb" .