cgal/Parameterization/doc_tex/Parameterization_ref/ParameterizationPatchableMe...

171 lines
5.5 KiB
TeX

% +------------------------------------------------------------------------+
% | Reference manual page: ParameterizationPatchableMesh_3.tex
% +------------------------------------------------------------------------+
% | 29.08.2005 Laurent Saboret, Pierre Alliez, Bruno Levy
% | Package: Parameterization
% |
\RCSdef{\RCSPatchableMeshAdaptorRev}{$Id$}
\RCSdefDate{\RCSPatchableMeshAdaptorDate}{$Date$}
% |
%%RefPage: end of header, begin of main body
% +------------------------------------------------------------------------+
\begin{ccRefConcept}{ParameterizationPatchableMesh_3}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
\ccDefinition
% The section below is automatically generated. Do not edit!
%START-AUTO(\ccDefinition)
ParameterizationPatchableMesh\_3 inherits from concept ParameterizationMesh\_3, thus is a concept of a 3D surface mesh.
ParameterizationPatchableMesh\_3 adds the ability to support patches and virtual seams. Patches are a subset of a 3D mesh. Virtual seams are the ability to behave exactly as if the surface was {\em cut} following a certain path.
This mainly means that:\begin{itemize}
\item vertices can be tagged as inside or outside the patch to parameterize.\item the fields specific to parameterizations (index, u, v, is\_parameterized) can be set per {\em corner} (aka half-edge).\end{itemize}
The main purpose of this feature is to allow the parameterization package to parameterize any 3D surface by decomposing it as a list of topological disks.
%END-AUTO(\ccDefinition)
\ccHeading{Design Pattern}
% The section below is automatically generated. Do not edit!
%START-AUTO(\ccHeading{Design Pattern})
ParameterizationPatchableMesh\_3 is an Adaptor \cite{cgal:ghjv-dpero-95}: it changes the interface of a 3D mesh to match the interface expected by class Parameterization\_mesh\_patch\_3.
%END-AUTO(\ccHeading{Design Pattern})
\ccRefines
% The section below is automatically generated. Do not edit!
%START-AUTO(\ccRefines)
ParameterizationPatchableMesh\_3 inherits from concept ParameterizationMesh\_3.
%END-AUTO(\ccRefines)
In addition to the requirements described in the concept MeshAdaptor\_3,
PatchableMeshAdaptor\_3 provides the following:
\ccTypes
% The section below is automatically generated. Do not edit!
%START-AUTO(\ccTypes)
%END-AUTO(\ccTypes)
\ccCreation
\ccCreationVariable{mesh} %% define variable name used by \ccMethod below
Construction and destruction are undefined.
% 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{int get_vertex_seaming (Vertex_const_handle vertex) const;}
{
Get/set vertex seaming flag. Default value is undefined.
}
\ccGlue
\ccMethod{void set_vertex_seaming (Vertex_handle vertex, int seaming);}
{
}
\ccGlue
\ccMethod{int get_halfedge_seaming (Vertex_const_handle source, Vertex_const_handle target) const;}
{
Get/set oriented edge's seaming flag, ie position of the oriented edge wrt to the UNIQUE main border.
}
\ccGlue
\ccMethod{void set_halfedge_seaming (Vertex_handle source, Vertex_handle target, int seaming);}
{
}
\ccGlue
\ccMethod{Point_2 get_corners_uv (Vertex_const_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex) const;}
{
Get/set the 2D position (= (u,v) pair) of corners at the {\em right} of the prev\_vertex -$>$ vertex -$>$ next\_vertex line. Default value is undefined.
}
\ccGlue
\ccMethod{void set_corners_uv (Vertex_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex, const Point_2 & uv);}
{
}
\ccGlue
\ccMethod{bool are_corners_parameterized (Vertex_const_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex) const;}
{
Get/set {\em is parameterized} field of corners at the {\em right} of the prev\_vertex -$>$ vertex -$>$ next\_vertex line. Default value is undefined.
}
\ccGlue
\ccMethod{void set_corners_parameterized (Vertex_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex, bool parameterized);}
{
}
\ccGlue
\ccMethod{int get_corners_index (Vertex_const_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex) const;}
{
Get/set index of corners at the {\em right} of the prev\_vertex -$>$ vertex -$>$ next\_vertex line. Default value is undefined.
}
\ccGlue
\ccMethod{void set_corners_index (Vertex_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex, int index);}
{
}
\ccGlue
\ccMethod{int get_corners_tag (Vertex_const_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex) const;}
{
Get/set all purpose tag of corners at the {\em right} of the prev\_vertex -$>$ vertex -$>$ next\_vertex line. Default value is undefined.
}
\ccGlue
\ccMethod{void set_corners_tag (Vertex_handle vertex, Vertex_const_handle prev_vertex, Vertex_const_handle next_vertex, int tag);}
{
}
\ccGlue
%END-AUTO(\ccOperations)
\ccHasModels
% The section below is automatically generated. Do not edit!
%START-AUTO(\ccHasModels)
Adaptators for Polyhedron\_3 and TDS\_2 with 3D points are provided.
%END-AUTO(\ccHasModels)
\ccRefIdfierPage{CGAL::Parameterization_polyhedron_adaptor_3} \\
\ccSeeAlso
\ccRefIdfierPage{ParameterizationMesh_3}
\end{ccRefConcept}
% +------------------------------------------------------------------------+
%%RefPage: end of main body, begin of footer
% EOF
% +------------------------------------------------------------------------+