aimstil  5.0.5
til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection > Class Template Reference

Attempt to label a vertex as removable, and if successfull, label its neighbors as unremovable. More...

#include <cathier/mesh_decimation.h>

Public Types

enum  { UNPROCESSED = 0, KEEP, REMOVE }
 Vertex labels. More...
 
typedef unsigned char Label
 
typedef std::vector< LabelLabelCollection
 

Public Member Functions

 Neigh_decimation_labeler (TVertexCollection const &vertices, TNeighborhoodCollection const &neighs, LabelCollection &label)
 
TVertexCollection const & vertices ()
 
TNeighborhoodCollection const & neighs ()
 
LabelCollectionlabel ()
 
bool operator() (std::size_t i)
 Try to remove i-th point. Returns true if successful. More...
 

Detailed Description

template<typename TVertexCollection, typename TNeighborhoodCollection>
class til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >

Attempt to label a vertex as removable, and if successfull, label its neighbors as unremovable.

Definition at line 1606 of file mesh_decimation.h.

Member Typedef Documentation

◆ Label

template<typename TVertexCollection, typename TNeighborhoodCollection>
typedef unsigned char til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::Label

Definition at line 1609 of file mesh_decimation.h.

◆ LabelCollection

template<typename TVertexCollection, typename TNeighborhoodCollection>
typedef std::vector<Label> til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::LabelCollection

Definition at line 1610 of file mesh_decimation.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename TVertexCollection, typename TNeighborhoodCollection>
anonymous enum

Vertex labels.

Unprocessed: no decision has been made yet. Remove: vertex labeled as to be removed. Keep: vertex labeled as unremovable.

Enumerator
UNPROCESSED 
KEEP 
REMOVE 

Definition at line 1616 of file mesh_decimation.h.

Constructor & Destructor Documentation

◆ Neigh_decimation_labeler()

template<typename TVertexCollection, typename TNeighborhoodCollection>
til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::Neigh_decimation_labeler ( TVertexCollection const &  vertices,
TNeighborhoodCollection const &  neighs,
LabelCollection label 
)
inline

Definition at line 1619 of file mesh_decimation.h.

Member Function Documentation

◆ label()

template<typename TVertexCollection, typename TNeighborhoodCollection>
LabelCollection& til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::label ( )
inline

Definition at line 1634 of file mesh_decimation.h.

◆ neighs()

template<typename TVertexCollection, typename TNeighborhoodCollection>
TNeighborhoodCollection const& til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::neighs ( )
inline

Definition at line 1633 of file mesh_decimation.h.

◆ operator()()

template<typename TVertexCollection, typename TNeighborhoodCollection>
bool til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::operator() ( std::size_t  i)
inline

Try to remove i-th point. Returns true if successful.

Definition at line 1637 of file mesh_decimation.h.

References til::quantizer(), and til::size().

◆ vertices()

template<typename TVertexCollection, typename TNeighborhoodCollection>
TVertexCollection const& til::Neigh_decimation_labeler< TVertexCollection, TNeighborhoodCollection >::vertices ( )
inline

Definition at line 1632 of file mesh_decimation.h.


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