% +------------------------------------------------------------------------+
% | Reference manual page: parameterize.tex
% +------------------------------------------------------------------------+
% | 23.09.2005   Laurent Saboret, Pierre Alliez
% | Package: parameterization
% |
\RCSdef{\RCSparameterizeRev}{$Revision$}
\RCSdefDate{\RCSparameterizeDate}{$Date$}
% |
%%RefPage: end of header, begin of main body
% +------------------------------------------------------------------------+


\begin{ccRefFunction}{parameterize}  %% add template arg's if necessary

%% \ccHtmlCrossLink{}     %% add further rules for cross referencing links
%% \ccHtmlIndexC[function]{} %% add further index entries


\ccDefinition

\ccc{parameterize()} is the main entry-point of the Parameterization package.

It computes a 1 to 1 mapping from a triangular 3D surface 'mesh' to a piece of the 2D space.
The mapping is linear by pieces (linear in each triangle).
The result is the (u,v) pair image of each vertex of the 3D surface.
1 to 1 mapping may be guaranteed or not, depending of the algorithm chosen.

\ccInclude{CGAL/parameterize.h}

% The section below is automatically generated. Do not edit!
%START-AUTO(\ccDefinition)

\ccFunction{Parameterizer_traits_3<ParameterizationMesh_3>::Error_code parameterize (ParameterizationMesh_3 * mesh);}
{
Compute a 1 to 1 mapping from a triangular 3D surface 'mesh' to 2D circle, using Floater Mean Value Coordinates algorithm. 1 to 1 mapping is guaranteed.
The mapping is linear by pieces (linear in each triangle). The result is the (u,v) pair image of each vertex of the 3D surface.
Preconditions:\begin{itemize}
\item 'mesh' must be a surface with 1 connected component.\item 'mesh' must be a triangular mesh.\end{itemize}
}
\ccGlue
\begin{description}
\item[Parameters: ]
\begin{description}
\item[mesh]3D mesh, model of ParameterizationMesh\_3 concept \end{description}
\end{description}
\ccGlue
\ccFunction{Parameterizer_traits_3<ParameterizationMesh_3>::Error_code parameterize (ParameterizationMesh_3 * mesh, ParameterizerTraits_3 parameterizer);}
{
Compute a 1 to 1 mapping from a triangular 3D surface 'mesh' to a piece of the 2D space. The mapping is linear by pieces (linear in each triangle). The result is the (u,v) pair image of each vertex of the 3D surface.
1 to 1 mapping may be guaranteed or not, depending of ParameterizerTraits\_3 algorithm chosen.
Preconditions:\begin{itemize}
\item 'mesh' must be a surface with 1 connected component.\item 'mesh' must be a triangular mesh.\item the mesh border must be mapped onto a convex polygon (for fixed border parameterizations).\end{itemize}
}
\ccGlue
\begin{description}
\item[Parameters: ]
\begin{description}
\item[mesh]3D mesh, model of ParameterizationMesh\_3 \item[parameterizer]Parameterization method for 'mesh' \end{description}
\end{description}
\ccGlue

%END-AUTO(\ccDefinition)


\ccParameters

The full template declaration is:

% The section below is automatically generated. Do not edit!
%START-AUTO(\ccParameters)



%END-AUTO(\ccParameters)


\ccSeeAlso

\ccRefIdfierPage{CGAL::Barycentric_mapping_parameterizer_3}  \\
\ccRefIdfierPage{CGAL::Discrete_authalic_parameterizer_3}  \\
\ccRefIdfierPage{CGAL::Discrete_conformal_map_parameterizer_3}  \\
\ccRefIdfierPage{CGAL::LSCM_parameterizer_3}  \\
\ccRefIdfierPage{CGAL::Mean_value_coordinates_parameterizer_3}  \\


\ccExample

See \ccc{Simple_parameterization.C} example.


\ccImplementation

This function simply calls the parameterize() method of the parameterization
algorithm chosen.


\end{ccRefFunction}

% +------------------------------------------------------------------------+
%%RefPage: end of main body, begin of footer
% EOF
% +------------------------------------------------------------------------+

