Documentation fixes

This commit is contained in:
Fernando Cacciola 2006-11-22 15:49:54 +00:00
parent ad95dc8901
commit 6e99dd9b36
12 changed files with 10 additions and 201 deletions

3
.gitattributes vendored
View File

@ -2308,9 +2308,8 @@ Surface_mesh_simplification/examples/Surface_mesh_simplification/edge_collapse_p
Surface_mesh_simplification/examples/Surface_mesh_simplification/edge_collapse_polyhedron.cpp -text
Surface_mesh_simplification/examples/Surface_mesh_simplification/makefile -text
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/HalfedgeGraph_Polyhedron_3.h -text
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collaps -text
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h -text
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile_impl.h.h -text
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile_impl.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/Midpoint_and_length.h -text
Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/collapse_triangulation_edge_Polyhedron_3.h -text

View File

@ -53,7 +53,7 @@ must be kept in place, not moved to a new position.
which replaces the collapsing edge (represented by its profile).}
\ccHasModels
\ccRefIdfierPage{CGAL::Surface_mesh_simplification::Edge_length_placement<ECM>}\\
\ccRefIdfierPage{CGAL::Surface_mesh_simplification::Midpoint_placement<ECM>}\\
\ccRefIdfierPage{CGAL::Surface_mesh_simplification::LindstromTurk_placement<ECM>}
\end{ccRefConcept}

View File

@ -154,7 +154,7 @@ 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 {\em first}
\footnoote{The second and subsequent named parameters shall not be qualified as they are member functions}
\footnote{The second and subsequent named parameters shall not be qualified as they are member functions}
named parameter with \ccc{CGAL::}, as shown in the examples in the user manual.
\ccHeading{Semantics}

View File

@ -28,7 +28,7 @@
#include <boost/graph/adjacency_list.hpp>
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h>
CGAL_BEGIN_NAMESPACE

View File

@ -1,190 +0,0 @@
// Copyright (c) 2005, 2006 Fernando Luis Cacciola Carballal. All rights reserved.
//
// This file is part of CGAL (www.cgal.org); you may redistribute it under
// the terms of the Q Public License version 1.0.
// See the file LICENSE.QPL distributed with CGAL.
//
// Licensees holding a valid commercial license may use this file in
// accordance with the commercial license agreement provided with the software.
//
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
//
// $URL: svn+ssh://fcacciola@scm.gforge.inria.fr/svn/cgal/trunk/Surface_mesh_simplification/include/CGAL/Surface_mesh_simplification/Detail/Edge_collapse.h $
// $Id: Edge_collapse.h 35189 2006-11-15 22:03:13Z fcacciola $
//
// Author(s) : Fernando Cacciola <fernando_cacciola@ciudad.com.ar>
//
#ifndef CGAL_SURFACE_MESH_SIMPLIFICATION_DETAIL_EDGE_PROFILE_H
#define CGAL_SURFACE_MESH_SIMPLIFICATION_DETAIL_EDGE_PROFILE_H 1
#include <vector>
#include <set>
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
CGAL_BEGIN_NAMESPACE
namespace Surface_mesh_simplification
{
template<class ECM_>
class Edge_profile
{
public:
typedef ECM_ ECM ;
typedef boost::graph_traits<ECM const> ConstGraphTraits ;
typedef boost::graph_traits<ECM> GraphTraits ;
typedef typename ConstGraphTraits::vertex_descriptor const_vertex_descriptor ;
typedef typename ConstGraphTraits::edge_descriptor const_edge_descriptor ;
typedef typename GraphTraits::vertex_descriptor vertex_descriptor ;
typedef typename GraphTraits::edge_descriptor edge_descriptor ;
typedef typename halfedge_graph_traits<ECM>::Point Point ;
public:
struct Triangle
{
Triangle() {}
Triangle( vertex_descriptor const& a_v0
, vertex_descriptor const& a_v1
, vertex_descriptor const& a_v2
)
: v0(a_v0), v1(a_v1), v2(a_v2) {}
vertex_descriptor v0 ;
vertex_descriptor v1 ;
vertex_descriptor v2 ;
} ;
typedef std::vector<vertex_descriptor> vertex_descriptor_vector ;
typedef std::vector<edge_descriptor> edge_descriptor_vector ;
typedef std::vector<Triangle> Triangle_vector ;
public :
template<class VertexIdxMap
,class EdgeIdxMap
,class EdgeIsBorderMap
>
Edge_profile ( edge_descriptor const& aV0V1
, ECM& aSurface
, VertexIdxMap const& aVertex_index_map
, EdgeIdxMap const& aEdge_index_map
, EdgeIsBorderMap const& aEdge_is_border_map
) ;
public :
edge_descriptor const& v0v1() const { return mV0V1; }
edge_descriptor const& v1v0() const { return mV1V0; }
vertex_descriptor const& v0() const { return mV0; }
vertex_descriptor const& v1() const { return mV1; }
// These are null if v0v1 is a border (thius there is no face to its left)
vertex_descriptor const& vl() const { return mVL; }
edge_descriptor const& v1vl() const { return mV1VL; }
edge_descriptor const& vlv0() const { return mVLV0; }
// These are null if v1v0 is a border (thius there is no face to its left)
vertex_descriptor const& vr() const { return mVR; }
edge_descriptor const& v0vr() const { return mV0VR; }
edge_descriptor const& vrv1() const { return mVRV1; }
Triangle_vector const& triangles() const { return mTriangles ; }
// The cycle of vertices around the edge
vertex_descriptor_vector const& link() const { return mLink ; }
edge_descriptor_vector const& border_edges() const { return mBorderEdges ; }
ECM& surface() const { return *mSurface ; }
public :
Point const& p0() const { return mP0; }
Point const& p1() const { return mP1; }
bool is_v0v1_a_border() const { return mIsBorderV0V1 ; }
bool is_v1v0_a_border() const { return mIsBorderV1V0 ; }
bool left_face_exists () const { return !mIsBorderV0V1 ; }
bool right_face_exists() const { return !mIsBorderV1V0 ; }
private:
typedef typename GraphTraits::in_edge_iterator in_edge_iterator ;
typedef std::set<std::size_t> IdxSet;
private:
template<class EdgeIdxMap, class EdgeIsBorderMap>
void Extract_borders( vertex_descriptor const& v
, IdxSet& rCollected
, EdgeIdxMap const& edge_idx
, EdgeIsBorderMap const& is_border
) ;
template<class EdgeIdxMap, class EdgeIsBorderMap>
void Extract_borders( EdgeIdxMap const& edge_idx, EdgeIsBorderMap const& is_border) ;
template<class EdgeIsBorderMap>
void Extract_triangle( vertex_descriptor const& v0
, vertex_descriptor const& v1
, vertex_descriptor const& v2
, edge_descriptor const& e02
, EdgeIsBorderMap const& is_border
) ;
template<class VertexIdxMap, class EdgeIsBorderMap>
void Extract_triangles_and_link( VertexIdxMap const& vertex_idx, EdgeIsBorderMap const& is_border ) ;
private:
edge_descriptor mV0V1;
edge_descriptor mV1V0;
bool mIsBorderV0V1 ;
bool mIsBorderV1V0 ;
vertex_descriptor mV0;
vertex_descriptor mV1;
Point mP0 ;
Point mP1 ;
vertex_descriptor mVL;
vertex_descriptor mVR;
edge_descriptor mV1VL;
edge_descriptor mVLV0;
edge_descriptor mV0VR;
edge_descriptor mVRV1;
vertex_descriptor_vector mLink ;
edge_descriptor_vector mBorderEdges ;
Triangle_vector mTriangles ;
ECM* mSurface ;
} ;
} // namespace Surface_mesh_simplification
CGAL_END_NAMESPACE
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile_impl.h>
#endif // CGAL_SURFACE_MESH_SIMPLIFICATION_DETAIL_EDGE_PROFILE_H
// EOF //

View File

@ -19,7 +19,7 @@
#define CGAL_SURFACE_MESH_SIMPLIFICATION_POLICIES_EDGE_COLLAPSE_COUNT_RATIO_STOP_PREDICATE_H 1
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h>
CGAL_BEGIN_NAMESPACE

View File

@ -19,7 +19,7 @@
#define CGAL_SURFACE_MESH_SIMPLIFICATION_POLICIES_EDGE_COLLAPSE_COUNT_STOP_PREDICATE_H 1
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h>
CGAL_BEGIN_NAMESPACE

View File

@ -21,7 +21,7 @@
#include <vector>
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/LindstromTurk_params.h>
CGAL_BEGIN_NAMESPACE

View File

@ -19,7 +19,7 @@
#define CGAL_SURFACE_MESH_SIMPLIFICATION_POLICIES_EDGE_COLLAPSE_EDGE_LENGHT_COST_H
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h>
CGAL_BEGIN_NAMESPACE

View File

@ -183,7 +183,7 @@ private:
CGAL_END_NAMESPACE
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile_impl.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile_impl.h>
#endif // CGAL_SURFACE_MESH_SIMPLIFICATION_DETAIL_EDGE_PROFILE_H
// EOF //

View File

@ -19,7 +19,7 @@
#define CGAL_SURFACE_MESH_SIMPLIFICATION_POLICIES_EDGE_COLLAPSE_MIDPOINT_PLACEMENT_H 1
#include <CGAL/Surface_mesh_simplification/Detail/Common.h>
#include <CGAL/Surface_mesh_simplification/Detail/Edge_profile.h>
#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Edge_profile.h>
CGAL_BEGIN_NAMESPACE