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

itk::ChainCodePath2D Class Reference
[Path Representation Objects]

Represent a 2D path as a sequence of connected image index offsets. More...

#include <itkChainCodePath2D.h>

Inheritance diagram for itk::ChainCodePath2D:

Inheritance graph
[legend]
Collaboration diagram for itk::ChainCodePath2D:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ChainCodePath2D Self
typedef ChainCodePath< 2 > Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::OutputType OutputType
typedef Superclass::InputType InputType
typedef OutputType OffsetType
typedef Index< 2 > IndexType
typedef std::vector< OffsetTypeChainCodeType
typedef std::vector< int > ChainCode2DType

Public Member Functions

 itkStaticConstMacro (Dimension, unsigned int, 2)
virtual const char * GetNameOfClass () const
virtual OutputType Evaluate (const InputType &input) const
virtual IndexType EvaluateToIndex (const InputType &input) const
virtual OffsetType IncrementInput (InputType &input) const
unsigned int NumberOfSteps () const
std::string GetChainCodeAsString (void) const
void InsertStep (InputType position, int encodedStep)
void InsertStep (InputType position, OffsetType step)
void ChangeStep (InputType position, int encodedStep)
void ChangeStep (InputType position, OffsetType step)
virtual void Clear ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

 ChainCodePath2D ()
 ~ChainCodePath2D ()
void PrintSelf (std::ostream &os, Indent indent) const
int EncodeOffset (OffsetType step) const
OffsetType DecodeOffset (int encodedStep) const

Detailed Description

Represent a 2D path as a sequence of connected image index offsets.

This class is intended to represent sequences of connected indices in a 2D image plane. It does so by storing the offset of each index from its immediately preceeding, connected, index using a standard Freeman code (1=up, 2=up to the right, and so on proceeding clockwise to 8=up to the left). The only image index stored directly is that of the first index. ChainCodePath2D maps a 1D integer input (step number) to a 2D interger output (either an offset or an image index, depending on whether Evaluate or EvaluateToIndex is called).

See also:
ChainCodePath

ParametricPath

Path

Index

Definition at line 50 of file itkChainCodePath2D.h.


Member Typedef Documentation

typedef std::vector<int> itk::ChainCodePath2D::ChainCode2DType
 

ChainCodePath2D stores its data as a Freeman-encoded chain code

Definition at line 80 of file itkChainCodePath2D.h.

Referenced by DecodeOffset().

typedef std::vector<OffsetType> itk::ChainCodePath2D::ChainCodeType
 

ChainCodeType is a usless relic of the parent class

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 77 of file itkChainCodePath2D.h.

typedef SmartPointer<const Self> itk::ChainCodePath2D::ConstPointer
 

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 62 of file itkChainCodePath2D.h.

typedef Index<2> itk::ChainCodePath2D::IndexType
 

All paths must be mapable to index space

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 74 of file itkChainCodePath2D.h.

typedef Superclass::InputType itk::ChainCodePath2D::InputType
 

Input type

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 70 of file itkChainCodePath2D.h.

Referenced by NumberOfSteps().

typedef OutputType itk::ChainCodePath2D::OffsetType
 

The output type of this function is an Index

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 73 of file itkChainCodePath2D.h.

Referenced by DecodeOffset(), and EncodeOffset().

typedef Superclass::OutputType itk::ChainCodePath2D::OutputType
 

OutputType typedef support.

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 69 of file itkChainCodePath2D.h.

typedef SmartPointer<Self> itk::ChainCodePath2D::Pointer
 

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 61 of file itkChainCodePath2D.h.

typedef ChainCodePath2D itk::ChainCodePath2D::Self
 

Standard class typedefs.

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 58 of file itkChainCodePath2D.h.

Referenced by DecodeOffset().

typedef ChainCodePath<2> itk::ChainCodePath2D::Superclass
 

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 59 of file itkChainCodePath2D.h.


Constructor & Destructor Documentation

itk::ChainCodePath2D::ChainCodePath2D  )  [protected]
 

itk::ChainCodePath2D::~ChainCodePath2D  )  [protected]
 


Member Function Documentation

void itk::ChainCodePath2D::ChangeStep InputType  position,
OffsetType  step
[inline, virtual]
 

Change the direction of a step in the chaincode

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 129 of file itkChainCodePath2D.h.

void itk::ChainCodePath2D::ChangeStep InputType  position,
int  encodedStep
[inline]
 

Change the direction of a step in the chaincode

Definition at line 124 of file itkChainCodePath2D.h.

virtual void itk::ChainCodePath2D::Clear  )  [inline, virtual]
 

Remove all steps from the chain code

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 137 of file itkChainCodePath2D.h.

OffsetType itk::ChainCodePath2D::DecodeOffset int  encodedStep  )  const [inline, protected]
 

Encode and Decode between an offset and a Freeman code

Definition at line 158 of file itkChainCodePath2D.h.

References ChainCode2DType, OffsetType, and Self.

int itk::ChainCodePath2D::EncodeOffset OffsetType  step  )  const [inline, protected]
 

Encode and Decode between an offset and a Freeman code

Definition at line 154 of file itkChainCodePath2D.h.

References OffsetType.

virtual OutputType itk::ChainCodePath2D::Evaluate const InputType input  )  const [virtual]
 

Evaluate the chaincode for the offset at the specified path-position.

Reimplemented from itk::ChainCodePath< 2 >.

virtual IndexType itk::ChainCodePath2D::EvaluateToIndex const InputType input  )  const [virtual]
 

Like Evaluate(), but returns the index at the specified path-position.

Reimplemented from itk::ChainCodePath< 2 >.

std::string itk::ChainCodePath2D::GetChainCodeAsString void   )  const
 

virtual const char* itk::ChainCodePath2D::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ChainCodePath< 2 >.

virtual OffsetType itk::ChainCodePath2D::IncrementInput InputType input  )  const [virtual]
 

Increment the input variable passed by reference and return the offset stored at the previous path-position. If the chaincode is unable to be incremented, input is not changed and an offset of zero is returned, which may be used to check for the end of the chain code.

Reimplemented from itk::ChainCodePath< 2 >.

void itk::ChainCodePath2D::InsertStep InputType  position,
OffsetType  step
[inline, virtual]
 

Insert a new step into the chaincode at a specified position

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 115 of file itkChainCodePath2D.h.

void itk::ChainCodePath2D::InsertStep InputType  position,
int  encodedStep
[inline]
 

Insert a new step into the chaincode at a specified position

Definition at line 110 of file itkChainCodePath2D.h.

itk::ChainCodePath2D::itkStaticConstMacro Dimension  ,
unsigned  int,
 

Dimension underlying input image.

Pointer itk::ChainCodePath2D::New  )  [static]
 

New() method for dynamic construction

Reimplemented from itk::ChainCodePath< 2 >.

unsigned int itk::ChainCodePath2D::NumberOfSteps  )  const [inline, virtual]
 

How many steps in the chaincode?

Reimplemented from itk::ChainCodePath< 2 >.

Definition at line 106 of file itkChainCodePath2D.h.

References InputType.

void itk::ChainCodePath2D::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::ChainCodePath< 2 >.


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