Gaussian and mean curvatures calculation on a triangulated 3d surface
Calculation of Gaussian (GC) and mean curvatures (MC) of a discrete surface. Coordinates of the point are given by x, y, z. tri is a triangulation table which gives the vertex ID of each triangle. The IDs is consistent with the order of data points in x,y,z. It returns GC and MC at each point.
The method is based on this paper:
Meyer, M., Desbrun, M., Schröder, P., & Barr, A. H. (2003). Discrete differential-geometry operators for triangulated 2-manifolds. In Visualization and mathematics III (pp. 35-57). Springer Berlin Heidelberg.
Available at : http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.24.3427&rep=rep1&type=pdf
WARNING: The curvatures data at the edges of domain is not reliable. It
artificially gives zero instead of non-sense data.
Update version 1.1:
The above paper, gives a vector for MC and the absoulute value of mean
curvature is half of the norm of this vector. Therfore, in this way the sign is
not given. Here, I used a dot product betwen the MC vector and the normal
vector at each point calculated based on weighted averaging of the
triangle normal vectors given by MATLAB. I'm not sure what is the convention of
MATLAB in determining the direction for the normal vectors. But it seems
that they are all consistent toward one side of the surface. So the
calculated signed MC shows the change of sign in data, but it can not
gaurantee that, for example, the positive MC is for a locally convex
region (if the GC is positive).
Written by Alireza Dastan 21/01/2017
email: ardastan@gmail.com
Cite As
Alireza Dastan (2024). Gaussian and mean curvatures calculation on a triangulated 3d surface (https://www.mathworks.com/matlabcentral/fileexchange/61136-gaussian-and-mean-curvatures-calculation-on-a-triangulated-3d-surface), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- MATLAB > Mathematics > Computational Geometry > Delaunay Triangulation >
- Sciences > Mathematics > Geometry > Computational Geometry >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.