6533b829fe1ef96bd128af39

RESEARCH PRODUCT

Extending CSG with projections: Towards formally certified geometric modeling

Dominique MichelucciSebti FoufouGeorge M. Tzoumas

subject

[ INFO ] Computer Science [cs]Disjoint setsDisjunctive normal formIndustrial and Manufacturing EngineeringProjection (linear algebra)Interval arithmeticConstructive solid geometryConstructive solid geometry[INFO.INFO-NI]Computer Science [cs]/Networking and Internet Architecture [cs.NI][INFO.INFO-RB]Computer Science [cs]/Robotics [cs.RO]Homotopy equivalenceGeometric primitiveBinary expression tree[INFO]Computer Science [cs]ProjectionComputingMilieux_MISCELLANEOUSMathematicsDiscrete mathematics[INFO.INFO-DB]Computer Science [cs]/Databases [cs.DB]HomotopyFormal methodsDisjunctive normal formComputer Graphics and Computer-Aided Design[INFO.INFO-GR]Computer Science [cs]/Graphics [cs.GR]Computer Science ApplicationsAlgebra[INFO.INFO-TI]Computer Science [cs]/Image Processing [eess.IV][INFO.INFO-DC]Computer Science [cs]/Distributed Parallel and Cluster Computing [cs.DC]

description

We extend traditional Constructive Solid Geometry (CSG) trees to support the projection operator. Existing algorithms in the literature prove various topological properties of CSG sets. Our extension readily allows these algorithms to work on a greater variety of sets, in particular parametric sets, which are extensively used in CAD/CAM systems. Constructive Solid Geometry allows for algebraic representation which makes it easy for certification tools to apply. A geometric primitive may be defined in terms of a characteristic function, which can be seen as the zero-set of a corresponding system along with inequality constraints. To handle projections, we exploit the Disjunctive Normal Form, since projection distributes over union. To handle intersections, we transform them into disjoint unions. Each point in the projected space is mapped to a contributing primitive in the original space. This way we are able to perform gradient computations on the boundary of the projected set through equivalent gradient computations in the original space. By traversing the final expression tree, we are able to automatically generate a set of equations and inequalities that express either the geometric solid or the conditions to be tested for computing various topological properties, such as homotopy equivalence. We conclude by presenting our prototype implementation and several examples. Extension of classical CSG with the projection operator.Support for gradient computations.Topological property computation.Application of formal methods like interval analysis and proof assistants to CSG models.

https://hal.archives-ouvertes.fr/hal-01205752