18 #ifndef __itkQuadEdgeMeshDecimationCriteria_h
19 #define __itkQuadEdgeMeshDecimationCriteria_h
31 template<
class TMesh,
33 typename TMeasure = double,
34 class TPriorityQueueWrapper =
35 MinPriorityQueueElementWrapper<
typename TMesh::QEType *,
36 std::pair< bool, TMeasure > > >
52 typedef typename PriorityQueueWrapperType::ElementPriorityType
PriorityType;
56 this->m_SizeCriterion =
true;
57 this->m_NumberOfElements = numberOfElements;
62 this->m_SizeCriterion =
false;
63 this->m_MeasureBound = bound;
66 itkGetConstMacro(TopologicalChange,
bool);
67 itkSetMacro(TopologicalChange,
bool);
69 virtual bool is_satisfied(MeshType *iMesh,
70 const ElementType & iElement,
71 const MeasureType & iValue)
const = 0;
76 this->m_TopologicalChange =
true;
77 this->m_SizeCriterion =
true;
78 this->m_NumberOfElements = 0;
83 void PrintSelf(std::ostream & os,
Indent indent)
const
85 Superclass::PrintSelf(os, indent);
86 os << indent <<
"TopologicalChange: "
87 << (m_TopologicalChange ?
"On" :
"Off")
89 os << indent <<
"SizeCriterion: "
90 << (m_SizeCriterion ?
"On" :
"Off")
92 os << indent <<
"NumberOfElements: "
95 os << indent <<
"MeasureBound: "
108 void operator=(
const Self &);
116 template<
class TMesh,
118 typename TMeasure = double,
119 class TPriorityQueueWrapper =
121 std::pair< bool, TMeasure > > >
124 TMeasure, TPriorityQueueWrapper >
131 TMesh, TElement, TMeasure, TPriorityQueueWrapper >
Superclass;
165 template<
class TMesh,
167 typename TMeasure = double,
168 class TPriorityQueueWrapper =
169 MinPriorityQueueElementWrapper<
typename TMesh::QEType *,
170 std::pair< bool, TMeasure > > >
173 TMeasure, TPriorityQueueWrapper >
215 template<
class TMesh,
217 typename TMeasure = double,
218 class TPriorityQueueWrapper =
219 MinPriorityQueueElementWrapper<
typename TMesh::QEType *,
220 std::pair< bool, TMeasure > > >
223 TMeasure, TPriorityQueueWrapper >
265 template<
class TMesh,
267 typename TMeasure = double,
268 class TPriorityQueueWrapper =
269 MaxPriorityQueueElementWrapper<
typename TMesh::QEType *,
270 std::pair< bool, TMeasure > > >
273 TMeasure, TPriorityQueueWrapper >