Benchmarks | C++

Geometry

Curvature estimation and geometric analysis.

Benchmarks for geometric property computation. See experimental setup for methodology.

Principal Curvatures

Computation of principal curvature values and directions at each vertex. Topology is computed from scratch for each run. Both libraries use quadric fitting on k-ring neighborhoods with k=2. TrueForm uses tf::compute_principal_curvatures with parallel k-ring traversal; libigl uses igl::principal_curvature with sequential processing.

The benchmark meshes contain non-manifold geometry, which igl::principal_curvature does not support. To ensure a fair comparison, both libraries are tested on generated sphere meshes sized to match each input mesh's polygon count.

Source: TrueForm, libigl

Principal Curvatures

libigl

Principal Curvatures (Speedup)

vs libigl

TrueForm principal curvature computation is 55× faster than libigl at 1M polygons.

Point Normals

Computation of vertex normals by averaging adjacent face normals. Topology is computed from scratch for each run. TrueForm uses tf::compute_point_normals with parallel face membership traversal; libigl uses igl::per_vertex_normals with area weighting; VTK uses vtkPolyDataNormals with consistency checking and splitting disabled.

Source: TrueForm, libigl, VTK

Point Normals

libigl

Point Normals (Speedup)

vs libigl
vs

TrueForm point normal computation is 3× faster than libigl and 7× faster than VTK at 1M polygons.