Public Member Functions | Static Public Member Functions | Protected Types | Static Protected Member Functions | Protected Attributes
vcg::tri::PlanarEdgeFlip< TRIMESH_TYPE, MYTYPE, QualityFunc > Class Template Reference

#include <tri_edge_flip.h>

Inheritance diagram for vcg::tri::PlanarEdgeFlip< TRIMESH_TYPE, MYTYPE, QualityFunc >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

ScalarType ComputePriority (BaseParameterClass *)
void Execute (TRIMESH_TYPE &m, BaseParameterClass *)
int GetMark () const
PosType GetPos () const
const char * Info (TRIMESH_TYPE &m)
virtual bool IsFeasible (BaseParameterClass *_pp)
ModifierType IsOfType ()
bool IsUpToDate () const
 PlanarEdgeFlip ()
 PlanarEdgeFlip (PosType pos, int mark, BaseParameterClass *pp)
 PlanarEdgeFlip (const PlanarEdgeFlip &par)
virtual ScalarType Priority () const
virtual void UpdateHeap (HeapType &heap, BaseParameterClass *pp)
 Update the heap as a consequence of this operation.
 ~PlanarEdgeFlip ()

Static Public Member Functions

static void Init (TRIMESH_TYPE &mesh, HeapType &heap, BaseParameterClass *pp)

Protected Types

typedef TRIMESH_TYPE::CoordType CoordType
typedef TRIMESH_TYPE::FaceIterator FaceIterator
typedef TRIMESH_TYPE::FacePointer FacePointer
typedef TRIMESH_TYPE::FaceType FaceType
typedef LocalOptimization
< TRIMESH_TYPE >::HeapElem 
HeapElem
typedef LocalOptimization
< TRIMESH_TYPE >::HeapType 
HeapType
typedef vcg::face::Pos< FaceTypePosType
typedef TRIMESH_TYPE::ScalarType ScalarType
typedef TRIMESH_TYPE::VertexPointer VertexPointer
typedef TRIMESH_TYPE::VertexType VertexType

Static Protected Member Functions

static int & GlobalMark ()
static void Insert (HeapType &heap, PosType &p, int mark, BaseParameterClass *pp)

Protected Attributes

int _localMark
PosType _pos
ScalarType _priority

Detailed Description

template<class TRIMESH_TYPE, class MYTYPE, typename TRIMESH_TYPE::ScalarType(*)(Point3< typename TRIMESH_TYPE::ScalarType > const &p0, Point3< typename TRIMESH_TYPE::ScalarType > const &p1, Point3< typename TRIMESH_TYPE::ScalarType > const &p2) QualityFunc = Quality>
class vcg::tri::PlanarEdgeFlip< TRIMESH_TYPE, MYTYPE, QualityFunc >

This Class is specialization of LocalModification for the edge flip It wraps the atomic operation EdgeFlip to be used in a optimization routine. Note that it has knowledge of the heap of the class LocalOptimization because it is responsible of updating it after a flip has been performed This is the simplest edge flipping class. It flips an edge only if two adjacent faces are coplanar and the quality of the faces improves after the flip.

Definition at line 64 of file tri_edge_flip.h.


The documentation for this class was generated from the following file:


shape_reconstruction
Author(s): Roberto Martín-Martín
autogenerated on Sat Jun 8 2019 18:42:55