ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
itk::PolyLineParametricPath< VDimension > Class Template Reference

Represent a path of line segments through ND Space. More...

#include <itkPolyLineParametricPath.h>

Inheritance diagram for itk::PolyLineParametricPath< VDimension >:
Collaboration diagram for itk::PolyLineParametricPath< VDimension >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef ContinuousIndex
< double, VDimension > 
ContinuousIndexType
typedef Index< VDimension > IndexType
typedef Superclass::InputType InputType
typedef Offset< VDimension > OffsetType
typedef Superclass::OutputType OutputType
typedef SmartPointer< SelfPointer
typedef Point< double, VDimension > PointType
typedef PolyLineParametricPath Self
typedef ParametricPath
< VDimension > 
Superclass
typedef Vector< double,
VDimension > 
VectorType
typedef VertexListType::Pointer VertexListPointer
typedef VectorContainer
< unsigned, VertexType
VertexListType
typedef ContinuousIndexType VertexType

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual InputType EndOfInput () const
virtual OutputType Evaluate (const InputType &input) const
virtual const char * GetNameOfClass () const
virtual void Initialize (void)
void AddVertex (const ContinuousIndexType &vertex)

Static Public Member Functions

static Pointer New ()

Private Member Functions

void operator= (const Self &)
 PolyLineParametricPath (const Self &)

Private Attributes

VertexListPointer m_VertexList
virtual const VertexListTypeGetVertexList ()
 PolyLineParametricPath ()
 ~PolyLineParametricPath ()
void PrintSelf (std::ostream &os, Indent indent) const

Detailed Description

template<unsigned int VDimension>
class itk::PolyLineParametricPath< VDimension >

Represent a path of line segments through ND Space.

This class is intended to represent parametric paths through an image, where the paths are composed of line segments. Each line segment traverses one unit of input. A classic application of this class is the representation of contours in 2D images, especially when the contours only need to be approximately correct. Another use of a path is to guide the movement of an iterator through an image.

See also:
EllipseParametricPath
FourierSeriesPath
OrthogonallyCorrectedParametricPath
ParametricPath
ChainCodePath
Path
ContinuousIndex
Index
Offset
Vector
Wiki Examples:
Examples:

itkOrthogonalSwath2DPathFilterTest.cxx.

Definition at line 56 of file itkPolyLineParametricPath.h.


Member Typedef Documentation

template<unsigned int VDimension>
typedef SmartPointer< const Self > itk::PolyLineParametricPath< VDimension >::ConstPointer

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 64 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef ContinuousIndex< double, VDimension > itk::PolyLineParametricPath< VDimension >::ContinuousIndexType

Basic data-structure types used

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 76 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef Index< VDimension > itk::PolyLineParametricPath< VDimension >::IndexType

All paths must be mapable to index space

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 77 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef Superclass::InputType itk::PolyLineParametricPath< VDimension >::InputType

Input type

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 67 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef Offset< VDimension > itk::PolyLineParametricPath< VDimension >::OffsetType

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 78 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef Superclass::OutputType itk::PolyLineParametricPath< VDimension >::OutputType

Output type

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 73 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef SmartPointer< Self > itk::PolyLineParametricPath< VDimension >::Pointer

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 63 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef Point< double, VDimension > itk::PolyLineParametricPath< VDimension >::PointType

Definition at line 79 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef PolyLineParametricPath itk::PolyLineParametricPath< VDimension >::Self

Standard class typedefs.

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 61 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef ParametricPath< VDimension > itk::PolyLineParametricPath< VDimension >::Superclass

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 62 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef Vector< double, VDimension > itk::PolyLineParametricPath< VDimension >::VectorType

Reimplemented from itk::ParametricPath< VDimension >.

Definition at line 80 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef VertexListType::Pointer itk::PolyLineParametricPath< VDimension >::VertexListPointer

Definition at line 83 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef VectorContainer< unsigned, VertexType > itk::PolyLineParametricPath< VDimension >::VertexListType

Definition at line 82 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
typedef ContinuousIndexType itk::PolyLineParametricPath< VDimension >::VertexType

Definition at line 81 of file itkPolyLineParametricPath.h.


Constructor & Destructor Documentation

template<unsigned int VDimension>
itk::PolyLineParametricPath< VDimension >::PolyLineParametricPath ( ) [protected]

Return the container of Vertices as a const object.

template<unsigned int VDimension>
itk::PolyLineParametricPath< VDimension >::~PolyLineParametricPath ( ) [inline, protected]

Return the container of Vertices as a const object.

Definition at line 124 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
itk::PolyLineParametricPath< VDimension >::PolyLineParametricPath ( const Self ) [private]

Member Function Documentation

template<unsigned int VDimension>
void itk::PolyLineParametricPath< VDimension >::AddVertex ( const ContinuousIndexType vertex) [inline]

Evaluate the first derivative of the ND output with respect to the 1D input. This is an exact, algebraic function. Add a vertex (and a connecting line segment to the previous vertex). Adding a vertex has the additional effect of extending the domain of the PolyLineParametricPath by 1.0 (each pair of consecutive verticies is seperated by one unit of input).

Definition at line 96 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
virtual::itk::LightObject::Pointer itk::PolyLineParametricPath< VDimension >::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::Object.

template<unsigned int VDimension>
virtual InputType itk::PolyLineParametricPath< VDimension >::EndOfInput ( ) const [inline, virtual]

Where does the path end? This value is necessary for IncrementInput() to know how to go to the end of a path. Since each line segment covers one unit of input, this is the number of verticies - 1.

Reimplemented from itk::Path< double, ContinuousIndex< double, VDimension >, VDimension >.

Definition at line 106 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
virtual OutputType itk::PolyLineParametricPath< VDimension >::Evaluate ( const InputType input) const [virtual]

Return the location of the parametric path at the specified location.

template<unsigned int VDimension>
virtual const char* itk::PolyLineParametricPath< VDimension >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::ParametricPath< VDimension >.

template<unsigned int VDimension>
virtual const VertexListType* itk::PolyLineParametricPath< VDimension >::GetVertexList ( ) [virtual]

Return the container of Vertices as a const object.

template<unsigned int VDimension>
virtual void itk::PolyLineParametricPath< VDimension >::Initialize ( void  ) [inline, virtual]

Needed for Pipelining

Reimplemented from itk::DataObject.

Definition at line 115 of file itkPolyLineParametricPath.h.

template<unsigned int VDimension>
static Pointer itk::PolyLineParametricPath< VDimension >::New ( ) [static]

New() method for dynamic construction

Reimplemented from itk::Object.

template<unsigned int VDimension>
void itk::PolyLineParametricPath< VDimension >::operator= ( const Self ) [private]

Default 1D input increment amount to trace along the path. Also, the value used by the defualt implementation of EvaluateDerivative() for numerically approximating the derivative with the change over a single default-sized step. (NOTE that the default implementation of EvaluateDerivative() should never be used in practice, but users or lazzy developers may nevertheless unwisely choose to do so anyway.) For integer- input-types, 1 is probably the correct value. For double-input-types, either 1 or 0.1 are probably good values. This value should be set in the constructor of all instantiable children. Values set in child constructors overwrite values set in parent constructors.

Reimplemented from itk::ParametricPath< VDimension >.

template<unsigned int VDimension>
void itk::PolyLineParametricPath< VDimension >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Return the container of Vertices as a const object.

Reimplemented from itk::ParametricPath< VDimension >.


Member Data Documentation

template<unsigned int VDimension>
VertexListPointer itk::PolyLineParametricPath< VDimension >::m_VertexList [private]

Definition at line 132 of file itkPolyLineParametricPath.h.


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