Benchmarks | C++

Topology

Connected components and boundary detection.

Benchmarks for mesh connectivity analysis. See experimental setup for methodology.

Connected Components

Labeling of face-connected components. Topology is computed from scratch for each run. TrueForm uses tf::make_manifold_edge_connected_component_labels with parallel union-find; VTK uses vtkPolyDataConnectivityFilter; CGAL uses connected_components; libigl uses igl::facet_components.

Source: TrueForm, VTK, CGAL, libigl

Connected Components

CGAL
libigl

Connected Components (Speedup)

vs
vsCGAL
vs libigl

TrueForm connected component labeling is 11× faster than CGAL, 17× faster than libigl, and 5× faster than VTK at 1M polygons.

Boundary Paths

Extraction of boundary edges organized into connected paths. Topology is computed from scratch for each run. TrueForm uses tf::make_boundary_paths with Hierholzer's algorithm; VTK uses vtkFeatureEdges; CGAL uses extract_boundary_cycles; libigl uses igl::boundary_loop.

Source: TrueForm, VTK, CGAL, libigl

Boundary Paths

CGAL
libigl

Boundary Paths (Speedup)

vsCGAL
vs libigl
vs

TrueForm boundary path extraction is 12× faster than CGAL, 13× faster than libigl, and 14× faster than VTK at 1M polygons.