Real-time rendering of CSG models. More...
Classes | |
class | SoCSGAction |
CSGAction class. More... | |
class | SoCSGGroup |
Group node for Constructive Solid Geometry rendering. More... | |
class | SoCSGOperation |
Class which computes a CSG operation (OR, AND, SUB, etc) from 2 solid objects. More... | |
class | SoSolidViz |
Class to initialize SolidViz. More... |
Real-time rendering of CSG models.
DEPRECATED: SolidViz is deprecated and no longer supported since OIV 9.5.
NOTE: The classes in this extension do not exist in Open Inventor 10.0 and later.The SolidViz extension provides solid modeling nodes for describing 3D shapes as combinations of other shapes using Boolean operations such as merge, intersection, and subtraction.
NOTE: SolidViz is not a separately licensed extension. You must have an OpenInventor license string.
CSG stands for Constructive Solid Geometry. It is a powerful method for describing a 3D shape as a combination of simpler 3D shapes using the Boolean operations merge (union), intersection, and subtraction. For instance, the expression "(A-B)+C" means remove B from A, then merge the result with C. This is called a CSG expression, describing a CSG tree.
Actual computation of the geometry resulting from a CSG expression can be a slow process, at least not fast enough for real-time updates in interactive applications.
However a visual simulation of a CSG shape can be achieved in many cases at interactive speed by a special rendering method taking advantage of accelerated OpenGL rendering and the stencil buffer.
SolidViz implements a visual simulation of CSG shapes.
A new group node (SoCSGGroup) allows the specification of a CSG expression.
Note: Some additional classes for computing the actual geometry are provided on an "as-is" basis, with no support or warranty. See the SolidViz directory $OIVHOME/examples/source/SolidViz/examples/csgAction and $OIVHOME/examples/source/SolidViz/examples/csgOperation.
This group node performs a Constructive Solid Geometry (CSG) rendering. The children of this group define the solids that are involved in the CSG models.
The steps required to realize an interactive rendering of a CSG shape are the following:
The example program $OIVHOME/examples/source/SolidViz/examples/csgGroup.cxx shows these steps.