mirror of https://github.com/CGAL/cgal
File names renamed according to submitted manual
This commit is contained in:
parent
68fc833cb5
commit
f453e7fc65
|
|
@ -2075,16 +2075,16 @@ Surface_mesh_simplification/examples/Surface_mesh_simplification/makefile -text
|
|||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Edge_extra_pointer_map_stored.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Cached_cost.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Cached_placement.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Full_collapse_data.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Cost_and_placement_cache.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Cost_cache.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_params.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_set_partial_collapse_data.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_set_cost_cache.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Midpoint_and_length.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Partial_collapse_data.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Set_full_collapse_data.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Set_partial_collapse_data.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Set_cost_and_placement_cache.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Set_cost_cache.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Polyhedron.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Polyhedron_collapse_operator.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Vertex_is_fixed_map_always_false.h -text
|
||||
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Vertex_is_fixed_property_map_always_false.h -text
|
||||
Surface_mesh_simplification/test/Surface_mesh_simplification/edge_collapse_test.cpp -text
|
||||
Surface_mesh_simplification/test/Surface_mesh_simplification/edge_collapse_test.kdevelop -text
|
||||
Surface_mesher/demo/Surface_mesher/windows/Mesh.suo -text
|
||||
|
|
|
|||
|
|
@ -76,19 +76,92 @@ The function returns vertex \ccc{u}.
|
|||
\begin{figure}[htbp]
|
||||
\begin{ccTexOnly}
|
||||
\begin{center}
|
||||
\includegraphics[width=17cm]{Surface_mesh_simplification_ref/fig/collapse0} % omit suffix .eps to support PS and PDF
|
||||
\includegraphics[width=17cm]{Surface_mesh_simplification_ref/fig/general_collapse} % omit suffix .eps to support PS and PDF
|
||||
\end{center}
|
||||
\end{ccTexOnly}
|
||||
\begin{ccHtmlOnly}
|
||||
<TABLE CELLSPACING=40>
|
||||
<TR>
|
||||
<CENTER>
|
||||
<IMG BORDER=0 SRC="./fig/collapse0.png" ALIGN=center ALT="Simplification illustration">
|
||||
<IMG BORDER=0 SRC="./fig/general_collapse.png" ALIGN=center ALT="Simplification illustration">
|
||||
</CENTER>
|
||||
</TR>
|
||||
</TABLE>
|
||||
\end{ccHtmlOnly}
|
||||
\caption{General case edge-collapse: The horizontal dash-line is the collapsing edge. It has 4 incident edges: two gets removed (dash lines) and two are kept (red lines). The green lines are the edges that are re-link to the vertex that is kept. Blue lines are the edges that are already linked to the kept vertex.}
|
||||
\caption{General edge collapse case: The horizontal dotted line is the collapsing edge. Two of its incident edges are removed (dashed lines). The red and magenta lines are the edges which get re-linked to $u$. Blue and cyan lines are the edges left untouched because they are already linked to $u$.}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\begin{ccTexOnly}
|
||||
\begin{center}
|
||||
\includegraphics[width=17cm]{Surface_mesh_simplification_ref/fig/border_collapse1} % omit suffix .eps to support PS and PDF
|
||||
\end{center}
|
||||
\end{ccTexOnly}
|
||||
\begin{ccHtmlOnly}
|
||||
<TABLE CELLSPACING=40>
|
||||
<TR>
|
||||
<CENTER>
|
||||
<IMG BORDER=0 SRC="./fig/border_collapse1.png" ALIGN=center ALT="Simplification illustration">
|
||||
</CENTER>
|
||||
</TR>
|
||||
</TABLE>
|
||||
\end{ccHtmlOnly}
|
||||
\caption{The case when the collapsing edge is a border. Only one of its incident edges (dashed line) is removed.}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\begin{ccTexOnly}
|
||||
\begin{center}
|
||||
\includegraphics[width=17cm]{Surface_mesh_simplification_ref/fig/border_collapse3} % omit suffix .eps to support PS and PDF
|
||||
\end{center}
|
||||
\end{ccTexOnly}
|
||||
\begin{ccHtmlOnly}
|
||||
<TABLE CELLSPACING=40>
|
||||
<TR>
|
||||
<CENTER>
|
||||
<IMG BORDER=0 SRC="./fig/border_collapse3.png" ALIGN=center ALT="Simplification illustration">
|
||||
</CENTER>
|
||||
</TR>
|
||||
</TABLE>
|
||||
\end{ccHtmlOnly}
|
||||
\caption{The case when the collapsing edge is not itself a border, but is incident upon a border edge that is removed.}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\begin{ccTexOnly}
|
||||
\begin{center}
|
||||
\includegraphics[width=17cm]{Surface_mesh_simplification_ref/fig/border_collapse2} % omit suffix .eps to support PS and PDF
|
||||
\end{center}
|
||||
\end{ccTexOnly}
|
||||
\begin{ccHtmlOnly}
|
||||
<TABLE CELLSPACING=40>
|
||||
<TR>
|
||||
<CENTER>
|
||||
<IMG BORDER=0 SRC="./fig/border_collapse2.png" ALIGN=center ALT="Simplification illustration">
|
||||
</CENTER>
|
||||
</TR>
|
||||
</TABLE>
|
||||
\end{ccHtmlOnly}
|
||||
\caption{The case when the collapsing edge is not itself a border, but is incident upon a border edge that is {\em not} removed.}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\begin{ccTexOnly}
|
||||
\begin{center}
|
||||
\includegraphics[width=17cm]{Surface_mesh_simplification_ref/fig/border_collapse4} % omit suffix .eps to support PS and PDF
|
||||
\end{center}
|
||||
\end{ccTexOnly}
|
||||
\begin{ccHtmlOnly}
|
||||
<TABLE CELLSPACING=40>
|
||||
<TR>
|
||||
<CENTER>
|
||||
<IMG BORDER=0 SRC="./fig/border_collapse4.png" ALIGN=center ALT="Simplification illustration">
|
||||
</CENTER>
|
||||
</TR>
|
||||
</TABLE>
|
||||
\end{ccHtmlOnly}
|
||||
\caption{The single exceptional case when the vertex w instead of v is removed.}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
|
@ -107,8 +180,11 @@ The function returns vertex \ccc{u}.
|
|||
</TR>
|
||||
</TABLE>
|
||||
\end{ccHtmlOnly}
|
||||
\caption{Detailed diagram of the collapse operation, showing also a border case.}
|
||||
\caption{Detailed diagram of the collapse operation in a border case.}
|
||||
\end{figure}
|
||||
%% figures of simplified surfaces
|
||||
|
||||
|
||||
\ccHasModels
|
||||
\ccRefIdfierPage{CGAL::Polyhedron_3<Traits>} via external adaptation.
|
||||
|
||||
|
|
@ -121,5 +197,4 @@ The function returns vertex \ccc{u}.
|
|||
% +------------------------------------------------------------------------+
|
||||
%%RefPage: end of main body, begin of footer
|
||||
% EOF
|
||||
% % +------------------------------------------------------------------------+
|
||||
%
|
||||
% +------------------------------------------------------------------------+
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
\ccDefinition
|
||||
|
||||
The class \ccRefName\ provides a model for the
|
||||
The class \ccRefName\ provides a model for
|
||||
\ccc{SetCache} which assigns a \ccc{Cost_and_placement_cache<ECM>} record.
|
||||
The cost and placement values are calculated following the Lindstrom-Turk strategy
|
||||
(Section~\ref{SurfaceMeshSimplification:LindstromTurkStrategy}).
|
||||
|
|
@ -45,10 +45,10 @@ It must be a model of the \ccc{EdgeCollapsableMesh} concept.
|
|||
\ccTypedef{Cost_and_placement_cache<ECM> Cache;}
|
||||
{A concrete type of cache assigned by this class.}
|
||||
\ccGlue
|
||||
\ccTypedef{typename LindstromTurk_params Cost_params;}
|
||||
\ccTypedef{LindstromTurk_params Cost_params;}
|
||||
{The type of the parameters used by the cost computation}
|
||||
\ccGlue
|
||||
\ccTypedef{typename LindstromTurk_params Cost_params;}
|
||||
\ccTypedef{LindstromTurk_params Placement_params;}
|
||||
{The type of the parameters used by the placement computation}
|
||||
|
||||
\ccCreation
|
||||
|
|
|
|||
|
|
@ -23,9 +23,9 @@
|
|||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
\ccDefinition
|
||||
|
||||
The class \ccRefName\ provides a model for the
|
||||
\ccc{SetCollpaseData} where the \ccc{Cache} it assigns is \ccc{Partial\_collapse\_cache<ECM>}.
|
||||
storing a cost calculated following the Lindstrom-Turk strategy
|
||||
The class \ccRefName\ provides a model for
|
||||
\ccc{SetCache} which assigns a \ccc{Cost_cache<ECM>} record.
|
||||
The cost value is calculated following the Lindstrom-Turk strategy
|
||||
(Section~\ref{SurfaceMeshSimplification:LindstromTurkStrategy}).
|
||||
|
||||
The class \ccRefName\ has one template argument: the type of surface being simplified.
|
||||
|
|
@ -45,14 +45,14 @@ It must be a model of the \ccc{EdgeCollapsableMesh} concept.
|
|||
\ccTypedef{Cost_cache<ECM> Cache;}
|
||||
{A concrete type of cache assigned by this class.}
|
||||
\ccGlue
|
||||
\ccTypedef{typename LindstromTurk_params Cost_params;}
|
||||
\ccTypedef{LindstromTurk_params Cost_params;}
|
||||
{The type of the parameters used by the cost computation}
|
||||
\ccGlue
|
||||
\ccTypedef{typename LindstromTurk_params Cost_params;}
|
||||
{The type of the parameters used by the placement computation}
|
||||
\ccTypedef{void Placemet_params;}
|
||||
{An unused type required by the \ccc{SetCache} concept.}
|
||||
|
||||
\ccCreation
|
||||
\ccCreationVariable{sd} %% choose variable name
|
||||
\ccCreationVariable{scc} %% choose variable name
|
||||
|
||||
\ccConstructor{LindstromTurk_set_cost_cache<ECM>(); }
|
||||
{Default constructor.}
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ and whose \ccc{value_type} is
|
|||
\subsubsection*{edge\_index\_map(EdgeIndexMap eim)}
|
||||
|
||||
Maps each {\em directed} edge in the surface into an integer number
|
||||
in the range \ccc{[0,num_edge(surface))}.
|
||||
in the range \ccc{[0,num_edges(surface))}.
|
||||
|
||||
\ccc{EdgeIndexMap} must be a either a
|
||||
\ccAnchor{http://www.boost.org/libs/property_map/ReadablePropertyMap.html}{ReadablePropertyMap}
|
||||
|
|
@ -100,11 +100,7 @@ in the surface (\ccc{eim}) to its index,
|
|||
without requiring any user intervention or any special
|
||||
provision in the surface edge.
|
||||
|
||||
\textbf{Default}: the property map obtained by calling \ccc{get(edge_index,surface)}, which
|
||||
in turn requires the surface edge class to have a member function
|
||||
\ccc{int id() const;}.
|
||||
|
||||
|
||||
\textbf{Default}: the property map obtained by calling \ccc{get(edge_index,surface)}.
|
||||
|
||||
\subsubsection*{edge\_is\_border\_map(EdgeIsBorderMap ebm)}
|
||||
|
||||
|
|
@ -126,14 +122,14 @@ and whose \ccc{value_type} is \ccc{bool}.
|
|||
Maps each vertex in the surface into a boolean value
|
||||
which indicates if the vertex is fixed and cannot be modified
|
||||
by the \ccc{edge_collapse} function.\\
|
||||
\ccc{EdgeIsFixedMap} must be a
|
||||
\ccc{VertexIsFixedMap} must be a
|
||||
\ccAnchor{http://www.boost.org/libs/property_map/ReadablePropertyMap.html}{ReadablePropertyMap}
|
||||
whose \ccc{key_type} is
|
||||
\ccc{boost::graph_traits<EdgeCollapsableMesh const>::vertex_descriptor}
|
||||
and whose \ccc{value_type} is \ccc{bool}.
|
||||
|
||||
\textbf{Default}:
|
||||
\ccc{Vertex_is_fixed_map_always_false<EdgeCollapsableMesh>()}.
|
||||
\ccc{Vertex_is_fixed_property_map_always_false<EdgeCollapsableMesh>()}.
|
||||
|
||||
|
||||
\subsubsection*{set\_cache(SetCache sc)}
|
||||
|
|
@ -178,19 +174,19 @@ The type of \ccc{gp} must be a model of the \ccc{GetPlacement} concept.
|
|||
|
||||
The model-specific parameters to \ccc{get_placement}.
|
||||
|
||||
\textbf{Default}: \ccc{NULL}.
|
||||
\textbf{Default}: A pointer to a local default constructed instance of \ccc{CGAL::LindstromTurk_params}.
|
||||
|
||||
|
||||
|
||||
\subsubsection*{visitor(EdgeCollaspeSimplificationVisitor const* v)}
|
||||
\subsubsection*{visitor(EdgeCollapseSimplificationVisitor const* v)}
|
||||
|
||||
The visitor that is called by the \ccc{edge_collapse} function
|
||||
in certain points to allow the user to track the simplification process.\\
|
||||
The type of \ccc{v} must be a model of the \ccc{EdgeCollaspeSimplificationVisitor} concept.
|
||||
The type of object pointed to by \ccc{v} must be a model of the \ccc{EdgeCollapseSimplificationVisitor} concept.
|
||||
|
||||
\textbf{Default}: \ccc{NULL}.
|
||||
|
||||
All these named parameters wrapping functions are defined in
|
||||
All these functions naming parameters are defined in
|
||||
\ccc{namespace CGAL}. Being non-member functions, they could clash
|
||||
with equally named functions in some other namespace. If that happens
|
||||
simply qualify the named parameter with \ccc{CGAL::} as shown in the
|
||||
|
|
@ -209,8 +205,7 @@ are the policies which control the {\em cost-strategy}, that is,
|
|||
the order in which edges are collapsed and the replacement vertex is positioned.\\
|
||||
\ccc{get_cost_params} and \ccc{get_placement_params} are the runtime
|
||||
parameters used by the these policies. They can be null pointers
|
||||
if the policies does not need them.\\
|
||||
This strategy is the driving factor that determines the accuracy of the
|
||||
if the policies do not need them. This strategy is the driving factor that determines the accuracy of the
|
||||
simplified surface with respect to the original.
|
||||
|
||||
\ccc{visitor} is an optional object (can be null) which can be used
|
||||
|
|
|
|||
Loading…
Reference in New Issue