skip to main content
research-article
Public Access

Mesh arrangements for solid geometry

Published: 11 July 2016 Publication History

Abstract

Many high-level geometry processing tasks rely on low-level constructive solid geometry operations. Though trivial for implicit representations, boolean operations are notoriously difficult to execute robustly for explicit boundary representations. Existing methods for 3D triangle meshes fall short in one way or another. Some methods are fast but fail to produce closed, self-intersection free output. Other methods are robust but place prohibitively strict assumptions on the input, e.g., no hollow cavities, non-manifold edges or self-intersections. We propose a systematic recipe for conducting a family of exact constructive solid geometry operations. The two-stage method makes no general position assumptions and does not resort to numerical perturbation. The method is variadic, operating on any number of input meshes. This generalizes unary mesh-repair operations, classic binary boolean differencing, and n-ary operations such as finding all regions inside at least k out of n inputs. We demonstrate the superior effectiveness and robustness of our method on a dataset of 10,000 "real-world" meshes from a popular online repository. To encourage development, validation, and comparison, we release both our code and dataset to the public.

Supplementary Material

MP4 File (a39.mp4)

References

[1]
Attene, M. 2010. A lightweight approach to repairing digitized polygon meshes. The Visual Computer.
[2]
Attene, M. 2014. Direct repair of self-intersecting meshes. Graphical Models.
[3]
Banerjee, R. P., and Rossignac, J. R. 1996. Topologically exact evaluation of polyhedra defined in CSG with loose primitives. Comput. Graph. Forum.
[4]
Barki, H., Guennebaud, G., and Foufou, S. 2015. Exact, robust, and efficient regularized booleans on general 3d meshes. Computers and Mathematics with Applications.
[5]
Bernstein, G., and Fussell, D. 2009. Fast, exact, linear booleans. In Proc. SGP.
[6]
Bernstein, G., 2013. Cork boolean library. https://github.com/gilbo/cork.
[7]
Bieri, H., and Nef, W. 1988. Elementary set operations with d-dimensional polyhedra. In Proc. IWCGA.
[8]
Campen, M., and Kobbelt, L. 2010. Exact and robust (self-) intersections for polygonal meshes. Comput. Graph. Forum.
[9]
Campen, M., and Kobbelt, L. 2010. Polygonal Boundary Evaluation of Minkowski Sums and Swept Volumes. Comput. Graph. Forum.
[10]
Campen, M., Attene, M., and Kobbelt, L., 2012. A practical guide to polygon mesh repairing. Eurographics Tutorial.
[11]
CARVE, 2014. Carve: An efficient and robust library for boolean operations on polyhedra. http://carve-csg.com/.
[12]
CGAL, 2015. Cgal, Computational Geometry Algorithms Library. http://www.cgal.org.
[13]
Douze, M., Franco, J.-S., and Raffin, B. 2015. QuickCSG: Arbitrary and faster boolean combinations of n solids. Tech. Rep. 01121419, Inria Research Centre Grenoble, Rhone-Alpes.
[14]
Edelsbrunner, H., and Mücke, E. P. 1990. Simulation of simplicity: A technique to cope with degenerate cases in geometric algorithms. ACM Trans. Graph..
[15]
Fortune, S. 1997. Vertex-rounding a three-dimensional polyhedral subdivision. Discrete Comput. Geom.
[16]
Granados, M., Hachenberger, P., Hert, S., Kettner, L., Mehlhorn, K., and Seel, M. 2003. Boolean operations on 3d selective nef complexes: Data structure, algorithms, and implementation. In Proc. ESA.
[17]
Jacobson, A., Kavan, L., and Sorkine-Hornung, O. 2013. Robust inside-outside segmentation using generalized winding numbers. ACM Trans. Graph..
[18]
Jacobson, A., Panozzo, D., et al., 2016. libigl: A simple C++ geometry processing library. http://libigl.github.io/libigl/.
[19]
Mei, G., and Tipper, J. C. 2013. Simple and robust boolean operations for triangulated surfaces. arXiv preprint arXiv:1308.4434.
[20]
Milenkovic, V. J., and Nackman, L. R. 1990. Finding compact coordinate representations for polygons and polyhedra.
[21]
Museth, K., Breen, D. E., Whitaker, R. T., and Barr, A. H. 2002. Level set surface editing operators. ACM Trans. Graph..
[22]
Naylor, B., Amanatides, J., and Thibault, W. 1990. Merging bsp trees yields polyhedral set operations. In Proc. SIGGRAPH.
[23]
Pavic, D., Campen, M., and Kobbelt, L. 2010. Hybrid Booleans. Comput. Graph. Forum.
[24]
Sacht, L., Jacobson, A., Panozzo, D., Schüller, C., and Sorkine-Hornung, O. 2013. Consistent volumetric discretizations inside self-intersecting surfaces. Proc. SGP.
[25]
Sacks, E., and Milenkovic, V. 2014. Robust cascading of operations on polyhedra. Computer-Aided Design (Tech. Note).
[26]
Sugihara, K., and Iri, M. 1992. Construction of the Voronoi diagram for one million generators in single-precision arithmetic. Proc. of the IEEE.
[27]
Thibault, W. C., and Naylor, B. F. 1987. Set operations on polyhedra using binary space partitioning trees. In Proc. SIGGRAPH.
[28]
Varadhan, G., Krishnan, S., Sriram, T., and Manocha, D. 2004. Topology preserving surface extraction using adaptive subdivision. In Proc. SGP.
[29]
Wang, C. C. L. 2011. Approximate boolean operations on large polyhedral solids with partial mesh reconstruction. IEEE TVCG.
[30]
Xu, S., and Keyser, J. 2013. Fast and robust booleans on polyhedra. Computer-Aided Design.
[31]
Zhao, H., Wang, C. C., Chen, Y., and Jin, X. 2011. Parallel and efficient boolean on polygonal solids. The Visual Computer.
[32]
Zhou, Q., Panetta, J., and Zorin, D. 2013. Worst-case structural analysis. ACM Trans. Graph..

Cited By

View all
  • (2025)Blending weight BSP Tree for mesh Boolean operationsComputer-Aided Design10.1016/j.cad.2025.103849182(103849)Online publication date: May-2025
  • (2025)Predictive Methods and Probabilistic Mapping of Subcortical Brain Components in Fossil CarnivoraJournal of Comparative Neurology10.1002/cne.70014533:1Online publication date: 9-Jan-2025
  • (2024)Impact of data structure types and spatial resolution on landslide volumetric change measurementsGeodesy and cartography10.3846/gac.2024.2064750:4(179-197)Online publication date: 18-Dec-2024
  • Show More Cited By

Index Terms

  1. Mesh arrangements for solid geometry

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Graphics
    ACM Transactions on Graphics  Volume 35, Issue 4
    July 2016
    1396 pages
    ISSN:0730-0301
    EISSN:1557-7368
    DOI:10.1145/2897824
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 11 July 2016
    Published in TOG Volume 35, Issue 4

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. arrangements
    2. booleans
    3. constructive solid geometry

    Qualifiers

    • Research-article

    Funding Sources

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)575
    • Downloads (Last 6 weeks)70
    Reflects downloads up to 03 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2025)Blending weight BSP Tree for mesh Boolean operationsComputer-Aided Design10.1016/j.cad.2025.103849182(103849)Online publication date: May-2025
    • (2025)Predictive Methods and Probabilistic Mapping of Subcortical Brain Components in Fossil CarnivoraJournal of Comparative Neurology10.1002/cne.70014533:1Online publication date: 9-Jan-2025
    • (2024)Impact of data structure types and spatial resolution on landslide volumetric change measurementsGeodesy and cartography10.3846/gac.2024.2064750:4(179-197)Online publication date: 18-Dec-2024
    • (2024)Exact and Efficient Intersection Resolution for Mesh ArrangementsACM Transactions on Graphics10.1145/368792543:6(1-14)Online publication date: 19-Dec-2024
    • (2024)Stripe Embedding: Efficient Maps with Exact Numeric ComputationACM Transactions on Graphics10.1145/368791543:6(1-14)Online publication date: 19-Dec-2024
    • (2024)Multi-Material Mesh-Based Surface Tracking with Implicit Topology ChangesACM Transactions on Graphics10.1145/365822343:4(1-14)Online publication date: 19-Jul-2024
    • (2024)A Heat Method for Generalized Signed DistanceACM Transactions on Graphics10.1145/365822043:4(1-19)Online publication date: 19-Jul-2024
    • (2024)Capacitive Touch Sensing on General 3D SurfacesACM Transactions on Graphics10.1145/365818543:4(1-20)Online publication date: 19-Jul-2024
    • (2024)Implicit Swept Volume SDF: Enabling Continuous Collision-Free Trajectory Generation for Arbitrary ShapesACM Transactions on Graphics10.1145/365818143:4(1-14)Online publication date: 19-Jul-2024
    • (2024)Generalized eXtended Finite Element Method for Deformable Cutting via Boolean OperationsComputer Graphics Forum10.1111/cgf.15184Online publication date: 17-Oct-2024
    • Show More Cited By

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Login options

    Full Access

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media