Skip to main content

Abstract

In many cases notions from differential geometry can be usefully extended to piecewise planar surfaces, and this chapter covers curvature measures on triangle meshes. A frequently used principle is to obtain a smooth surface approximation and to estimate the curvature from this approximation. Alternatively, the integral of some curvature measures can be computed from a small region of the mesh and then normalized by dividing by the area of that region.

Following these principles, we first discuss how to extend the definition of a surface normal to the edges and vertices of a triangle mesh. Next, we cover the estimation of Gaußian and mean curvature on a triangle mesh. Finally, techniques for computing the shape operator are discussed—followed by a discussion on how to obtain the principal curvatures from the shape operator.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 49.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    A spherical polygon is a polygon on a unit sphere: a polygon whose vertices are points on a unit sphere and whose edges are segments of great circles connecting these vertices.

References

  1. Pinkall, U., Polthier, K.: Computing discrete minimal surfaces and their conjugates. Exp. Math. 2(1), 15–36 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  2. Desbrun, M., Meyer, M., Schröder, P., Barr, A.H.: Implicit fairing of irregular meshes using diffusion and curvature flow. In: Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH ’99, pp. 317–324. ACM Press, New York (1999). doi:10.1145/311535.311576

    Google Scholar 

  3. Thürmer, G., Wüthrich, C.A.: Computing vertex normals from polygonal facets. J. Graph. Tools 3(1), 43–46 (1998)

    Article  MATH  Google Scholar 

  4. Bærentzen, J., Aanæs, H.: Signed distance computation using the angle weighted pseudo-normal. IEEE Trans. Vis. Comput. Graph. 11(3), 243–253 (2005)

    Article  Google Scholar 

  5. do Carmo, M.P.: Differential Geometry of Curves and Surfaces. Prentice-Hall, Englewood Cliffs (1976)

    MATH  Google Scholar 

  6. Meyer, M., Desbrun, M., Schröder, P., Barr, A.H.: Discrete differential-geometry operators for triangulated 2-manifolds. In: Hege, H.-C., Polthier, K. (eds.) Visualization and Mathematics III, pp. 35–57. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  7. Cohen-Steiner, D., Morvan, J.-M.: Restricted Delaunay triangulations and normal cycle. In: Proceedings of the Nineteenth Annual Symposium on Computational Geometry, SCG ’03, pp. 312–321. ACM Press, New York (2003). doi:10.1145/777792.777839

    Google Scholar 

  8. Hildebrandt, K., Polthier, K.: Anisotropic filtering of non-linear surface features. Comput. Graph. Forum 23(3), 391–400 (2004)

    Article  Google Scholar 

  9. Golub, G.H., van Loan, C.F.: Matrix Computations, 3rd edn. John Hopkins, Baltimore (1996)

    MATH  Google Scholar 

  10. Hamann, B.: Curvature approximation for triangulated surfaces. In: Geometric Modelling, pp. 139–153. Springer, London (1993)

    Chapter  Google Scholar 

  11. Surazhsky, T., Magid, E., Soldea, O., Elber, G., Rivlin, E.: A comparison of Gaussian and mean curvatures triangular meshes. In: Proceedings of IEEE International Automation (ICRA2003), Taipei, Taiwan, 14–19 September, pp. 1021–1026 (2003)

    Google Scholar 

  12. Taubin, G.: Estimating the tensor of curvature of a surface from a polyhedral approximation. In: Proceedings of the Fifth International Conference on Computer Vision, ICCV ’95, p. 902. IEEE Comput. Soc., Washington (1995)

    Google Scholar 

  13. Hertzmann, A., Zorin, D.: Illustrating smooth surfaces. In: Proceedings of the 27th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH ’00, pp. 517–526. ACM, New York (2000). doi:10.1145/344779.345074

    Google Scholar 

  14. Alliez, P., Cohen-Steiner, D., Devillers, O., Lévy, B., Desbrun, M.: Anisotropic polygonal remeshing. ACM Trans. Graph. 22(3), 485–493 (2003). doi:10.1145/882262.882296

    Article  Google Scholar 

  15. Kälberer, F., Nieser, M., Polthier, K.: QuadCover-Surface Parameterization using Branched Coverings. Comput. Graph. Forum 26(3), 375–384 (2007)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jakob Andreas Bærentzen .

Appendix

Appendix

In this appendix, we derive the Cotan formula for the gradient of the area of a triangle. Given a triangle (shown in Fig. 8.9) whose vertex p i is movable, compute the gradient of the area of the triangle as a function of p i .

Fig. 8.9
figure 10

A triangle with a vertex p i

It is clear that the gradient is perpendicular to the plane of the triangle since moving p i either in the positive or negative direction along the triangle normal will increase the area. Hence, the present position is a minimum. Moving p i parallel to the base line b will not change the area. It follows that the gradient is in the plane of the triangle and orthogonal to b. It is trivial to find the length of the gradient, and this leads to the first line of the equation below. After a number of steps, we reach the expression used in (8.4).

Some of the steps may be a little tricky. The bottom line is that we need to use the fact that the cotangent of an angle between two vectors a and b is equal to \(\frac{\mathbf {a}^{T} \mathbf {b}}{\|\mathbf {a} \times \mathbf {b}\|}\):

$$\begin{array}{*{20}l} {\nabla A({\mathbf p}_i )} & { = \frac{{({\mathbf b} \times {\mathbf a}) \times {\mathbf b}}}{{2\left\| {{\mathbf b} \times {\mathbf a}} \right\|}}} \\ {} & { = \frac{{({\mathbf b}^t {\mathbf b}){\mathbf a} - ({\mathbf b}^t {\mathbf a}){\mathbf b}}}{{2\left\| {{\mathbf b} \times {\mathbf a}} \right\|}}} \\ {} & { = \frac{{({\mathbf b}^t {\mathbf b}){\mathbf a} - ({\mathbf b}^t {\mathbf a}){\mathbf a} + ({\mathbf b}^t {\mathbf a}){\mathbf a} - ({\mathbf b}^t {\mathbf a}){\mathbf b}}}{{2\left\| {{\mathbf b} \times {\mathbf a}} \right\|}}} \\ {} & { = \frac{{ - ({\mathbf c}^t {\mathbf b}){\mathbf a}}}{{2\left\| {{\mathbf c} \times - {\mathbf b}} \right\|}} + \frac{{({\mathbf b}^t {\mathbf a}){\mathbf c}}}{{2\left\| {{\mathbf c} \times - {\mathbf b}} \right\|}}} \\ {} & { = \frac{{ - ({\mathbf c}^t - {\mathbf b}){\mathbf a}}}{{2\left\| {{\mathbf c} \times - {\mathbf b}} \right\|}} + \frac{{({\mathbf b}^t {\mathbf a}){\mathbf c}}}{{2\left\| {{\mathbf b} \times {\mathbf a}} \right\|}}} \\ {} & { = \frac{1}{2}({\mathbf a}\,\cot \beta + {\mathbf c}\,\cot \alpha ).} \\ \end{array}$$

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag London

About this chapter

Cite this chapter

Bærentzen, J.A., Gravesen, J., Anton, F., Aanæs, H. (2012). Curvature in Triangle Meshes. In: Guide to Computational Geometry Processing. Springer, London. https://doi.org/10.1007/978-1-4471-4075-7_8

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-4075-7_8

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-4471-4074-0

  • Online ISBN: 978-1-4471-4075-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics