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;
103 unsigned long GetMTime(
void)
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);
123 void operator=(
const Self &);
130 void PrintSelf(std::ostream & os,
Indent indent)
const;
136 template <
typename T>
137 void InternalSetPixelType(
const T *)
139 itkWarningMacro(
"itk::ImageSpatialObject() : PixelType not recognized");
141 void InternalSetPixelType(
const short *)
143 m_PixelType =
"short";
145 void InternalSetPixelType(
const unsigned char *)
147 m_PixelType =
"unsigned char";
149 void InternalSetPixelType(
const unsigned short *)
151 m_PixelType =
"unsigned short";
153 void InternalSetPixelType(
const float *)
155 m_PixelType =
"float";
157 void InternalSetPixelType(
const double *)
159 m_PixelType =
"double";
164 #ifndef ITK_MANUAL_INSTANTIATION
165 #include "itkImageSpatialObject.hxx"
168 #endif //__itkImageSpatialObject_h