image thumbnail

Patch Curvature

version 1.2.0.0 (314 KB) by Dirk-Jan Kroon
Principal, Gaussian and Mean Curvature of triangulated mesh

2.7K Downloads

Updated 15 Jan 2014

View License

This function calculates the principal curvature directions and values
of a triangulated mesh.

The function first rotates the data so the normal of the current
vertex becomes [-1 0 0], so we can describe the data by XY instead of
XYZ.
Secondly it fits a least-squares quadratic patch to the local
neighborhood of a vertex "f(x,y) = ax^2 + by^2 + cxy + dx + ey + f".
Then the eigenvectors and eigenvalues of the hessian are used to
calculate the principal, mean and gaussian curvature.

[Cmean,Cgaussian,Dir1,Dir2,Lambda1,Lambda2]=patchcurvature(FV,usethird)

inputs,
FV : A triangulated mesh (see Patch)
usethird : Use third order neighbour vertices for the curvature
fit, making it smoother but less local. true/ false (default)

outputs,
Cmean : Mean Curvature
Cgaussian : Gaussian Curvature
Dir1 : XYZ Direction of first Principal component
Dir2 : XYZ Direction of second Principal component
Lambda1 : value of first Principal component
Lambda2 : value of second Principal component

Cite As

Dirk-Jan Kroon (2021). Patch Curvature (https://www.mathworks.com/matlabcentral/fileexchange/32573-patch-curvature), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2011a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired: TPMS Designer

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!