ITK
4.6.0
Insight Segmentation and Registration Toolkit
|
#include <itkChainCodePath2D.h>
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 preceding, 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 thatof the first index. ChainCodePath2D maps a 1D integer input (step number) to a 2D integer output (either an offset or an image index, depending on whether Evaluate or EvaluateToIndex is called).
Definition at line 50 of file itkChainCodePath2D.h.
Public Types | |
typedef std::vector< int > | ChainCode2DType |
typedef Superclass::ChainCodeSizeType | ChainCodeSizeType |
typedef Superclass::ChainCodeType | ChainCodeType |
typedef SmartPointer< const Self > | ConstPointer |
typedef Index< 2 > | IndexType |
typedef Superclass::InputType | InputType |
typedef OutputType | OffsetType |
typedef Superclass::OutputType | OutputType |
typedef SmartPointer< Self > | Pointer |
typedef ChainCodePath2D | Self |
typedef ChainCodePath< 2 > | Superclass |
Public Types inherited from itk::ChainCodePath< 2 > | |
typedef ChainCodeType::size_type | ChainCodeSizeType |
typedef std::vector< OffsetType > | ChainCodeType |
typedef SmartPointer< const Self > | ConstPointer |
typedef Index< VDimension > | IndexType |
typedef Superclass::InputType | InputType |
typedef OutputType | OffsetType |
typedef Superclass::OutputType | OutputType |
typedef SmartPointer< Self > | Pointer |
typedef ChainCodePath< VDimension > | Self |
typedef Path< unsigned int, Offset< VDimension > , VDimension > | Superclass |
Public Types inherited from itk::Path< unsigned int, Offset< VDimension >, VDimension > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Index< VDimension > | IndexType |
typedef unsigned int | InputType |
typedef Offset< VDimension > | OffsetType |
typedef Offset< VDimension > | OutputType |
typedef SmartPointer< Self > | Pointer |
typedef Path | Self |
typedef DataObject | Superclass |
Public Types inherited from itk::DataObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef std::string | DataObjectIdentifierType |
typedef std::vector< Pointer > ::size_type | DataObjectPointerArraySizeType |
typedef SmartPointer< Self > | Pointer |
typedef DataObject | Self |
typedef Object | Superclass |
Public Types inherited from itk::Object | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef Object | Self |
typedef LightObject | Superclass |
Public Types inherited from itk::LightObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef LightObject | Self |
Public Member Functions | |
virtual void | ChangeStep (InputType position, OffsetType step) ITK_OVERRIDE |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual OutputType | Evaluate (const InputType &input) const ITK_OVERRIDE |
virtual IndexType | EvaluateToIndex (const InputType &input) const ITK_OVERRIDE |
std::string | GetChainCodeAsString (void) const |
virtual const char * | GetNameOfClass () const |
virtual OffsetType | IncrementInput (InputType &input) const ITK_OVERRIDE |
virtual void | InsertStep (InputType position, OffsetType step) ITK_OVERRIDE |
virtual ChainCodeSizeType | NumberOfSteps () const ITK_OVERRIDE |
void | InsertStep (InputType position, int encodedStep) |
void | ChangeStep (InputType position, int encodedStep) |
virtual void | Clear () ITK_OVERRIDE |
Public Member Functions inherited from itk::ChainCodePath< 2 > | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual InputType | EndOfInput () const |
virtual void | SetStart (IndexType _arg) |
virtual const IndexType & | GetStart () const |
virtual void | Initialize (void) |
Public Member Functions inherited from itk::Path< unsigned int, Offset< VDimension >, VDimension > | |
virtual OutputType | Evaluate (const InputType &input) const =0 |
virtual IndexType | EvaluateToIndex (const InputType &input) const =0 |
virtual OffsetType | IncrementInput (InputType &input) const =0 |
virtual InputType | StartOfInput () const |
Public Member Functions inherited from itk::DataObject | |
virtual void | CopyInformation (const DataObject *) |
virtual void | DataHasBeenGenerated () |
void | DisconnectPipeline () |
bool | GetDataReleased () const |
virtual const bool & | GetReleaseDataFlag () const |
SmartPointerForwardReference < ProcessObject > | GetSource () const |
DataObjectPointerArraySizeType | GetSourceOutputIndex () const |
const DataObjectIdentifierType & | GetSourceOutputName () const |
virtual ModifiedTimeType | GetUpdateMTime () const |
virtual void | Graft (const DataObject *) |
virtual void | PrepareForNewData () |
virtual void | PropagateRequestedRegion () |
void | ReleaseData () |
virtual void | ReleaseDataFlagOff () |
virtual void | ReleaseDataFlagOn () |
virtual bool | RequestedRegionIsOutsideOfTheBufferedRegion () |
virtual void | ResetPipeline () |
void | SetReleaseDataFlag (bool flag) |
virtual void | SetRequestedRegion (const DataObject *) |
virtual void | SetRequestedRegionToLargestPossibleRegion () |
bool | ShouldIReleaseData () const |
virtual void | Update () |
virtual void | UpdateOutputData () |
virtual void | UpdateOutputInformation () |
virtual bool | VerifyRequestedRegion () |
void | SetPipelineMTime (ModifiedTimeType time) |
virtual const ModifiedTimeType & | GetPipelineMTime () const |
virtual void | SetRealTimeStamp (RealTimeStamp _arg) |
virtual const RealTimeStamp & | GetRealTimeStamp () const |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *) |
unsigned long | AddObserver (const EventObject &event, Command *) const |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary (void) |
const MetaDataDictionary & | GetMetaDataDictionary (void) const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
virtual void | Register () const ITK_OVERRIDE |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) |
void | SetDebug (bool debugFlag) const |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
virtual void | SetReferenceCount (int) ITK_OVERRIDE |
virtual void | UnRegister () const ITK_OVERRIDE |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ChainCodePath< 2 > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::DataObject | |
static bool | GetGlobalReleaseDataFlag () |
static void | GlobalReleaseDataFlagOff () |
static void | GlobalReleaseDataFlagOn () |
static void | SetGlobalReleaseDataFlag (bool val) |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | Dimension = 2 |
Static Public Attributes inherited from itk::ChainCodePath< 2 > | |
static const unsigned int | Dimension |
Static Public Attributes inherited from itk::Path< unsigned int, Offset< VDimension >, VDimension > | |
static const unsigned int | PathDimension |
Protected Member Functions | |
ChainCodePath2D () | |
OffsetType | DecodeOffset (int encodedStep) const |
int | EncodeOffset (OffsetType step) const |
virtual void | PrintSelf (std::ostream &os, Indent indent) const ITK_OVERRIDE |
~ChainCodePath2D () | |
Protected Member Functions inherited from itk::ChainCodePath< 2 > | |
ChainCodePath () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
~ChainCodePath () | |
Protected Member Functions inherited from itk::Path< unsigned int, Offset< VDimension >, VDimension > | |
virtual IndexType | GetZeroIndex () const |
virtual OffsetType | GetZeroOffset () const |
Path () | |
~Path () | |
Protected Member Functions inherited from itk::DataObject | |
DataObject () | |
virtual void | PropagateResetPipeline () |
~DataObject () | |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &time) |
virtual | ~Object () |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Private Member Functions | |
ChainCodePath2D (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
ChainCode2DType | m_Chain2D |
int | m_FreemanCode [3][3] |
OffsetType | m_ReverseFreemanCode [9] |
Additional Inherited Members | |
Protected Types inherited from itk::LightObject | |
typedef int | InternalReferenceCountType |
Protected Attributes inherited from itk::LightObject | |
InternalReferenceCountType | m_ReferenceCount |
SimpleFastMutexLock | m_ReferenceCountLock |
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.
typedef Superclass::ChainCodeSizeType itk::ChainCodePath2D::ChainCodeSizeType |
Definition at line 77 of file itkChainCodePath2D.h.
typedef Superclass::ChainCodeType itk::ChainCodePath2D::ChainCodeType |
ChainCodeType is a usless relic of the parent class
Definition at line 76 of file itkChainCodePath2D.h.
typedef SmartPointer< const Self > itk::ChainCodePath2D::ConstPointer |
Definition at line 62 of file itkChainCodePath2D.h.
typedef Index< 2 > itk::ChainCodePath2D::IndexType |
Definition at line 73 of file itkChainCodePath2D.h.
typedef Superclass::InputType itk::ChainCodePath2D::InputType |
Definition at line 69 of file itkChainCodePath2D.h.
The output type of this function is an Index
Definition at line 72 of file itkChainCodePath2D.h.
typedef Superclass::OutputType itk::ChainCodePath2D::OutputType |
OutputType typedef support.
Definition at line 65 of file itkChainCodePath2D.h.
typedef SmartPointer< Self > itk::ChainCodePath2D::Pointer |
Definition at line 61 of file itkChainCodePath2D.h.
Standard class typedefs.
Definition at line 58 of file itkChainCodePath2D.h.
typedef ChainCodePath< 2 > itk::ChainCodePath2D::Superclass |
Definition at line 59 of file itkChainCodePath2D.h.
|
protected |
|
protected |
|
private |
|
inline |
Change the direction of a step in the chaincode
Definition at line 119 of file itkChainCodePath2D.h.
References m_Chain2D, and itk::Object::Modified().
|
inlinevirtual |
Change the direction of a step in the chaincode
Reimplemented from itk::ChainCodePath< 2 >.
Definition at line 126 of file itkChainCodePath2D.h.
References EncodeOffset(), m_Chain2D, and itk::Object::Modified().
|
inlinevirtual |
Remove all steps from the chain code
Reimplemented from itk::ChainCodePath< 2 >.
Definition at line 133 of file itkChainCodePath2D.h.
References m_Chain2D, and itk::Object::Modified().
|
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.
|
inlineprotected |
Definition at line 153 of file itkChainCodePath2D.h.
References m_ReverseFreemanCode.
|
inlineprotected |
Encode and Decode between an offset and a Freeman code
Definition at line 148 of file itkChainCodePath2D.h.
References m_FreemanCode.
Referenced by ChangeStep(), and InsertStep().
|
virtual |
Evaluate the chaincode for the offset at the specified path-position.
Reimplemented from itk::ChainCodePath< 2 >.
Like Evaluate(), but returns the index at the specified path-position.
Reimplemented from itk::ChainCodePath< 2 >.
std::string itk::ChainCodePath2D::GetChainCodeAsString | ( | void | ) | const |
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ChainCodePath< 2 >.
|
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 >.
|
inline |
Insert a new step into the chaincode at a specified position
Definition at line 105 of file itkChainCodePath2D.h.
References m_Chain2D, and itk::Object::Modified().
|
inlinevirtual |
Insert a new step into the chaincode at a specified position
Reimplemented from itk::ChainCodePath< 2 >.
Definition at line 112 of file itkChainCodePath2D.h.
References EncodeOffset(), m_Chain2D, and itk::Object::Modified().
|
inlinevirtual |
How many steps in the chaincode?
Reimplemented from itk::ChainCodePath< 2 >.
Definition at line 102 of file itkChainCodePath2D.h.
References m_Chain2D.
|
private |
|
protectedvirtual |
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::Path< unsigned int, Offset< VDimension >, VDimension >.
|
static |
Dimension underlying input image.
Definition at line 55 of file itkChainCodePath2D.h.
|
private |
Definition at line 162 of file itkChainCodePath2D.h.
Referenced by ChangeStep(), Clear(), InsertStep(), and NumberOfSteps().
|
private |
Definition at line 171 of file itkChainCodePath2D.h.
Referenced by EncodeOffset().
|
private |
Definition at line 175 of file itkChainCodePath2D.h.
Referenced by DecodeOffset().