Class SurfaceSimplification

Nested Relationships

Nested Types

Class Documentation

class SurfaceSimplification

Surface mesh simplification based on approximation error and fairness criteria.

Performs incremental greedy mesh simplification based on halfedge collapses. See kobbelt_1998_general and garland_1997_surface for details.

Public Functions

SurfaceSimplification(SurfaceMesh &mesh, bool keep_quadrics = false)

Construct with mesh to be simplified.

Throws:

InvalidInputException – if the input precondition is violated.

Pre:

Input mesh needs to be a pure triangle mesh.

~SurfaceSimplification()

Destructor.

void initialize(Scalar aspect_ratio = 0.0, Scalar edge_length = 0.0, unsigned int max_valence = 0, Scalar normal_deviation = 0.0, Scalar hausdorff_error = 0.0)

Initialize with given parameters.

bool simplify(unsigned int n_vertices)

Simplify mesh to n_vertices. Returns true if n_vertices is reached.

Public Static Functions

static void calculate_quadrics(SurfaceMesh &mesh)

Calculates quadrics for a mesh.