Exact, robust, and efficient regularized Booleans on general 3D meshes

Hichem Barki, Gaël Guennebaud, Sebti Foufou

Research output: Contribution to journalArticlepeer-review


Computing Boolean operations (Booleans) of 3D polyhedra/meshes is a basic and essential task in many domains, such as computational geometry, computer-aided design, and constructive solid geometry. Besides their utility and importance, Booleans are challenging to compute when dealing with meshes, because of topological changes, geometric degeneracies, etc. Most prior art techniques either suffer from robustness issues, deal with a restricted class of input/output meshes, or provide only approximate results. We overcome these limitations and present an exact and robust approach performing on general meshes, required to be only closed and orientable. Our method is based on a few geometric and topological predicates that allow to handle all input/output cases considered as degenerate in existing solutions, such as voids, non-manifold, disconnected, and unbounded meshes, and to robustly deal with special input configurations. Our experimentation showed that our more general approach is also more robust and more efficient than Maya's implementation (×3), CGAL's robust Nef polyhedra (×5), and recent plane-based approaches. Finally, we also present a complete benchmark intended to validate Boolean algorithms under relevant and challenging scenarios, and we successfully ascertain both our algorithm and implementation with it.

Original languageEnglish (US)
Pages (from-to)1235-1254
Number of pages20
JournalComputers and Mathematics with Applications
Issue number6
StatePublished - Sep 1 2015


  • 3D meshes
  • Boolean operations
  • Computational geometry
  • Robust geometric computation
  • Solid modeling

ASJC Scopus subject areas

  • Modeling and Simulation
  • Computational Theory and Mathematics
  • Computational Mathematics


Dive into the research topics of 'Exact, robust, and efficient regularized Booleans on general 3D meshes'. Together they form a unique fingerprint.

Cite this