\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.8 - Approximation of Ridges and Umbilics on Triangulated Surface Meshes

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Modules | Classes | Functions
Approximation of Ridges and Umbilics on Triangulated Surface Meshes Reference

##

Marc Pouget and Frédéric Cazals
Global features related to curvature extrema encode important informations used in segmentation, registration, matching and surface analysis. Given pointwise estimations of local differential quantities, this package allows the approximation of differential features on a triangulated surface mesh. Such curvature related features are curves: ridges or crests, and points: umbilics.

Introduced in: CGAL 3.3
Depends on: CGAL and Solvers
BibTeX: cgal:cp-arutsm-16a
License: GPL

## Classified Reference Pages

## Enums

- `CGAL::Ridge_type`
- `CGAL::Ridge_order`
- `CGAL::Umbilic_type`

## Classes

- `CGAL::Ridge_line<TriangleMesh>`
- `CGAL::Umbilic<TriangleMesh>`
- `CGAL::Ridge_approximation<TriangleMesh,VertexFTMap,VertexVectorMap>`
- `CGAL::Umbilic_approximation<TriangleMesh,VertexFTMap,VertexVectorMap>`

## Global Functions

- `CGAL::compute_max_ridges()`
- `CGAL::compute_min_ridges()`
- `CGAL::compute_crest_ridges()`
- `CGAL::compute_umbilics()`

## Modules
| Enums

## Classes
class | CGAL::Ridge_approximation< TriangleMesh, VertexFTMap, VertexVectorMap >
| The class `Ridge_approximation` computes the approximation of ridges of a triangular polyhedral surface. More...
class | CGAL::Ridge_line< TriangleMesh >
| The class `Ridge_line` stores the description of a ridge line. More...
class | CGAL::Umbilic_approximation< TriangleMesh, VertexFTMap, VertexVectorMap >
| The class `Umbilic_approximation` computes the approximation of umbilics on a triangular polyhedral surface. More...
class | CGAL::Umbilic< TriangleMesh >
| The class `Umbilic` stores the description of an umbilic. More...

## Functions
template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >
OutputIterator | CGAL::compute_crest_ridges (const TriangleMesh &tm, VertexFTMap vertex_k1_pm, VertexFTMap vertex_k2_pm, VertexFTMap vertex_b0_pm, VertexFTMap vertex_b3_pm, VertexVectorMap vertex_d1_pm, VertexVectorMap vertex_d2_pm, VertexFTMap vertex_P1_pm, VertexFTMap vertex_P2_pm, OutputIterator it, CGAL::Ridge_order order=CGAL::Ridge_order_3)
| The function `compute_crest_ridges()` is a shortcut to the method `Ridge_approximation::compute_crest_ridges()`. More...
template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >
OutputIterator | CGAL::compute_max_ridges (const TriangleMesh &tm, VertexFTMap vertex_k1_pm, VertexFTMap vertex_k2_pm, VertexFTMap vertex_b0_pm, VertexFTMap vertex_b3_pm, VertexVectorMap vertex_d1_pm, VertexVectorMap vertex_d2_pm, VertexFTMap vertex_P1_pm, const VertexFTMap vertex_P2_pm, OutputIterator it, CGAL::Ridge_order order=CGAL::Ridge_order_3)
| The function `compute_max_ridges()` is a shortcut to the method `Ridge_approximation::compute_max_ridges()`. More...
template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >
OutputIterator | CGAL::compute_min_ridges (const TriangleMesh &tm, VertexFTMap vertex_k1_pm, VertexFTMap vertex_k2_pm, VertexFTMap vertex_b0_pm, VertexFTMap vertex_b3_pm, VertexVectorMap vertex_d1_pm, VertexVectorMap vertex_d2_pm, VertexFTMap vertex_P1_pm, VertexFTMap vertex_P2_pm, OutputIterator it, CGAL::Ridge_order order=CGAL::Ridge_order_3)
| The function `compute_min_ridges()` is a shortcut to the method `Ridge_approximation::compute_min_ridges()`. More...
template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >
OutputIterator | CGAL::compute_umbilics (const TriangleMesh &tm, VertexFTMap vertex_k1_pm, VertexFTMap vertex_k2_pm, VertexVectorMap vertex_d1_pm, VertexVectorMap vertex_d2_pm, OutputIterator it, double size)
| The function `compute_umbilics()` is a shortcut to the method `Umbilic_approximation::compute()`. More...

## Function Documentation

template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >

OutputIterator CGAL::compute_crest_ridges | ( | const TriangleMesh & | tm,
|  | VertexFTMap | vertex_k1_pm,
|  | VertexFTMap | vertex_k2_pm,
|  | VertexFTMap | vertex_b0_pm,
|  | VertexFTMap | vertex_b3_pm,
|  | VertexVectorMap | vertex_d1_pm,
|  | VertexVectorMap | vertex_d2_pm,
|  | VertexFTMap | vertex_P1_pm,
|  | VertexFTMap | vertex_P2_pm,
|  | OutputIterator | it,
|  | CGAL::Ridge_order | order = `CGAL::Ridge_order_3`
| ) |  |

The function `compute_crest_ridges()` is a shortcut to the method `Ridge_approximation::compute_crest_ridges()`.

See `Ridge_approximation::Ridge_approximation()` for an explanation of the parameters.

`#include <CGAL/Ridges.h>`

template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >

OutputIterator CGAL::compute_max_ridges | ( | const TriangleMesh & | tm,
|  | VertexFTMap | vertex_k1_pm,
|  | VertexFTMap | vertex_k2_pm,
|  | VertexFTMap | vertex_b0_pm,
|  | VertexFTMap | vertex_b3_pm,
|  | VertexVectorMap | vertex_d1_pm,
|  | VertexVectorMap | vertex_d2_pm,
|  | VertexFTMap | vertex_P1_pm,
|  | const VertexFTMap | vertex_P2_pm,
|  | OutputIterator | it,
|  | CGAL::Ridge_order | order = `CGAL::Ridge_order_3`
| ) |  |

The function `compute_max_ridges()` is a shortcut to the method `Ridge_approximation::compute_max_ridges()`.

See `Ridge_approximation::Ridge_approximation()` for an explanation of the parameters.

`#include <CGAL/Ridges.h>`

template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >

OutputIterator CGAL::compute_min_ridges | ( | const TriangleMesh & | tm,
|  | VertexFTMap | vertex_k1_pm,
|  | VertexFTMap | vertex_k2_pm,
|  | VertexFTMap | vertex_b0_pm,
|  | VertexFTMap | vertex_b3_pm,
|  | VertexVectorMap | vertex_d1_pm,
|  | VertexVectorMap | vertex_d2_pm,
|  | VertexFTMap | vertex_P1_pm,
|  | VertexFTMap | vertex_P2_pm,
|  | OutputIterator | it,
|  | CGAL::Ridge_order | order = `CGAL::Ridge_order_3`
| ) |  |

The function `compute_min_ridges()` is a shortcut to the method `Ridge_approximation::compute_min_ridges()`.

See `Ridge_approximation::Ridge_approximation()` for an explanation of the parameters.

`#include <CGAL/Ridges.h>`

template<class TriangleMesh , class VertexFTMap , class VertexVectorMap , class OutputIterator >

OutputIterator CGAL::compute_umbilics | ( | const TriangleMesh & | tm,
|  | VertexFTMap | vertex_k1_pm,
|  | VertexFTMap | vertex_k2_pm,
|  | VertexVectorMap | vertex_d1_pm,
|  | VertexVectorMap | vertex_d2_pm,
|  | OutputIterator | it,
|  | double | size
| ) |  |

The function `compute_umbilics()` is a shortcut to the method `Umbilic_approximation::compute()`.

See `Umbilic_approximation::Umbilic_approximation()` for an explanation of the parameters.

`#include <CGAL/Umbilics.h>`