18 #ifndef __itkImageSpatialObject_h
19 #define __itkImageSpatialObject_h
37 template<
unsigned int TDimension = 3,
38 class TPixelType =
unsigned char
81 bool IsEvaluableAt(
const PointType & point,
82 unsigned int depth = 0,
char *name =
NULL)
const;
87 bool ValueAt(
const PointType & point,
double & value,
88 unsigned int depth = 0,
char *name =
NULL)
const;
92 unsigned int depth,
char *name)
const;
97 bool IsInside(
const PointType & point)
const;
100 bool ComputeLocalBoundingBox()
const;
106 void SetSlicePosition(
unsigned int dimension,
int position);
109 int GetSlicePosition(
unsigned int dimension)
110 {
return m_SlicePosition[dimension]; }
112 const char * GetPixelType()
114 return m_PixelType.c_str();
118 void SetInterpolator(InterpolatorType *interpolator);
120 itkGetObjectMacro(Interpolator, InterpolatorType);
124 void operator=(
const Self &);
131 void PrintSelf(std::ostream & os,
Indent indent)
const;
137 template <
typename T>
138 void InternalSetPixelType(
const T *)
140 itkWarningMacro(
"itk::ImageSpatialObject() : PixelType not recognized");
142 void InternalSetPixelType(
const short *)
144 m_PixelType =
"short";
146 void InternalSetPixelType(
const unsigned char *)
148 m_PixelType =
"unsigned char";
150 void InternalSetPixelType(
const unsigned short *)
152 m_PixelType =
"unsigned short";
154 void InternalSetPixelType(
const float *)
156 m_PixelType =
"float";
158 void InternalSetPixelType(
const double *)
160 m_PixelType =
"double";
165 #ifndef ITK_MANUAL_INSTANTIATION
166 #include "itkImageSpatialObject.hxx"
169 #endif //__itkImageSpatialObject_h