18#ifndef itkChainCodePath2D_h
19#define itkChainCodePath2D_h
110 return m_Chain2D.size();
117 m_Chain2D.insert(m_Chain2D.begin() + position, encodedStep);
125 m_Chain2D.insert(m_Chain2D.begin() + position, EncodeOffset(step));
133 m_Chain2D[position] = encodedStep;
141 m_Chain2D[position] = EncodeOffset(step);
167 return m_FreemanCode[step[0] + 1][step[1] + 1];
173 return m_ReverseFreemanCode[encodedStep];
186 int m_FreemanCode[3][3]{};
Represent a 2D path as a sequence of connected image index offsets.
Superclass::ChainCodeSizeType ChainCodeSizeType
std::vector< int > ChainCode2DType
void ChangeStep(InputType position, int encodedStep)
OffsetType DecodeOffset(int encodedStep) const
void ChangeStep(InputType position, OffsetType step) override
OffsetType IncrementInput(InputType &input) const override
Superclass::InputType InputType
std::string GetChainCodeAsString() const
Superclass::ChainCodeType ChainCodeType
Superclass::OutputType OutputType
void InsertStep(InputType position, int encodedStep)
~ChainCodePath2D() override
int EncodeOffset(OffsetType step) const
ChainCodeSizeType NumberOfSteps() const override
void InsertStep(InputType position, OffsetType step) override
IndexType EvaluateToIndex(const InputType &input) const override
void PrintSelf(std::ostream &os, Indent indent) const override
OutputType Evaluate(const InputType &input) const override
Represent a path as a sequence of connected image index offsets.
Base class for all data objects in ITK.
Control indentation during Print() invocation.
Base class for most ITK classes.
constexpr unsigned int Dimension
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....