18 #ifndef __itkTubeSpatialObject_h
19 #define __itkTubeSpatialObject_h
41 template<
unsigned int TDimension = 3,
42 typename TTubePointType = TubeSpatialObjectPoint< TDimension > >
82 {
return &( m_Points[ind] ); }
86 {
return &( m_Points[ind] ); }
90 { m_Points[ind] = pnt; }
94 { m_Points.erase(m_Points.begin() + ind); }
98 {
return m_Points.size(); }
101 itkSetMacro(EndType,
unsigned int);
102 itkGetConstMacro(EndType,
unsigned int);
109 bool ComputeTangentAndNormals(
void);
112 unsigned int RemoveDuplicatePoints(
unsigned int step = 1);
116 bool IsEvaluableAt(
const PointType & point,
117 unsigned int depth = 0,
char *name =
NULL)
const;
123 bool ValueAt(
const PointType & point,
double & value,
124 unsigned int depth = 0,
char *name =
NULL)
const;
127 bool IsInside(
const PointType & point,
128 unsigned int depth,
char *name)
const;
133 virtual bool IsInside(
const PointType & point)
const;
136 bool ComputeLocalBoundingBox()
const;
140 itkSetMacro(ParentPoint,
int);
141 itkGetConstMacro(ParentPoint,
int);
146 itkSetMacro(Root,
bool);
147 itkGetConstMacro(Root,
bool);
151 itkSetMacro(Artery,
bool);
152 itkGetConstMacro(Artery,
bool);
172 virtual void PrintSelf(std::ostream & os,
Indent indent)
const;
179 void operator=(
const Self &);
184 #ifndef ITK_MANUAL_INSTANTIATION
185 #include "itkTubeSpatialObject.hxx"
188 #endif // __itkTubeSpatialObject_h