18 #ifndef itkImageSpatialObject_h
19 #define itkImageSpatialObject_h
38 template<
unsigned int TDimension = 3,
39 typename TPixelType =
unsigned char
69 static constexpr
unsigned int ObjectDimension = TDimension;
84 bool ComputeMyBoundingBox()
const override;
87 bool IsInsideInObjectSpace(
const PointType & point,
unsigned int depth=0,
88 const std::string & name =
"")
const override;
92 bool ValueAtInObjectSpace(
const PointType & point,
double & value,
93 unsigned int depth = 0,
const std::string & name =
"")
const override;
100 void SetSliceNumber(
unsigned int dimension,
int position);
104 itkGetConstMacro( SliceNumber,
IndexType );
106 {
return m_SliceNumber[dimension]; }
110 {
return m_PixelType.c_str(); }
113 void SetInterpolator(InterpolatorType *interpolator);
114 itkGetConstMacro(Interpolator, InterpolatorType *);
122 void PrintSelf(std::ostream & os,
Indent indent)
const override;
135 template <
typename T>
137 { itkWarningMacro(
"itk::ImageSpatialObject() : PixelType not recognized"); }
140 { m_PixelType =
"short"; }
143 { m_PixelType =
"unsigned char"; }
146 { m_PixelType =
"unsigned short"; }
149 { m_PixelType =
"float"; }
152 { m_PixelType =
"double"; }
157 #ifndef ITK_MANUAL_INSTANTIATION
158 #include "itkImageSpatialObject.hxx"
161 #endif //itkImageSpatialObject_h
typename Superclass::PointType PointType
void SetPixelTypeName(const float *)
typename ImageType::IndexType IndexType
void SetPixelTypeName(const unsigned short *)
const char * GetPixelTypeName()
void SetPixelTypeName(const short *)
Nearest neighbor interpolation of a scalar image.
typename ImageType::ConstPointer ImagePointer
ImageBaseType::IndexType IndexType
Implementation of the composite pattern.
typename Superclass::TransformType TransformType
unsigned long ModifiedTimeType
typename Superclass::BoundingBoxType BoundingBoxType
void SetPixelTypeName(const double *)
int GetSliceNumber(unsigned int dimension)
Base class for all image interpolaters.
A templated class holding a point in n-Dimensional image space.
Implementation of an image as spatial object.
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
Control indentation during Print() invocation.
ImageBaseType::PointType PointType
typename PointContainerType::Pointer PointContainerPointer
void SetPixelTypeName(const T *)
Base class for most ITK classes.
ImageBaseType::RegionType RegionType
Base class for all data objects in ITK.
Templated n-dimensional image class.
void SetPixelTypeName(const unsigned char *)
typename ImageType::RegionType RegionType
InterpolatorType::Pointer m_Interpolator