Design, Implementation, and Evaluation of the Surface_mesh Data Structure

Abstract
We present the design, implementation, and evaluation of an efficient and easy to use data structure for polygon surface meshes. The design choices that arise during development are systematically investigated and detailed reasons for choosing one alternative over another are given. We describe our implementation and compare it to other contemporary mesh data structures in terms of usability, computational performance, and memory consumption. Our evaluation demonstrates that our new Surface_mesh data structure is easier to use, offers higher performance, and consumes less memory than several state-of-the-art mesh data structures.
Source Code
The benchmarks used to compare the performance of the different mesh data structures in the paper is available here. To compile the code you need to have CMake, Mesquite, CGAL, and OpenMesh installed on your system. A version of Surface_mesh is contained in the package. More details about compiling and using the code can be found in the README file.
-
New: A standalone library version of
Surface_meshis now available from the CITEC opensource server. -
Newer:
Surface_meshhas been integrated into CGAL. -
Newest: An updated version of
Surface_meshis now integrated into our new open-source Polygon Mesh Processing Library.