18 #ifndef itkQuadricDecimationQuadEdgeMeshFilter_h
19 #define itkQuadricDecimationQuadEdgeMeshFilter_h
31 template <
typename TInput,
typename TOutput,
typename TCriterion>
63 static constexpr
unsigned int OutputPointDimension = OutputMeshType::PointDimension;
68 using typename Superclass::PriorityType;
69 using typename Superclass::PriorityQueueItemType;
70 using typename Superclass::PriorityQueueType;
71 using typename Superclass::PriorityQueuePointer;
73 using typename Superclass::QueueMapType;
74 using typename Superclass::QueueMapIterator;
76 using typename Superclass::OperatorType;
77 using typename Superclass::OperatorPointer;
102 id[0] = iEdge->GetOrigin();
103 id[1] = iEdge->GetDestination();
104 id[2] = iEdge->GetOnext()->GetDestination();
108 for (
int i = 0; i < 3; ++i)
110 p[i] = outputMesh->GetPoint(
id[i]);
132 mid.SetToMidPoint(org, dest);
143 DeletePoint(
const OutputPointIdentifier & iIdToBeDeleted,
const OutputPointIdentifier & iRemaining)
override;
150 Relocate(OutputQEType * iEdge)
override;
154 Initialize()
override;
160 #ifndef ITK_MANUAL_INSTANTIATION
161 # include "itkQuadricDecimationQuadEdgeMeshFilter.hxx"