Theoretical Foundations
The boundary representation used by C3D provides an exact description of the geometric shape of a modeled object. The geometric shape in C3D is described by a set of faces that lie on the boundary separating the interior of the modeled object from the rest of space. Faces are curved surfaces that are joined to each other along their edges. The edges of faces can have a complex shape. The formation and joining of faces are performed during model construction. These operations are provided by the model construction methods and the data organization in C3D.
Geometric constraints that describe relationships between model elements and other conditions are formulated as equations. To find a solution that satisfies these equations, the C3D Solver parametric kernel uses a variational approach. The variational approach ensures that all geometric constraints are treated equally.
Using triangulation, the boundary representation makes it possible to construct a polygonal representation of the model, which is used for visualization and geometric computations. Polygonal objects consist of triangular and quadrilateral patches that approximate faces, and polylines that approximate edges. In the C3D Modeler geometric kernel, triangulation is performed according to the Delaunay principle in the parameter space of surfaces.
For curves and surfaces, the C3D Modeler geometric kernel can create NURBS (Non-Uniform Rational B-Spline) copies. NURBS objects are used for direct modeling and for data exchange when there is no direct correspondence between C3D objects and objects of exchange formats.
The mathematical objects, methods, and algorithms used in C3D are described in the book by N. N. Golovanov, “Geometric Modeling”, 2nd edition, Moscow: DMK Press, 2024.