Skip to main content

OpenVolumeMesh – A Versatile Index-Based Data Structure for 3D Polytopal Complexes

  • Conference paper
Proceedings of the 21st International Meshing Roundtable

Summary

We present a data structure which is able to represent heterogeneous 3-dimensional polytopal cell complexes and is general enough to also represent non-manifolds without incurring undue overhead. Extending the idea of half-edge based data structures for two-manifold surface meshes, all faces, i.e. the two-dimensional entities of a mesh, are represented by a pair of oriented half-faces. The concept of using directed half-entities enables inducing an orientation to the meshes in an intuitive and easy to use manner.

We pursue the idea of encoding connectivity by storing first-order top-down incidence relations per entity, i.e. for each entity of dimension d, a list of links to the respective incident entities of dimension d − 1 is stored. For instance, each half-face as well as its orientation is uniquely determined by a tuple of links to its incident half-edges or each 3D cell by the set of incident half-faces. This representation allows for handling non-manifolds as well as mixed-dimensional mesh configurations. No entity is duplicated according to its valence, instead, it is shared by all incident entities in order to reduce memory consumption. Furthermore, an array-based storage layout is used in combination with direct index-based access. This guarantees constant access time to the entities of a mesh.

Although bottom-up incidence relations are implied by the top-down incidences, our data structure provides the option to explicitly generate and cache them in a transparent manner. This allows for accelerated navigation in the local neighborhood of an entity.

We provide an open-source and platform-independent implementation of the proposed data structure written in C++ using dynamic typing paradigms. The library is equipped with a set of STL compliant iterators, a generic property system to dynamically attach properties to all entities at run-time, and a serializer/deserializer supporting a simple file format. Due to its similarity to the OpenMesh data structure, it is easy to use, in particular for those familiar with OpenMesh. Since the presented data structure is compact, intuitive, and efficient, it is suitable for a variety of applications, such as meshing, visualization, and numerical analysis. OpenVolumeMesh is open-source software licensed under the terms of the LGPL.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 219.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alumbaugh, T.J., Jiao, X.: Compact Array-Based Mesh Data Structures. In: Hanks, B.W. (ed) IMR, pp. 485–503. Springer (2005) ISBN: 978-3- 540-25137-8

    Google Scholar 

  2. Beall, M.W., Shephard, M.S.: A General Topology-Based Mesh Data Structure. International Journal for Numerical Methods in Engineering 40(9), 1573–1596 (1997)

    Article  MathSciNet  Google Scholar 

  3. Botsch, M., Steinberg, S., Bischoff, S., Kobbelt, L.: OpenMesh – a generic and efficient polygon mesh data structure. In: OpenSG Symposium (2002)

    Google Scholar 

  4. Campagna, S., Kobbelt, L., Seidel, H.-P.: Directed Edges - A Scalable Representation for Triangle Meshes. Journal of Graphics Tools 3(4) (1998)

    Google Scholar 

  5. Canino, D.: Mangrove Topological Data Structure, http://mangrovetds.sourceforge.net

  6. Celes, W., Paulino, G.H., Espinha, R.: A compact adjacency-based topological data structure for finite element mesh representation. International Journal for Numerical Methods in Engineering 64(11), 1529–1556 (2005) ISSN: 1097-0207

    Article  MATH  Google Scholar 

  7. Damiand, G.: Combinatorial Maps. In: CGAL User and Reference Manual. CGAL Editorial Board, 4.0 edition (2012a)

    Google Scholar 

  8. Damiand, G.: Contributions aux Cartes Combinatoires et CartesGénéralisées: Simplification, Modèles, Invariants Topologiques et Applications. Habilitation à diriger des recherches, Université Lyon 1 (2010)

    Google Scholar 

  9. Damiand, G.: Linear Cell Complex. In: CGAL User and Reference Manual. CGAL Editorial Board, 4.0 edition (2012b)

    Google Scholar 

  10. De Floriani, L., Kobbelt, L., Puppo, E.: A Survey on Data Structures for Level-of-Detail Models. In: Advances in Multiresolution for Geometric Modelling Series in Mathematics and Visualization, vol. 243, p. 523 (2007)

    Google Scholar 

  11. Dobkin, D.P., Laszlo, M.J.: Primitives for the manipulation of three-dimensional subdivisions. In: Proceedings of the Third Annual Symposium on Computational Geometry, SCG 1987, pp. 86–99. ACM, New York (1987)

    Chapter  Google Scholar 

  12. Edelsbrunner, H.: Algorithms in combinatorial geometry. Springer-Verlag New York, Inc., New York (1987) ISBN: 0-387-13722-X

    Google Scholar 

  13. De Floriani, L., Hui, A.: A scalable data structure for three-dimensional non-manifold objects. In: Symposium on Geometry Processing (2003)

    Google Scholar 

  14. De Floriani, L., Hui, A.: Data Structures for Simplicial Complexes: An Analysis and a Comparison. In: Symposium on Geometry Processing (2005)

    Google Scholar 

  15. De Floriani, L., Hui, A.: Shape Representations Based on Simplicial and Cell Complexes. In: Schmalstieg, Dieter, & Jiri Bittner (eds), Eurographics, - State of the Art Reports, Prague. Eurographics Association (2007)

    Google Scholar 

  16. Garimella, R.V.: Mesh Data Structure Selection for Mesh Generation and FEA Applications. International Journal of Numerical Methods in Engineering 55(4), 451–478 (2002)

    Article  MATH  Google Scholar 

  17. Granados, M., Hachenberger, P., Hert, S., Kettner, L., Mehlhorn, K., Seel, M.: Boolean Operations on 3D Selective Nef Complexes: Data Structure, Algorithms, and Implementation. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 654–666. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  18. Gross, P.W., Kotiuga, P.R.: Data Structures for Geometric and Topological Aspects of Finite Element Algorithms. Progress in Electromagnetics Research 32, 151–169 (2001) ISSN: 1070-4698

    Article  Google Scholar 

  19. Knupp, P., Subcase, L., Mitchell, S.A.: Integration of Mesh Optimization with 3D All-Hex Mesh Generation (1999)

    Google Scholar 

  20. Lage, M., Lewiner, T., Lopes, H., Velho, L.: CHF: a scalable topological data structure for tetrahedral meshes. In: Sibgrapi 2005 (XVIII Brazilian Symposium on Computer Graphics and Image Processing), Natal, RN, pp. 349–356. IEEE (2005)

    Google Scholar 

  21. Ledoux, F., Weill, J.-C., Bertrand, Y.: GMDS: A Generic Mesh Data Structure. In: 17th International Meshing Roundtable, United States (2008)

    Google Scholar 

  22. Lienhardt, P.: Topological models for boundary representation: a comparison with n-dimensional generalized maps. Computer-Aided Design 23(1), 59–82 (1991) ISSN: 0010-4485

    Article  MATH  Google Scholar 

  23. Mäntylä, M.: An Introduction to Solid Modeling. Computer Science Press, Inc., New York (1987) ISBN: 0-88175-108-1

    Google Scholar 

  24. Möbius, J., Kobbelt, L.: OpenFlipper: An Open Source Geometry Processing and Rendering Framework. In: Boissonnat, J.-D., Chenin, P., Cohen, A., Gout, C., Lyche, T., Mazure, M.-L., Schumaker, L. (eds.) Curves and Surfaces 2011. LNCS, vol. 6920, pp. 488–500. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  25. Murdoch, P., et al.: The spatial twist continuum: a connectivity based method for representing all-hexahedral Finite element meshes. Finite Elem. Anal. Des. 28(2), 137–149 (1997) ISSN: 0168-874X

    Article  MathSciNet  MATH  Google Scholar 

  26. Remacle, J.-F., Shephard, M.S.: An algorithm oriented mesh database. International Journal for Numerical Methods in Engineering 58(2), 349–374 (2003)

    Article  MATH  Google Scholar 

  27. Schöberl, J.: NETGEN An advancing front 2D/3D-mesh generator based on abstract rules. Computing and Visualization in Science 1, 41–52 (1997) ISSN: 1432-9360

    Article  MATH  Google Scholar 

  28. Seegyoung Seol, E., Shephard, M.S.: Efficient distributed mesh data structure for parallel automated adaptive analysis. Eng. with Comput. 22(3), 197–213 (2006) ISSN: 0177-0667

    Article  Google Scholar 

  29. Stroustrup, B.: The C++ programming language, 3 edn. Addison-Wesley-Longman (1997) ISBN: 978-0-201-88954-3

    Google Scholar 

  30. Tautges, T.J.: MOAB-SD: integrated structured and unstructured mesh representation. Eng. Comput (Lond.) 20(3), 286–293 (2004)

    Google Scholar 

  31. Teillaud, M.: Three Dimensional Triangulations in CGAL (1999)

    Google Scholar 

  32. Trotts, I.J., Hamann, B., Joy, K.I., Wiley, D.F.: Simplification of tetrahedral meshes. In: Proceedings of the conference on Visualization 1998, VIS 1998, pp. 287–295. IEEE Computer Society Press (1998) ISBN: 1-58113-106-2

    Google Scholar 

  33. Weiler, K.J.: Radial Edge Structure: A Topological Representation for Nonmanifold Geometric Boundary Modeling. In: Geometric Modeling for CAD Applications, pp. 3–36 (1988)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michael Kremer .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kremer, M., Bommes, D., Kobbelt, L. (2013). OpenVolumeMesh – A Versatile Index-Based Data Structure for 3D Polytopal Complexes. In: Jiao, X., Weill, JC. (eds) Proceedings of the 21st International Meshing Roundtable. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33573-0_31

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33573-0_31

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33572-3

  • Online ISBN: 978-3-642-33573-0

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics