mirror of https://github.com/CGAL/cgal
doc!
This commit is contained in:
parent
b611b7c62c
commit
e11e9de671
|
|
@ -2,7 +2,7 @@
|
|||
\label{chap:Ridges_3}
|
||||
%\ccChapterAuthor{Marc Pouget and Frédéric Cazals}
|
||||
%don't know why but sometimes it does not accept é!!!??????
|
||||
\ccChapterAuthor{Marc Pouget and Frederic Cazals}
|
||||
\ccChapterAuthor{Marc Pouget and Fr\'ed\'eric Cazals}
|
||||
|
||||
\minitoc
|
||||
|
||||
|
|
|
|||
|
|
@ -1,18 +1,19 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Ridge_approximation.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 09.02.2006 Marc Pouget and Frédéric Cazals
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{}{}
|
||||
\RCSdefDate{}{}
|
||||
\RCSdef{\RCSRidgeapproximationRev}{$Id$}
|
||||
\RCSdefDate{\RCSRidgeapproximationDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefClass}{Ridge_approximation< TriangularPolyhedralSurface, OutputIt, Vertex2FTPropertyMap , Vertex2VectorPropertyMap}
|
||||
%% add template arg's if necessary
|
||||
\begin{ccRefClass}{Ridge_approximation< TriangularPolyhedralSurface, OutputIt,
|
||||
Vertex2FTPropertyMap , Vertex2VectorPropertyMap>} %% add template
|
||||
arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
|
|
@ -22,18 +23,19 @@
|
|||
The class \ccRefName\ is designed to perform the approximation of
|
||||
ridges of a triangular polyhedral surface.
|
||||
|
||||
\ccInclude{CGAL/Ridge_approximation.h}
|
||||
\ccInclude{CGAL/Ridges.h}
|
||||
|
||||
\ccParameters
|
||||
The class \ccRefName\ has four template parameters. Parameter
|
||||
The class \ccRefName\ has four template parameters.
|
||||
\ccc{TriangularPolyhedralSurface} provides the surface.
|
||||
Parameter \ccc{OutputIt} is a stl Output Iterator which
|
||||
\ccc{value_type} is \ccc{CGAL::Ridge_line*}. Parameters \ccc{Vertex2FTPropertyMap}
|
||||
and \ccc{Vertex2VectorPropertyMap} provides the differential properties of
|
||||
the surface associated to its vertices.
|
||||
|
||||
Requirements : the types \ccc{TriangularPolyhedralSurface::Traits::FT}
|
||||
and \ccc{Vertex2FTPropertyMap::value_type} must coincide; the types
|
||||
Requirements (checked at compile time) : the types
|
||||
\ccc{TriangularPolyhedralSurface::Traits::FT} and
|
||||
\ccc{Vertex2FTPropertyMap::value_type} must coincide; the types
|
||||
\ccc{TriangularPolyhedralSurface::Traits::Vector_3} and
|
||||
\ccc{Vertex2VectorPropertyMap::value_type} must coincide; the types
|
||||
\ccc{TriangularPolyhedralSurface::Vertex_handle},
|
||||
|
|
@ -43,7 +45,9 @@ and \ccc{Vertex2FTPropertyMap::value_type} must coincide; the types
|
|||
\ccTypes
|
||||
|
||||
%\ccNestedType{TYPE}{some nested types}
|
||||
\ccEnum{ enum Tag_order {Tag_3, Tag_4};}{}
|
||||
\ccEnum{ enum Tag_order {Tag_3, Tag_4};}
|
||||
{Order of differential quantities used to distinguish elliptic and
|
||||
hyperbolic ridges.}
|
||||
|
||||
|
||||
\ccCreation
|
||||
|
|
@ -57,8 +61,9 @@ and \ccc{Vertex2FTPropertyMap::value_type} must coincide; the types
|
|||
Vertex2FTPropertyMap& vertex2P1_pm,
|
||||
Vertex2FTPropertyMap& vertex2P2_pm,
|
||||
Vertex2VectorPropertyMap& vertex2d1_pm,
|
||||
Vertex2VectorPropertyMap& vertex2d2_pm);}
|
||||
{Precondition : check if all faces of P are triangular. }
|
||||
Vertex2VectorPropertyMap& vertex2d2_pm);}
|
||||
{Precondition : check if all faces of P are
|
||||
triangular. }
|
||||
|
||||
%\ccOperations
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Ridge_interrogation_type.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSRidgeinterrogationtypeRev}{$Id$}
|
||||
\RCSdefDate{\RCSRidgeinterrogationtypeDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefEnum}{Ridge_interrogation_type} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[enum]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The enum \ccRefName\ describes the three types of ridge lines which
|
||||
can be computed by the class \ccc{Ridge_approximation}.
|
||||
|
||||
\ccInclude{CGAL/Ridges.h}
|
||||
|
||||
\ccGlobalEnum{enum Ridge_interrogation_type { BLUE_RIDGE, RED_RIDGE, CREST_RIDGE };}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Ridge_approximation},
|
||||
|
||||
|
||||
\end{ccRefEnum}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Ridge_line.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSRidgelineRev}{$Id$}
|
||||
\RCSdefDate{\RCSRidgelineDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefClass}{Ridge_line<TriangularPolyhedralSurface>} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The class \ccRefName\ stores the description of a ridge line.
|
||||
|
||||
\ccInclude{CGAL/Ridges.h}
|
||||
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccNestedType{typedef typename TriangularPolyhedralSurface::Traits::FT FT;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{typedef typename TriangularPolyhedralSurface::Halfedge_handle Halfedge_handle;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{ typedef std::pair< Halfedge_handle, FT> ridge_he;}{}
|
||||
|
||||
|
||||
\ccCreation
|
||||
\ccCreationVariable{ridge_line} %% choose variable name
|
||||
|
||||
\ccConstructor{Ridge_line();}{default constructor.}
|
||||
|
||||
\ccAccessFunctions
|
||||
% +--------------------------------------------------------------
|
||||
\ccMethod{const Ridge_type line_type();}{}
|
||||
\ccMethod{Ridge_type& line_type();}{}
|
||||
\ccGlue
|
||||
\ccMethod{const FT strength();}{}
|
||||
\ccMethod{FT& strength();}{}
|
||||
\ccGlue
|
||||
\ccMethod{const FT sharpness();}{}
|
||||
\ccMethod{FT& sharpness(); }{}
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Ridge_approximation},
|
||||
|
||||
\end{ccRefClass}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Ridge_type.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSRidgetypeRev}{$Id$}
|
||||
\RCSdefDate{\RCSRidgetypeDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefEnum}{Ridge_type} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[enum]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The enum \ccRefName\ describes the types for the class \ccc{Ridge_line}.
|
||||
|
||||
\ccInclude{CGAL/Ridges.h}
|
||||
|
||||
\ccGlobalEnum{enum Ridge_type { NO_RIDGE,
|
||||
BLUE_ELLIPTIC_RIDGE, BLUE_HYPERBOLIC_RIDGE,
|
||||
BLUE_CREST_RIDGE, RED_ELLIPTIC_RIDGE,
|
||||
RED_HYPERBOLIC_RIDGE, RED_CREST_RIDGE };}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Ridge_line}
|
||||
|
||||
\end{ccRefEnum}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: TriangularPolyhedralSurface.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSTriangularPolyhedralSurfaceRev}{$Id$}
|
||||
\RCSdefDate{\RCSTriangularPolyhedralSurfaceDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefConcept}{TriangularPolyhedralSurface}
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[concept]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The concept \ccRefName\ describes a polyhedral surface, based on an
|
||||
edge data structure, whose faces are all triangular.
|
||||
|
||||
|
||||
%\ccTypes
|
||||
%FT, vertex handle ..???
|
||||
%\ccNestedType{TYPE}{some nested types}
|
||||
|
||||
|
||||
\ccHasModels
|
||||
|
||||
\ccc{CGAL::Polyhedron_3} with the restriction that faces are triangular.
|
||||
|
||||
\end{ccRefConcept}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Umbilic.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSUmbilicRev}{$Id$}
|
||||
\RCSdefDate{\RCSUmbilicDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefClass}{Umbilic< TriangularPolyhedralSurface >} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The class \ccRefName\ stores the description of an umbilic.
|
||||
|
||||
\ccInclude{CGAL/Umbilic.h}
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccNestedType{ typedef typename TriangularPolyhedralSurface::Vertex_handle Vertex_handle;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{ typedef typename TriangularPolyhedralSurface::Halfedge_handle Halfedge_handle;}{}
|
||||
|
||||
\ccCreation
|
||||
\ccCreationVariable{umbilic} %hoose variable name
|
||||
|
||||
\ccConstructor{Umbilic(Vertex_handle v_init,
|
||||
std::list<Halfedge_handle> contour_init);}{default constructor.}
|
||||
|
||||
\ccAccessFunctions
|
||||
% +--------------------------------------------------------------
|
||||
\ccMethod{const Vertex_handle vertex();}{}
|
||||
\ccMethod{const Umbilic_type umbilic_type();}{}
|
||||
\ccGlue
|
||||
\ccMethod{Umbilic_type& umbilic_type();}{}
|
||||
\ccMethod{const std::list<Halfedge_handle>& contour_list() ;}{}
|
||||
\ccGlue
|
||||
\ccMethod{std::list<Halfedge_handle>& contour_list();}{}
|
||||
|
||||
|
||||
\ccOperations
|
||||
The usual insert operator ($<<$) is provided for \ccc{Umbilic}.
|
||||
|
||||
%\ccFunction{template <class TriangularPolyhedralSurface>
|
||||
%std::ostream&
|
||||
%operator<<(std::ostream& out_stream, const Umbilic<TriangularPolyhedralSurface>& umbilic);}
|
||||
%{Outputs umbilic location and type.}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Umbilic_approximation}
|
||||
|
||||
|
||||
\end{ccRefClass}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Umbilic_approximation.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSUmbilicapproximationRev}{$Id$}
|
||||
\RCSdefDate{\RCSUmbilicapproximationDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefClass}{Umbilic_approximation< TriangularPolyhedralSurface,
|
||||
OutputIt, Vertex2FTPropertyMap, Vertex2VectorPropertyMap > } %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The class \ccRefName\ is designed to perform the approximation of
|
||||
umbilics on a triangular polyhedral surface.
|
||||
|
||||
|
||||
\ccInclude{CGAL/Umbilic.h}
|
||||
|
||||
\ccParameters
|
||||
The class \ccRefName\ has four template parameters.
|
||||
\ccc{TriangularPolyhedralSurface} provides the surface.
|
||||
Parameter \ccc{OutputIt} is a stl Output Iterator which
|
||||
\ccc{value_type} is \ccc{CGAL::Umbilic*}. Parameters \ccc{Vertex2FTPropertyMap}
|
||||
and \ccc{Vertex2VectorPropertyMap} provides the differential properties of
|
||||
the surface associated to its vertices.
|
||||
|
||||
Requirements (checked at compile time) : the types
|
||||
\ccc{TriangularPolyhedralSurface::Traits::FT} and
|
||||
\ccc{Vertex2FTPropertyMap::value_type} must coincide; the types
|
||||
\ccc{TriangularPolyhedralSurface::Traits::Vector_3} and
|
||||
\ccc{Vertex2VectorPropertyMap::value_type} must coincide; the types
|
||||
\ccc{TriangularPolyhedralSurface::Vertex_handle},
|
||||
\ccc{Vertex2FTPropertyMap::key_type} and
|
||||
\ccc{Vertex2VectorPropertyMap::key_type} must coincide;
|
||||
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccNestedType{ typedef typename TriangularPolyhedralSurface::Traits::FT FT;}{}
|
||||
|
||||
\ccCreation
|
||||
\ccCreationVariable{umbilic_approximation} %% choose variable name
|
||||
|
||||
\ccConstructor{Umbilic_approximation(TriangularPolyhedralSurface &P,
|
||||
Vertex2FTPropertyMap vertex2k1_pm, Vertex2FTPropertyMap vertex2k2_pm,
|
||||
Vertex2VectorPropertyMap vertex2d1_pm, Vertex2VectorPropertyMap vertex2d2_pm);}
|
||||
{default constructor.}
|
||||
|
||||
\ccOperations
|
||||
|
||||
\ccMethod{ OutputIt compute(OutputIt it, FT size);}
|
||||
{Performs the approximation, \ccc{size} determines the size of the
|
||||
patches around vertices which is \ccc{size} times the size of the
|
||||
1-ring. Umbilics are output through the \ccc{OutputIt} which is an
|
||||
concept of output iterator of the stl with value type \ccc{Umbilic*}.}
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Umbilic}.
|
||||
\ccc{TriangularPolyhedralSurface}
|
||||
\ccc{Vertex2FTPropertyMap}
|
||||
\ccc{Vertex2VectorPropertyMap}
|
||||
|
||||
|
||||
\end{ccRefClass}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Umbilic_type.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSUmbilictypeRev}{$Id$}
|
||||
\RCSdefDate{\RCSUmbilictypeDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefEnum}{Umbilic_type} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[enum]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The enum \ccRefName\ describes the types for the class \ccc{Umbilic}.
|
||||
|
||||
\ccInclude{CGAL/Umbilic.h}
|
||||
|
||||
\ccGlobalEnum{enum Umbilic_type { UMBILIC_NON_GENERIC, UMBILIC_WEDGE, UMBILIC_TRISECTOR };}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Umbilic}.
|
||||
\end{ccRefEnum}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Vertex2Data_Property_Map_with_std_map.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSVertexDataPropertyMapwithstdmapRev}{$Id$}
|
||||
\RCSdefDate{\RCSVertexDataPropertyMapwithstdmapDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefClass}{Vertex2Data_Property_Map_with_std_map < TriangularPolyhedralSurface >} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The class \ccRefName\ provides models for the concepts
|
||||
\ccc{Vertex2FTPropertyMap} and \ccc{Vertex2VectorPropertyMap} to be used for
|
||||
\ccc{Ridge_approximation}. The property maps are
|
||||
created with the \ccc{boost::associative_property_map} adaptor from
|
||||
\ccc{std::map}.
|
||||
|
||||
\ccInclude{CGAL/Ridges.h}
|
||||
|
||||
|
||||
\ccTypes
|
||||
|
||||
\ccNestedType{ typedef typename TriangularPolyhedralSurface::Traits::FT FT;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{ typedef typename TriangularPolyhedralSurface::Traits::Vector_3 Vector_3;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{ typedef typename TriangularPolyhedralSurface::Vertex_handle Vertex_handle;}{}
|
||||
\ccStruct{ struct Vertex_cmp{bool operator();};}{}
|
||||
|
||||
\ccNestedType{ typedef std::map<Vertex_handle, FT, Vertex_cmp> Vertex2FT_map;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{ typedef boost::associative_property_map< Vertex2FT_map > Vertex2FT_property_map;}{}
|
||||
\ccNestedType{ typedef std::map<Vertex_handle, Vector_3, Vertex_cmp> Vertex2Vector_map;}{}
|
||||
\ccGlue
|
||||
\ccNestedType{ typedef boost::associative_property_map< Vertex2Vector_map > Vertex2Vector_property_map;}{}
|
||||
|
||||
|
||||
|
||||
\ccIsModel
|
||||
|
||||
\ccc{Vertex2FT_property_map} is model of \ccc{Vertex2FTPropertyMap}.
|
||||
|
||||
\ccc{Vertex2Vector_property_map} is model of \ccc{Vertex2VectorPropertyMap}.
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{Ridge_approximation}
|
||||
|
||||
\end{ccRefClass}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Vertex2FTPropertyMap.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSVertexFTPropertyMapRev}{$Id$}
|
||||
\RCSdefDate{\RCSVertexFTPropertyMapDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefConcept}{Vertex2FTPropertyMap}
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[concept]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
The concept \ccRefName\ specializes the concept of LvaluePropertyMap
|
||||
of the Boost library. It is intended to be used in combination with
|
||||
the concept \ccc{TriangularPolyhedralSurface} in the class
|
||||
\ccc{Ridge_approximation}. It associates a field type value
|
||||
\ccc{TriangularPolyhedralSurface::Traits::FT} to keys which are
|
||||
\ccc{TriangularPolyhedralSurface::Vertex_handle}.
|
||||
|
||||
|
||||
%\ccTypes
|
||||
%value and key??
|
||||
%\ccNestedType{TYPE}{some nested types}
|
||||
|
||||
\ccHasModels
|
||||
|
||||
\ccc{Vertex2Data_Property_Map_with_std_map::Vertex2FT_property_map},
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{TriangularPolyhedralSurface}.
|
||||
|
||||
|
||||
\end{ccRefConcept}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: Vertex2VectorPropertyMap.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSVertexVectorPropertyMapRev}{$Id$}
|
||||
\RCSdefDate{\RCSVertexVectorPropertyMapDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefConcept}{Vertex2VectorPropertyMap}
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[concept]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
|
||||
The concept \ccRefName\ specializes the concept of LvaluePropertyMap
|
||||
of the Boost library. It is intended to be used in combination with
|
||||
the concept \ccc{TriangularPolyhedralSurface} in the class
|
||||
\ccc{Ridge_approximation}. It associates a three dimensional vector
|
||||
\ccc{TriangularPolyhedralSurface::Traits::Vector_3} to keys which are
|
||||
\ccc{TriangularPolyhedralSurface::Vertex_handle}.
|
||||
|
||||
|
||||
%\ccTypes
|
||||
%value and key??
|
||||
%\ccNestedType{TYPE}{some nested types}
|
||||
|
||||
\ccHasModels
|
||||
|
||||
\ccc{Vertex2Data_Property_Map_with_std_map::Vertex2Vector_property_map},
|
||||
|
||||
\ccSeeAlso
|
||||
|
||||
\ccc{TriangularPolyhedralSurface}.
|
||||
|
||||
|
||||
\end{ccRefConcept}
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
% | Reference manual page: intro.tex
|
||||
% +------------------------------------------------------------------------+
|
||||
% | 15.09.2006 Marc Pouget and Frédéric Cazals
|
||||
% | Package: Ridges_3
|
||||
% |
|
||||
\RCSdef{\RCSintroRev}{$Id$}
|
||||
\RCSdefDate{\RCSintroDate}{$Date$}
|
||||
% |
|
||||
%%RefPage: end of header, begin of main body
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
\ccRefChapter{Ridges and Umbilics Extraction on Meshes}
|
||||
\label{ref_chap:Ridges_3}
|
||||
|
||||
\ccChapterAuthor{Marc Pouget \and Fr\'ed\'eric Cazals}
|
||||
|
||||
\subsection*{Introduction}
|
||||
|
||||
%\ccRequirements
|
||||
|
||||
|
||||
\subsection*{Concepts}
|
||||
\ccRefConceptPage{TriangularPolyhedralSurface} \\
|
||||
\ccRefConceptPage{Vertex2FTPropertyMap} \\
|
||||
\ccRefConceptPage{Vertex2VectorPropertyMap} \\
|
||||
|
||||
\subsection*{Enums}
|
||||
\ccRefIdfierPage{CGAL::Ridge_interrogation_type}\\
|
||||
\ccRefIdfierPage{CGAL::Ridge_type}\\
|
||||
\ccRefIdfierPage{CGAL::Umbilic_type}\\
|
||||
|
||||
\subsection*{Classes}
|
||||
\ccRefIdfierPage{CGAL::Ridge_line}\\
|
||||
\ccRefIdfierPage{CGAL::Umbilic}\\
|
||||
\ccRefIdfierPage{CGAL::Ridge_approximation}\\
|
||||
\ccRefIdfierPage{CGAL::Umbilic_approximation}\\
|
||||
|
||||
\subsection*{Global Functions}
|
||||
The insert operator is overloaded for the classes \ccc{Ridge_line} and
|
||||
\ccc{Umbilic}.
|
||||
\ccRefIdfierPage{CGAL::operator<<}\\
|
||||
|
||||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
|
@ -5,6 +5,19 @@
|
|||
% | of this package. Do not edit manually, you may loose your changes.
|
||||
% +------------------------------------------------------------------------+
|
||||
|
||||
\input{Ridges_3_ref/intro.tex}
|
||||
|
||||
\input{Ridges_3_ref/Ridge_approximation.tex}
|
||||
\input{Ridges_3_ref/Ridge_interrogation_type.tex}
|
||||
\input{Ridges_3_ref/Ridge_line.tex}
|
||||
\input{Ridges_3_ref/Ridge_type.tex}
|
||||
\input{Ridges_3_ref/TriangularPolyhedralSurface.tex}
|
||||
\input{Ridges_3_ref/Umbilic_approximation.tex}
|
||||
\input{Ridges_3_ref/Umbilic.tex}
|
||||
\input{Ridges_3_ref/Umbilic_type.tex}
|
||||
\input{Ridges_3_ref/Vertex2Data_Property_Map_with_std_map.tex}
|
||||
\input{Ridges_3_ref/Vertex2FTPropertyMap.tex}
|
||||
\input{Ridges_3_ref/Vertex2VectorPropertyMap.tex}
|
||||
|
||||
%% EOF
|
||||
|
||||
|
|
|
|||
|
|
@ -299,8 +299,7 @@ int main(int argc, char *argv[])
|
|||
// ridge_approximation.compute_ridges(CGAL::RED_RIDGE, ii, tag_order);
|
||||
//ridge_approximation.compute_ridges(CGAL::CREST_RIDGE, ii, tag_order);
|
||||
ridge_approximation.compute_all_ridges(ii, tag_order);
|
||||
|
||||
|
||||
|
||||
std::vector<Ridge_line*>::iterator iter_lines = ridge_lines.begin(),
|
||||
iter_end = ridge_lines.end();
|
||||
//OpenGL output
|
||||
|
|
|
|||
|
|
@ -206,9 +206,9 @@ class Ridge_approximation
|
|||
//follow non-visited, regular, 2Xing triangles in both sens to
|
||||
//create a Ridge line. Each time an edge is added the strength and
|
||||
//sharpness(if Tag_4) are updated.
|
||||
void compute_ridges(Ridge_interrogation_type r_type,
|
||||
OutputIt ridge_lines_it,
|
||||
Tag_order ord = Tag_3);
|
||||
OutputIt compute_ridges(Ridge_interrogation_type r_type,
|
||||
OutputIt ridge_lines_it,
|
||||
Tag_order ord = Tag_3);
|
||||
|
||||
protected:
|
||||
TriangularPolyhedralSurface* P;
|
||||
|
|
@ -341,7 +341,7 @@ compute_all_ridges(OutputIt it, Tag_order ord)
|
|||
template < class TriangularPolyhedralSurface, class OutputIt,
|
||||
class Vertex2FTPropertyMap,
|
||||
class Vertex2VectorPropertyMap >
|
||||
void Ridge_approximation< TriangularPolyhedralSurface, OutputIt, Vertex2FTPropertyMap , Vertex2VectorPropertyMap >::
|
||||
OutputIt Ridge_approximation< TriangularPolyhedralSurface, OutputIt, Vertex2FTPropertyMap , Vertex2VectorPropertyMap >::
|
||||
compute_ridges(Ridge_interrogation_type r_type, OutputIt ridge_lines_it, Tag_order ord)
|
||||
{
|
||||
tag_order = ord;
|
||||
|
|
@ -415,6 +415,7 @@ compute_ridges(Ridge_interrogation_type r_type, OutputIt ridge_lines_it, Tag_ord
|
|||
}
|
||||
}
|
||||
}
|
||||
return ridge_lines_it;
|
||||
}
|
||||
|
||||
template < class TriangularPolyhedralSurface, class OutputIt,
|
||||
|
|
|
|||
Loading…
Reference in New Issue