mirror of https://github.com/CGAL/cgal
149 lines
4.6 KiB
TeX
149 lines
4.6 KiB
TeX
% +------------------------------------------------------------------------+
|
|
% | Reference manual page: Parameterizer_traits_3.tex
|
|
% +------------------------------------------------------------------------+
|
|
% | 21.09.2005 Laurent Saboret, Pierre Alliez
|
|
% | Package: Parameterization
|
|
% |
|
|
\RCSdef{\RCSParameterizertraitsRev}{$Revision$}
|
|
\RCSdefDate{\RCSParameterizertraitsDate}{$Date$}
|
|
% |
|
|
%%RefPage: end of header, begin of main body
|
|
% +------------------------------------------------------------------------+
|
|
|
|
|
|
\begin{ccRefClass}{Parameterizer_traits_3} %% add template arg's if necessary
|
|
|
|
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
|
%% \ccHtmlIndexC[class]{} %% add further index entries
|
|
|
|
|
|
\ccDefinition
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccDefinition)
|
|
|
|
The class Parameterizer\_traits\_3 is the base class of all parameterization methods. This class is a pure virtual class, thus cannot be instantiated.
|
|
|
|
This class doesn't do much. Its main goal is to ensure that subclasses will be proper models of the ParameterizerTraits\_3 concept:\begin{itemize}
|
|
\item Parameterizer\_traits\_3 defines the Error\_code list of errors detected by this package\item Parameterizer\_traits\_3 declares a pure virtual method parameterize()\end{itemize}
|
|
|
|
%END-AUTO(\ccDefinition)
|
|
|
|
\ccInclude{CGAL/Parameterizer_traits_3.h}
|
|
|
|
|
|
\ccIsModel
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccIsModel)
|
|
|
|
Model of the ParameterizerTraits\_3 concept (although you cannot instantiate this class).
|
|
|
|
%END-AUTO(\ccIsModel)
|
|
|
|
|
|
\ccParameters
|
|
|
|
The full template declaration is:
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccParameters)
|
|
|
|
template$<$ \\
|
|
class ParameterizationMesh\_3$>$ \\
|
|
class Parameterizer\_traits\_3;
|
|
|
|
%END-AUTO(\ccParameters)
|
|
|
|
|
|
\ccTypes
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccTypes)
|
|
|
|
\ccNestedType{Adaptor}
|
|
{
|
|
Export ParameterizationMesh\_3 template parameter.
|
|
}
|
|
\ccGlue
|
|
|
|
%END-AUTO(\ccTypes)
|
|
|
|
|
|
\ccConstants
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccConstants)
|
|
|
|
\ccEnum{enum Error_code { OK, ERROR_EMPTY_MESH, ERROR_NON_TRIANGULAR_MESH, ERROR_NO_SURFACE_MESH, ERROR_INVALID_BORDER, ERROR_BAD_MATRIX_CONDITIONING, ERROR_CANNOT_SOLVE_LINEAR_SYSTEM, ERROR_NO_1_TO_1_MAPPING, ERROR_NOT_ENOUGH_MEMORY, ERROR_WRONG_PARAMETER };}
|
|
{
|
|
List of errors detected by this package.
|
|
}
|
|
\ccGlue
|
|
\begin{description}
|
|
\item[Enumeration values: ]
|
|
\begin{description}
|
|
\item[OK
|
|
]Success. \item[ERROR\_EMPTY\_MESH
|
|
]Error: input mesh is empty. \item[ERROR\_NON\_TRIANGULAR\_MESH
|
|
]Error: input mesh is not triangular. \item[ERROR\_NO\_SURFACE\_MESH
|
|
]Error: input mesh is not a surface. \item[ERROR\_INVALID\_BORDER
|
|
]Error: parameterization requires a convex border. \item[ERROR\_BAD\_MATRIX\_CONDITIONING
|
|
]Error: result is mathematically unstable. \item[ERROR\_CANNOT\_SOLVE\_LINEAR\_SYSTEM
|
|
]Error: cannot solve linear system. \item[ERROR\_NO\_1\_TO\_1\_MAPPING
|
|
]Error: parameterization does not ensure 1 to 1 mapping. \item[ERROR\_NOT\_ENOUGH\_MEMORY
|
|
]Error: not enough memory. \item[ERROR\_WRONG\_PARAMETER
|
|
]Error: a method received an unexpected parameter. \end{description}
|
|
\end{description}
|
|
\ccGlue
|
|
|
|
%END-AUTO(\ccConstants)
|
|
|
|
|
|
\ccCreation
|
|
\ccCreationVariable{param} %% variable name used by \ccMethod below
|
|
|
|
\ccConstructor{Parameterizer_traits_3();}{default constructor.}
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccCreation)
|
|
|
|
|
|
|
|
%END-AUTO(\ccCreation)
|
|
|
|
|
|
\ccOperations
|
|
|
|
% The section below is automatically generated. Do not edit!
|
|
%START-AUTO(\ccOperations)
|
|
|
|
\ccMethod{virtual Error_code parameterize (Adaptor * mesh);}
|
|
{
|
|
Compute a 1 to 1 mapping from a 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.
|
|
Preconditions:\begin{itemize}
|
|
\item 'mesh' must be a surface with 1 connected component.\item 'mesh' must be a triangular mesh. \end{itemize}
|
|
}
|
|
\ccGlue
|
|
|
|
%END-AUTO(\ccOperations)
|
|
|
|
|
|
\ccSeeAlso
|
|
|
|
\ccRefIdfierPage{CGAL::Fixed_border_parameterizer_3} \\
|
|
\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} \\
|
|
|
|
|
|
\end{ccRefClass}
|
|
|
|
% +------------------------------------------------------------------------+
|
|
%%RefPage: end of main body, begin of footer
|
|
% EOF
|
|
% +------------------------------------------------------------------------+
|
|
|