Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::TubeSpatialObject< TDimension, TTubePointType > Class Template Reference

Representation of a tube based on the spatial object classes. More...

#include <itkTubeSpatialObject.h>

Inheritance diagram for itk::TubeSpatialObject< TDimension, TTubePointType >:

Inheritance graph
[legend]
Collaboration diagram for itk::TubeSpatialObject< TDimension, TTubePointType >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TubeSpatialObject Self
typedef PointBasedSpatialObject<
TDimension > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef double ScalarType
typedef TTubePointType TubePointType
typedef std::vector< TubePointTypePointListType
typedef PointListTypePointListPointer
typedef Superclass::PointType PointType
typedef Superclass::TransformType TransformType
typedef Superclass::SpatialObjectPointType SpatialObjectPointType
typedef VectorContainer< unsigned
long, PointType
PointContainerType
typedef SmartPointer< PointContainerTypePointContainerPointer
typedef Superclass::VectorType VectorType
typedef Superclass::CovariantVectorType CovariantVectorType
typedef Superclass::BoundingBoxType BoundingBoxType

Public Member Functions

virtual const char * GetNameOfClass () const
virtual PointListTypeGetPoints (void)
virtual const PointListTypeGetPoints (void) const
virtual void SetPoints (PointListType &newPoints)
virtual const SpatialObjectPointTypeGetPoint (unsigned long id) const
virtual SpatialObjectPointTypeGetPoint (unsigned long id)
virtual void SetPoint (unsigned long id, const TubePointType &pnt)
virtual void RemovePoint (unsigned long id)
virtual unsigned long GetNumberOfPoints (void) const
void Clear (void)
bool ComputeTangentAndNormals (void)
unsigned int RemoveDuplicatePoints (unsigned int step=1)
bool IsEvaluableAt (const PointType &point, unsigned int depth=0, char *name=NULL) const
bool ValueAt (const PointType &point, double &value, unsigned int depth=0, char *name=NULL) const
bool IsInside (const PointType &point, unsigned int depth, char *name) const
virtual bool IsInside (const PointType &point) const
bool ComputeLocalBoundingBox () const
void CopyInformation (const DataObject *data)
virtual void SetEndType (unsigned int _arg)
virtual unsigned int GetEndType () const
virtual void SetParentPoint (int _arg)
virtual int GetParentPoint () const
virtual void SetRoot (bool _arg)
virtual bool GetRoot () const
virtual void SetArtery (bool _arg)
virtual bool GetArtery () const

Static Public Member Functions

Pointer New ()

Protected Member Functions

 TubeSpatialObject ()
virtual ~TubeSpatialObject ()
virtual void PrintSelf (std::ostream &os, Indent indent) const

Protected Attributes

PointListType m_Points
int m_ParentPoint
unsigned int m_EndType
bool m_Root
bool m_Artery
unsigned long m_OldMTime
unsigned long m_IndexToWorldTransformMTime

Detailed Description

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
class itk::TubeSpatialObject< TDimension, TTubePointType >

Representation of a tube based on the spatial object classes.

The tube is basically defined by a set of points. Each tube can be connected to a tube network, by using the AddSpatialObject() methods of a TubeSpatialObject Object. A tube is also identified by an id number when connected to a network.

See also:
TubeSpatialObjectPoint

Definition at line 43 of file itkTubeSpatialObject.h.


Member Typedef Documentation

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef Superclass::BoundingBoxType itk::TubeSpatialObject< TDimension, TTubePointType >::BoundingBoxType
 

Reimplemented from itk::SpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 64 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef SmartPointer< const Self > itk::TubeSpatialObject< TDimension, TTubePointType >::ConstPointer
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 52 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef Superclass::CovariantVectorType itk::TubeSpatialObject< TDimension, TTubePointType >::CovariantVectorType
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 63 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef SmartPointer<PointContainerType> itk::TubeSpatialObject< TDimension, TTubePointType >::PointContainerPointer
 

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 61 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef VectorContainer<unsigned long,PointType> itk::TubeSpatialObject< TDimension, TTubePointType >::PointContainerType
 

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 60 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef SmartPointer< Self > itk::TubeSpatialObject< TDimension, TTubePointType >::Pointer
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 51 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef PointListType* itk::TubeSpatialObject< TDimension, TTubePointType >::PointListPointer
 

Definition at line 56 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef std::vector< TubePointType > itk::TubeSpatialObject< TDimension, TTubePointType >::PointListType
 

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 55 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef Superclass::PointType itk::TubeSpatialObject< TDimension, TTubePointType >::PointType
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 57 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef double itk::TubeSpatialObject< TDimension, TTubePointType >::ScalarType
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 53 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef TubeSpatialObject itk::TubeSpatialObject< TDimension, TTubePointType >::Self
 

Standard class typedefs.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 49 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef Superclass::SpatialObjectPointType itk::TubeSpatialObject< TDimension, TTubePointType >::SpatialObjectPointType
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 59 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef PointBasedSpatialObject< TDimension > itk::TubeSpatialObject< TDimension, TTubePointType >::Superclass
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 50 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef Superclass::TransformType itk::TubeSpatialObject< TDimension, TTubePointType >::TransformType
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 58 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef TTubePointType itk::TubeSpatialObject< TDimension, TTubePointType >::TubePointType
 

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 54 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
typedef Superclass::VectorType itk::TubeSpatialObject< TDimension, TTubePointType >::VectorType
 

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

Definition at line 62 of file itkTubeSpatialObject.h.


Constructor & Destructor Documentation

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
itk::TubeSpatialObject< TDimension, TTubePointType >::TubeSpatialObject  )  [protected]
 

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual itk::TubeSpatialObject< TDimension, TTubePointType >::~TubeSpatialObject  )  [protected, virtual]
 


Member Function Documentation

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
void itk::TubeSpatialObject< TDimension, TTubePointType >::Clear void   )  [virtual]
 

Remove the list of tube points

Reimplemented from itk::SpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::ComputeLocalBoundingBox  )  const [virtual]
 

Compute the boundaries of the tube.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::ComputeTangentAndNormals void   ) 
 

Calculate the normalized tangent

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
void itk::TubeSpatialObject< TDimension, TTubePointType >::CopyInformation const DataObject data  )  [virtual]
 

Copy the information from another SpatialObject

Reimplemented from itk::SpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual bool itk::TubeSpatialObject< TDimension, TTubePointType >::GetArtery  )  const [virtual]
 

Set/Get a flag for vessel which are an Artery

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual unsigned int itk::TubeSpatialObject< TDimension, TTubePointType >::GetEndType  )  const [virtual]
 

Set the type of tube end-type: 0 = flat, 1 = rounded

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual const char* itk::TubeSpatialObject< TDimension, TTubePointType >::GetNameOfClass  )  const [virtual]
 

Method for creation through the object factory.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual unsigned long itk::TubeSpatialObject< TDimension, TTubePointType >::GetNumberOfPoints void   )  const [inline, virtual]
 

Return the number of points in the list

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 98 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual int itk::TubeSpatialObject< TDimension, TTubePointType >::GetParentPoint  )  const [virtual]
 

Set/Get the parent point which corresponds to the position of the point in the parent's points list

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual SpatialObjectPointType* itk::TubeSpatialObject< TDimension, TTubePointType >::GetPoint unsigned long  id  )  [inline, virtual]
 

Return a point in the list given the index

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 86 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual const SpatialObjectPointType* itk::TubeSpatialObject< TDimension, TTubePointType >::GetPoint unsigned long  id  )  const [inline, virtual]
 

Return a point in the list given the index

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 82 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual const PointListType& itk::TubeSpatialObject< TDimension, TTubePointType >::GetPoints void   )  const [virtual]
 

Returns a reference to the list of the tube points.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual PointListType& itk::TubeSpatialObject< TDimension, TTubePointType >::GetPoints void   )  [virtual]
 

Returns a reference to the list of the tube points.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual bool itk::TubeSpatialObject< TDimension, TTubePointType >::GetRoot  )  const [virtual]
 

Set/Get a flag for vessel which are a "root" of a vascular network in the scene

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::IsEvaluableAt const PointType point,
unsigned int  depth = 0,
char *  name = NULL
const [virtual]
 

Returns true if the tube is evaluable at the requested point, false otherwise.

Reimplemented from itk::SpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual bool itk::TubeSpatialObject< TDimension, TTubePointType >::IsInside const PointType point  )  const [virtual]
 

Test whether a point is inside or outside the object For computational speed purposes, it is faster if the method does not check the name of the class and the current depth

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::IsInside const PointType point,
unsigned int  depth,
char *  name
const [virtual]
 

Returns true if the point is inside the tube, false otherwise.

Reimplemented from itk::SpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
Pointer itk::TubeSpatialObject< TDimension, TTubePointType >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Method to print the object.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< TDimension >.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
unsigned int itk::TubeSpatialObject< TDimension, TTubePointType >::RemoveDuplicatePoints unsigned int  step = 1  ) 
 

Remove duplicate points

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::RemovePoint unsigned long  id  )  [inline, virtual]
 

Return a point in the list given the index

Definition at line 94 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::SetArtery bool  _arg  )  [virtual]
 

Set/Get a flag for vessel which are an Artery

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::SetEndType unsigned int  _arg  )  [virtual]
 

Set the type of tube end-type: 0 = flat, 1 = rounded

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::SetParentPoint int  _arg  )  [virtual]
 

Set/Get the parent point which corresponds to the position of the point in the parent's points list

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::SetPoint unsigned long  id,
const TubePointType pnt
[inline, virtual]
 

Return a point in the list given the index

Definition at line 90 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::SetPoints PointListType newPoints  )  [virtual]
 

Set the list of tube points.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::SetRoot bool  _arg  )  [virtual]
 

Set/Get a flag for vessel which are a "root" of a vascular network in the scene

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::ValueAt const PointType point,
double &  value,
unsigned int  depth = 0,
char *  name = NULL
const [virtual]
 

Returns the value of the tube at that point. Currently this function returns a binary value, but it might want to return a degree of membership in case of fuzzy tubes.

Reimplemented from itk::SpatialObject< TDimension >.


Member Data Documentation

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::m_Artery [protected]
 

Definition at line 167 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
unsigned int itk::TubeSpatialObject< TDimension, TTubePointType >::m_EndType [protected]
 

Definition at line 164 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
unsigned long itk::TubeSpatialObject< TDimension, TTubePointType >::m_IndexToWorldTransformMTime [mutable, protected]
 

Definition at line 177 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
unsigned long itk::TubeSpatialObject< TDimension, TTubePointType >::m_OldMTime [mutable, protected]
 

TimeStamps

Definition at line 176 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
int itk::TubeSpatialObject< TDimension, TTubePointType >::m_ParentPoint [protected]
 

Definition at line 163 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
PointListType itk::TubeSpatialObject< TDimension, TTubePointType >::m_Points [protected]
 

Definition at line 162 of file itkTubeSpatialObject.h.

template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint<TDimension>>
bool itk::TubeSpatialObject< TDimension, TTubePointType >::m_Root [protected]
 

Definition at line 166 of file itkTubeSpatialObject.h.


The documentation for this class was generated from the following file:
Generated at Thu May 25 02:32:11 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000