13 #ifndef __itkMeshFromSHCoefficientsImageFilter_h 14 #define __itkMeshFromSHCoefficientsImageFilter_h 29 template <
class TInputImage,
class TOutputMesh=vtkPolyData>
83 itkSetMacro(MaxOrder,
int);
84 itkGetMacro(MaxOrder,
int);
90 InputImageConstPointer inputPtr = this->GetInput();
91 unsigned int maxNumberOfBasis = inputPtr->GetNumberOfComponentsPerPixel();
99 return this->m_BasisMatrix;
104 VectorType result(x);
105 if (std::fabs(x[0]>1e-8))
106 result /= (std::sqrt(4.0 *
M_PI) * x[0]);
120 Superclass::PrintSelf(os, indent);
126 typename LightObject::Pointer loPtr = Superclass::InternalClone();
128 typename Self::Pointer rval =
dynamic_cast<Self *
>(loPtr.GetPointer());
131 itkExceptionMacro(<<
"downcast to type " << this->GetNameOfClass()<<
" failed.");
134 rval->m_MaxOrder = m_MaxOrder;
149 void operator=(
const Self&);
Superclass::OutputMeshPointsType OutputMeshPointsType
Superclass::OutputMeshScalarType OutputMeshScalarType
TInputImage InputImageType
InputImageType::SizeType InputImageSizeType
InputImageType::PixelType InputImagePixelType
#define PrintVar1(cond, var, os)
Superclass::OutputMeshPointsType OutputMeshPointsType
Superclass::VectorPointer VectorPointer
Compute mesh from SH coefficients.
Superclass::OutputMeshRGBType OutputMeshRGBType
~MeshFromSHCoefficientsImageFilter()
InputImageType::RegionType InputImageRegionType
SmartPointer< Self > Pointer
MeshFromContinuousSphericalFunctionImageFilter< TInputImage, TOutputMesh > Superclass
Superclass::MatrixPointer MatrixPointer
SmartPointer< Self > Pointer
Superclass::OutputMeshScalarType OutputMeshScalarType
int DimToRankSH(const int dimm)
Superclass::OutputMeshCellArrayType OutputMeshCellArrayType
Superclass::OutputMeshCellArrayType OutputMeshCellArrayType
TOutputMesh OutputMeshPolyDataType
Superclass::VectorPointer VectorPointer
NDArray< T, 2 > FlipOrientations(const NDArray< T, 2 > &in, const std::vector< int > &flip)
std::shared_ptr< NDArray< T, 2 > > ComputeSHMatrix(const unsigned int rank, const NDArray< T, 2 > &grad, const int mode)
Superclass::STDVectorType STDVectorType
InputImageType::ConstPointer InputImageConstPointer
InputImageType::PointType InputImagePointType
SmartPointer< const Self > ConstPointer
Superclass::STDVectorType STDVectorType
InputImageType::Pointer InputImagePointer
#define utlGlobalException(cond, expout)
SphereTessellator< double > SphereTessellatorType
Superclass::MatrixType MatrixType
SphereTessellatorType::Pointer SphereTessellatorPointer
SphereTessellatorType::BasicShapeType BasicShapeType
MeshFromSHCoefficientsImageFilter Self
Superclass::OutputMeshPolyDataPointer OutputMeshPolyDataPointer
VectorType NormalizeUnitIntegral(const VectorType &x) const ITK_OVERRIDE
InputImageType::SpacingType InputImageSpacingType
Superclass::OutputMeshPolyDataPointer OutputMeshPolyDataPointer
Superclass::VectorType VectorType
Compute mesh from continuous spherical function linearly represented by a set of bases.
Superclass::STDVectorPointer STDVectorPointer
Superclass::VectorType VectorType
Superclass::OutputMeshRGBType OutputMeshRGBType
MeshFromSHCoefficientsImageFilter()
MatrixPointer ComputeBasisMatrix() ITK_OVERRIDE
#define utlShowPosition(cond)
void PrintSelf(std::ostream &os, Indent indent) const ITK_OVERRIDE
Superclass::STDVectorPointer STDVectorPointer
InputImageType::SizeValueType InputImageSizeValueType
SmartPointer< Self > Pointer
Tesselates a sphere via subdivision of tetrahedron, octahedron, or icosahedron.
Superclass::MatrixType MatrixType
Superclass::MatrixPointer MatrixPointer
InputImageType::IndexType InputImageIndexType
LightObject::Pointer InternalClone() const ITK_OVERRIDE