18#ifndef itkDiscreteGaussianCurvatureQuadEdgeMeshFilter_h
19#define itkDiscreteGaussianCurvatureQuadEdgeMeshFilter_h
37template <
typename TInputMesh,
typename TOutputMesh = TInputMesh>
49 using typename Superclass::InputMeshType;
50 using typename Superclass::InputMeshPointer;
52 using typename Superclass::OutputMeshType;
53 using typename Superclass::OutputMeshPointer;
54 using typename Superclass::OutputPointsContainerPointer;
55 using typename Superclass::OutputPointsContainerIterator;
56 using typename Superclass::OutputPointType;
57 using typename Superclass::OutputVectorType;
58 using typename Superclass::OutputCoordType;
59 using typename Superclass::OutputPointIdentifier;
60 using typename Superclass::OutputCellIdentifier;
61 using typename Superclass::OutputQEType;
62 using typename Superclass::OutputMeshTraits;
63 using typename Superclass::OutputCurvatureType;
64 using typename Superclass::TriangleType;
72#ifdef ITK_USE_CONCEPT_CHECKING
102 qe_it2 = qe_it->GetOnext();
103 q0 = output->GetPoint(qe_it->GetDestination());
104 q1 = output->GetPoint(qe_it2->GetDestination());
108 area += this->ComputeMixedArea(qe_it, qe_it2);
110 }
while (qe_it != qe);
typename OutputMeshType::QEType OutputQEType
typename OutputMeshTraits::PixelType OutputCurvatureType
see the following paper title: Discrete Differential-Geometry Operators for Triangulated 2-Manifolds ...
OutputCurvatureType EstimateCurvature(const OutputPointType &iP) override
~DiscreteGaussianCurvatureQuadEdgeMeshFilter() override=default
DiscreteGaussianCurvatureQuadEdgeMeshFilter()=default
Light weight base class for most itk classes.
typename OutputMeshType::Pointer OutputMeshPointer
typename OutputMeshType::PointType OutputPointType
#define itkConceptMacro(name, concept)
static constexpr double pi
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....