Benchmarks | C++

Remesh

Decimation and isotropic remeshing.

Benchmarks for mesh decimation and isotropic remeshing. See experimental setup for methodology.

Both libraries require half-edge connectivity. CGAL's Surface_mesh includes built-in half-edge topology; TrueForm precomputes tf::half_edges and tags them onto the input. This isolates algorithm time from topology construction in both cases.

Decimation

Quadric error decimation to 50% of original face count. TrueForm uses tf::decimated with parallel partitioned collapse; CGAL uses Surface_mesh_simplification::edge_collapse with Edge_count_ratio_stop_predicate.

Source: TrueForm, CGAL

Decimation (50%)

CGAL

Decimation (Speedup)

vsCGAL

TrueForm quadric decimation is 50× faster than CGAL at 1M polygons. In addition to speed, TrueForm produces higher quality output meshes: the distribution of minimum triangle angles is more concentrated around 60° (equilateral), and Chamfer distance to the original surface is lower.

Decimation by Ratio (1M polygons)

Same benchmark on the 1M polygon mesh, varying the target ratio from 0.9 (light decimation) to 0.1 (aggressive decimation).

Decimation by Ratio (1M polygons)

CGAL

Decimation by Ratio (Speedup)

vsCGAL

TrueForm maintains 50–65× speedup across all decimation ratios, while consistently producing triangles with better minimum angle distributions and lower Chamfer error relative to the original surface.

Isotropic Remeshing

Isotropic remeshing with target edge length = 2× mean edge length, 3 iterations. TrueForm uses tf::isotropic_remeshed; CGAL uses PMP::isotropic_remeshing. Both use default settings with no aspect ratio constraint and midpoint vertex placement.

Source: TrueForm, CGAL

Isotropic Remeshing (2× mel)

CGAL

Isotropic Remeshing (Speedup)

vsCGAL

TrueForm isotropic remeshing is 26× faster than CGAL at 1M polygons with target length 2× mel.

Pathological Case Study on 1M Polygons

On a 1M polygon mesh with a tight edge length distribution — as is the case with an already-remeshed or CAD-generated mesh — setting the target length to 1× mel means most edges are already near the target. The algorithm must still iterate through all edges, performing marginal splits, collapses, and flips that largely cancel out. This stress-tests the per-operation overhead and parallelism of the implementation rather than net geometric change. Higher multipliers (2×–4×) represent the more typical use case of actual coarsening.

Isotropic Remeshing by Multiplier (1M polygons)

CGAL

Isotropic Remeshing by Multiplier (Speedup)

vsCGAL

At 1× mel, CGAL takes over 3 minutes while TrueForm completes in 606ms — a 315× speedup. At higher multipliers, TrueForm maintains 26–44× speedup.