18#ifndef itkQuadEdgeMeshParamMatrixCoefficients_h
19#define itkQuadEdgeMeshParamMatrixCoefficients_h
32template <
typename TInputMesh>
54template <
typename TInputMesh>
83template <
typename TInputMesh>
126template <
typename TInputMesh>
156 if (iEdge->IsLeftSet())
162 if (iEdge->IsRightSet())
181template <
typename TInputMesh>
213 if (iEdge->IsLeftSet())
220 if (iEdge->IsRightSet())
227 return oValue / pt1.SquaredEuclideanDistanceTo(pt2);
238template <
typename TInputMesh>
260 InputCoordRepType oValue = m_Lambda * conformal(iMesh, iEdge) + (1.0 - m_Lambda) * authalic(iMesh, iEdge);
273template <
typename TInputMesh>
286 static constexpr unsigned int PointDimension = InputPointType::PointDimension;
320 InputCoordRepType oValue = (L1A + L2A - L12) / AreaA + (L1B + L2B - L12) / AreaB;
Compute a matrix filled with Authalic Coefficients of the edge, wherever two vertices are connected w...
typename InputMeshType::PointIdentifier InputPointIdentifier
typename InputMeshType::PointType InputPointType
InputCoordRepType operator()(const InputMeshType *iMesh, InputQEType *iEdge) const override
AuthalicMatrixCoefficients()=default
Compute a matrix filled with Harmonic coefficients, wherever two vertices are connected by an edge.
typename InputMeshType::PointIdentifier InputPointIdentifier
typename InputMeshType::PointType InputPointType
InputCoordRepType operator()(const InputMeshType *iMesh, InputQEType *iEdge) const override
HarmonicMatrixCoefficients()=default
typename InputPointType::VectorType InputVectorType
Compute a matrix filled by intrinsic Coefficients of the edge, wherever two vertices are connected by...
IntrinsicMatrixCoefficients(const InputCoordRepType &iLambda)
InputCoordRepType m_Lambda
InputCoordRepType operator()(const InputMeshType *iMesh, InputQEType *iEdge) const
Compute a matrix filed with the inverse of the euclidean distance wherever two vertices are connected...
typename InputMeshType::PointType InputPointType
InverseEuclideanDistanceMatrixCoefficients()=default
InputCoordRepType operator()(const InputMeshType *iMesh, InputQEType *iEdge) const override
typename InputMeshType::VectorType InputVectorType
typename InputMeshType::PointIdentifier InputPointIdentifier
Superclass for all the matrix coefficients computation classes.
MatrixCoefficients()=default
virtual InputCoordRepType operator()(const InputMeshType *iMesh, InputQEType *iEdge) const =0
typename InputMeshType::QEType InputQEType
typename InputMeshType::CoordRepType InputCoordRepType
virtual ~MatrixCoefficients()=default
Compute a matrix filled by 1s wherever two vertices are connected by an edge.
OnesMatrixCoefficients()=default
InputCoordRepType operator()(const InputMeshType *, InputQEType *) const override
static CoordRepType Cotangent(const PointType &iA, const PointType &iB, const PointType &iC)
Compute cotangent(iA,iB,iC)
ImageBaseType::PointType PointType
ImageBaseType::SpacingType VectorType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....