ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
itk::BlobSpatialObject< TDimension > Class Template Reference

Spatial object representing a potentially amorphous object. More...

#include <itkBlobSpatialObject.h>

Inheritance diagram for itk::BlobSpatialObject< TDimension >:
Collaboration diagram for itk::BlobSpatialObject< TDimension >:

List of all members.

Public Types

typedef SpatialObjectPoint
< TDimension > 
BlobPointType
typedef Superclass::BoundingBoxType BoundingBoxType
typedef SmartPointer< const SelfConstPointer
typedef SmartPointer
< PointContainerType
PointContainerPointer
typedef VectorContainer
< IdentifierType, PointType
PointContainerType
typedef SmartPointer< SelfPointer
typedef std::vector
< BlobPointType
PointListType
typedef Superclass::PointType PointType
typedef double ScalarType
typedef BlobSpatialObject Self
typedef
Superclass::SpatialObjectPointType 
SpatialObjectPointType
typedef
PointBasedSpatialObject
< TDimension > 
Superclass
typedef Superclass::TransformType TransformType

Public Member Functions

bool ComputeLocalBoundingBox () const
virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
SizeValueType GetNumberOfPoints (void) const
const SpatialObjectPointTypeGetPoint (IdentifierType id) const
SpatialObjectPointTypeGetPoint (IdentifierType id)
const PointListTypeGetPoints (void) const
PointListTypeGetPoints (void)
bool IsEvaluableAt (const PointType &point, unsigned int depth=0, char *name=NULL) const
bool IsInside (const PointType &point, unsigned int depth, char *name) const
bool IsInside (const PointType &point) const
void SetPoints (PointListType &newPoints)
bool ValueAt (const PointType &point, double &value, unsigned int depth=0, char *name=NULL) const

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 BlobSpatialObject (const Self &)
 BlobSpatialObject ()
void operator= (const Self &)
virtual void PrintSelf (std::ostream &os, Indent indent) const
virtual ~BlobSpatialObject ()

Protected Attributes

PointListType m_Points

Detailed Description

template<unsigned int TDimension = 3>
class itk::BlobSpatialObject< TDimension >

Spatial object representing a potentially amorphous object.

The BlobSpatialObject is a discretized representation of a ``blob'', which can be taken to be an arbitrary, possibly amorphous shape. The representation is a list of the points (voxel centers) contained in the object. This can be thought of as an alternate way to represent a binary image.

See also:
SpatialObjectPoint
Wiki Examples:

Definition at line 46 of file itkBlobSpatialObject.h.


Member Typedef Documentation

template<unsigned int TDimension = 3>
typedef SpatialObjectPoint< TDimension > itk::BlobSpatialObject< TDimension >::BlobPointType

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 56 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef Superclass::BoundingBoxType itk::BlobSpatialObject< TDimension >::BoundingBoxType

Reimplemented from itk::SpatialObject< TDimension >.

Definition at line 61 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef SmartPointer< const Self > itk::BlobSpatialObject< TDimension >::ConstPointer

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 54 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef SmartPointer< PointContainerType > itk::BlobSpatialObject< TDimension >::PointContainerPointer

Definition at line 63 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef VectorContainer< IdentifierType, PointType > itk::BlobSpatialObject< TDimension >::PointContainerType

Definition at line 62 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef SmartPointer< Self > itk::BlobSpatialObject< TDimension >::Pointer

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 53 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef std::vector< BlobPointType > itk::BlobSpatialObject< TDimension >::PointListType

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 57 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef Superclass::PointType itk::BlobSpatialObject< TDimension >::PointType

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 58 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef double itk::BlobSpatialObject< TDimension >::ScalarType

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 55 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef BlobSpatialObject itk::BlobSpatialObject< TDimension >::Self

Standard class typedefs.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 51 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef Superclass::SpatialObjectPointType itk::BlobSpatialObject< TDimension >::SpatialObjectPointType

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 59 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef PointBasedSpatialObject< TDimension > itk::BlobSpatialObject< TDimension >::Superclass

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 52 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
typedef Superclass::TransformType itk::BlobSpatialObject< TDimension >::TransformType

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

Definition at line 60 of file itkBlobSpatialObject.h.


Constructor & Destructor Documentation

template<unsigned int TDimension = 3>
itk::BlobSpatialObject< TDimension >::BlobSpatialObject ( const Self ) [protected]
template<unsigned int TDimension = 3>
itk::BlobSpatialObject< TDimension >::BlobSpatialObject ( ) [protected]
template<unsigned int TDimension = 3>
virtual itk::BlobSpatialObject< TDimension >::~BlobSpatialObject ( ) [protected, virtual]

Member Function Documentation

template<unsigned int TDimension = 3>
bool itk::BlobSpatialObject< TDimension >::ComputeLocalBoundingBox ( ) const [virtual]

Compute the boundaries of the Blob.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

template<unsigned int TDimension = 3>
virtual::itk::LightObject::Pointer itk::BlobSpatialObject< TDimension >::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::PolygonSpatialObject< TDimension >.

template<unsigned int TDimension = 3>
virtual const char* itk::BlobSpatialObject< TDimension >::GetNameOfClass ( ) const [virtual]

Method for creation through the object factory.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

template<unsigned int TDimension = 3>
SizeValueType itk::BlobSpatialObject< TDimension >::GetNumberOfPoints ( void  ) const [inline, virtual]

Return the number of points in the list

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 90 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
SpatialObjectPointType* itk::BlobSpatialObject< TDimension >::GetPoint ( IdentifierType  id) [inline, virtual]

Return a point in the list given the index

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 87 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
const SpatialObjectPointType* itk::BlobSpatialObject< TDimension >::GetPoint ( IdentifierType  id) const [inline, virtual]

Return a point in the list given the index

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Definition at line 81 of file itkBlobSpatialObject.h.

template<unsigned int TDimension = 3>
PointListType& itk::BlobSpatialObject< TDimension >::GetPoints ( void  )

Returns a reference to the list of the Blob points.

template<unsigned int TDimension = 3>
const PointListType& itk::BlobSpatialObject< TDimension >::GetPoints ( void  ) const

Returns a reference to the list of the Blob points.

template<unsigned int TDimension = 3>
bool itk::BlobSpatialObject< TDimension >::IsEvaluableAt ( const PointType point,
unsigned int  depth = 0,
char *  name = NULL 
) const

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

template<unsigned int TDimension = 3>
bool itk::BlobSpatialObject< TDimension >::IsInside ( const PointType point) const

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

Reimplemented in itk::PolygonSpatialObject< TDimension >.

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

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

Reimplemented in itk::PolygonSpatialObject< TDimension >.

template<unsigned int TDimension = 3>
static Pointer itk::BlobSpatialObject< TDimension >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

template<unsigned int TDimension = 3>
void itk::BlobSpatialObject< TDimension >::operator= ( const Self ) [protected]
template<unsigned int TDimension = 3>
virtual void itk::BlobSpatialObject< TDimension >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Method to print the object.

Reimplemented from itk::PointBasedSpatialObject< TDimension >.

Reimplemented in itk::PolygonSpatialObject< TDimension >.

template<unsigned int TDimension = 3>
void itk::BlobSpatialObject< TDimension >::SetPoints ( PointListType newPoints)

Set the list of Blob points.

template<unsigned int TDimension = 3>
bool itk::BlobSpatialObject< TDimension >::ValueAt ( const PointType point,
double &  value,
unsigned int  depth = 0,
char *  name = NULL 
) const

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


Member Data Documentation

template<unsigned int TDimension = 3>
PointListType itk::BlobSpatialObject< TDimension >::m_Points [protected]

Definition at line 120 of file itkBlobSpatialObject.h.


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