\( \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 - Estimation of Local Differential Properties of Point-Sampled Surfaces

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
CGAL::Monge_via_jet_fitting< DataKernel, LocalKernel, SvdTraits >::Monge_form Class Reference
Estimation of Local Differential Properties of Point-Sampled Surfaces Reference

`#include <CGAL/Monge_via_jet_fitting.h>`

## Definition

The class `Monge_form` stores the Monge representation, i.e., the Monge coordinate system and the coefficients of the Monge form in this system.

The usual insert operator (`operator<<`) is overloaded for `Monge_form`, it gives the Monge coordinate system (the origin and an orthonormal basis) and the coefficients of the Monge form in this system.

See Also
  `Monge_via_jet_fitting`

## Types
typedef DataKernel::FT | FT
typedef DataKernel::Point_3 | Point_3
typedef DataKernel::Vector_3 | Vector_3

## Creation
| Monge_form ()
| default constructor.

## Access Functions
Point_3 | origin () const
| Point on the fitted surface where differential quantities are computed.

## Monge Basis
Vector_3 | maximal_principal_direction () const
Vector_3 | minimal_principal_direction () const
Vector_3 | normal_direction () const

## Monge Coefficients
FT | principal_curvatures (size_t i) const
| \( i=0\) for the maximum and \( i=1\) for the minimum.
FT | third_order_coefficients (size_t i) const
| \( 0 \leq i \leq3\)
FT | fourth_order_coefficients (size_t i) const
| \( 0 \leq i \leq4\)

## Operations
void | comply_wrt_given_normal (const Vector_3 &given_normal)
| change principal basis and Monge coefficients so that the `given_normal` and the Monge normal make an acute angle. More...

## Member Function Documentation

template<typename DataKernel , typename LocalKernel , typename SvdTraits >

void CGAL::Monge_via_jet_fitting< DataKernel, LocalKernel, SvdTraits >::Monge_form::comply_wrt_given_normal | ( | const Vector_3 & | given_normal) |  |

change principal basis and Monge coefficients so that the `given_normal` and the Monge normal make an acute angle.

If `given_normal * normal_direction() < 0` then change the orientation: if \( z=g(x,y)\) in the basis (d1,d2,n) then in the basis (d2,d1,-n) \( z=h(x,y)=-g(y,x)\).