ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
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 >:
Collaboration diagram for itk::TubeSpatialObject< TDimension, TTubePointType >:

List of all members.

Public Types

typedef Superclass::BoundingBoxType BoundingBoxType
typedef SmartPointer< const SelfConstPointer
typedef
Superclass::CovariantVectorType 
CovariantVectorType
typedef SmartPointer
< PointContainerType
PointContainerPointer
typedef VectorContainer
< IdentifierType, PointType
PointContainerType
typedef SmartPointer< SelfPointer
typedef PointListTypePointListPointer
typedef std::vector
< TubePointType
PointListType
typedef Superclass::PointType PointType
typedef double ScalarType
typedef TubeSpatialObject Self
typedef
Superclass::SpatialObjectPointType 
SpatialObjectPointType
typedef
PointBasedSpatialObject
< TDimension > 
Superclass
typedef Superclass::TransformType TransformType
typedef TTubePointType TubePointType
typedef Superclass::VectorType VectorType

Public Member Functions

void Clear (void)
bool ComputeLocalBoundingBox () const
bool ComputeTangentAndNormals (void)
void CopyInformation (const DataObject *data)
virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
virtual SizeValueType GetNumberOfPoints (void) const
virtual const
SpatialObjectPointType
GetPoint (IdentifierType ind) const
virtual SpatialObjectPointTypeGetPoint (IdentifierType ind)
virtual const PointListTypeGetPoints (void) const
virtual PointListTypeGetPoints (void)
bool IsEvaluableAt (const PointType &point, unsigned int depth=0, char *name=NULL) const
virtual bool IsInside (const PointType &point) const
bool IsInside (const PointType &point, unsigned int depth, char *name) const
unsigned int RemoveDuplicatePoints (unsigned int step=1)
virtual void RemovePoint (IdentifierType ind)
virtual void SetPoint (IdentifierType ind, const TubePointType &pnt)
virtual void SetPoints (PointListType &newPoints)
bool ValueAt (const PointType &point, double &value, unsigned int depth=0, char *name=NULL) const
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

static Pointer New ()

Protected Member Functions

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

Protected Attributes

bool m_Artery
unsigned int m_EndType
int m_ParentPoint
PointListType m_Points
bool m_Root
unsigned long m_OldMTime
unsigned long m_IndexToWorldTransformMTime
 TubeSpatialObject (const Self &)
void operator= (const Self &)

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
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
typedef SmartPointer< const Self > itk::TubeSpatialObject< TDimension, TTubePointType >::ConstPointer
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
typedef Superclass::CovariantVectorType itk::TubeSpatialObject< TDimension, TTubePointType >::CovariantVectorType
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
typedef SmartPointer< PointContainerType > itk::TubeSpatialObject< TDimension, TTubePointType >::PointContainerPointer
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
typedef VectorContainer< IdentifierType, PointType > itk::TubeSpatialObject< TDimension, TTubePointType >::PointContainerType
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
typedef SmartPointer< Self > itk::TubeSpatialObject< TDimension, TTubePointType >::Pointer
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
typedef PointListType* itk::TubeSpatialObject< TDimension, TTubePointType >::PointListPointer

Definition at line 55 of file itkTubeSpatialObject.h.

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

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 52 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 48 of file itkTubeSpatialObject.h.

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

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]
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
itk::TubeSpatialObject< TDimension, TTubePointType >::TubeSpatialObject ( const Self ) [private]

TimeStamps


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::itk::LightObject::Pointer itk::TubeSpatialObject< TDimension, TTubePointType >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::DTITubeSpatialObject< TDimension >, and itk::VesselTubeSpatialObject< 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 SizeValueType 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 97 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 ( IdentifierType  ind) [inline, virtual]

Return a point in the list given the index

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 85 of file itkTubeSpatialObject.h.

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

Return a point in the list given the index.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 81 of file itkTubeSpatialObject.h.

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 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 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

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

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

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

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 >>
static 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 >>
void itk::TubeSpatialObject< TDimension, TTubePointType >::operator= ( const Self ) [private]
template<unsigned int TDimension = 3, typename TTubePointType = TubeSpatialObjectPoint< TDimension >>
virtual void itk::TubeSpatialObject< TDimension, TTubePointType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]
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 ( IdentifierType  ind) [inline, virtual]

Remove a point in the list given the index

Definition at line 93 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 ( IdentifierType  ind,
const TubePointType pnt 
) [inline, virtual]

Set a point in the list at the specified index

Definition at line 89 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

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.


Member Data Documentation

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

Definition at line 166 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 163 of file itkTubeSpatialObject.h.

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

TimeStamps

Definition at line 176 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 175 of file itkTubeSpatialObject.h.

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

Definition at line 161 of file itkTubeSpatialObject.h.

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

Definition at line 159 of file itkTubeSpatialObject.h.

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

Definition at line 165 of file itkTubeSpatialObject.h.


The documentation for this class was generated from the following file: