Class SurfaceCurvature

Class Documentation

class SurfaceCurvature

Compute per-vertex curvature (min,max,mean,Gaussian).

Curvature values for boundary vertices are interpolated from their interior neighbors. Curvature values can be smoothed. See meyer_2003_discrete and cohen-steiner_2003_restricted for details.

Public Functions

SurfaceCurvature(SurfaceMesh &mesh)

construct with mesh to be analyzed

~SurfaceCurvature()

destructor

void analyze(unsigned int post_smoothing_steps = 0)

compute curvature information for each vertex, optionally followed by some smoothing iterations of the curvature values

void analyze_tensor(unsigned int post_smoothing_steps = 0, bool two_ring_neighborhood = false)

compute curvature information for each vertex, optionally followed by some smoothing iterations of the curvature values

inline Scalar mean_curvature(Vertex v) const

return mean curvature

inline Scalar gauss_curvature(Vertex v) const

return Gaussian curvature

inline Scalar min_curvature(Vertex v) const

return minimum (signed) curvature

inline Scalar max_curvature(Vertex v) const

return maximum (signed) curvature

inline Scalar max_abs_curvature(Vertex v) const

return maximum absolute curvature

void mean_curvature_to_texture_coordinates() const

convert (precomputed) mean curvature to 1D texture coordinates

void gauss_curvature_to_texture_coordinates() const

convert (precomputed) Gauss curvature to 1D texture coordinates

void max_curvature_to_texture_coordinates() const

convert (precomputed) max. abs. curvature to 1D texture coordinates