ITK  4.2.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Types | Static Private Member Functions | Private Attributes
itk::FlatStructuringElement< VDimension > Class Template Reference

#include <itkFlatStructuringElement.h>

+ Inheritance diagram for itk::FlatStructuringElement< VDimension >:
+ Collaboration diagram for itk::FlatStructuringElement< VDimension >:

List of all members.

Classes

struct  StructuringElementFacet

Public Types

typedef Superclass::ConstIterator ConstIterator
typedef std::vector< LTypeDecompType
typedef Superclass::Iterator Iterator
typedef Vector< float, VDimension > LType
typedef Superclass::OffsetType OffsetType
typedef Superclass::PixelType PixelType
typedef Superclass::RadiusType RadiusType
typedef FlatStructuringElement
< VDimension > 
Self
typedef Superclass::SizeType SizeType
typedef
Superclass::SliceIteratorType 
SliceIteratorType
typedef Neighborhood< bool,
VDimension > 
Superclass
- Public Types inherited from itk::Neighborhood< bool, VDimension >
typedef NeighborhoodAllocator
< bool > 
AllocatorType
typedef unsigned int DimensionValueType
typedef SizeValueType NeighborIndexType
typedef SizeType::SizeValueType SizeValueType

Public Member Functions

bool CheckParallel (LType NewVec) const
void ComputeBufferFromLines ()
 FlatStructuringElement ()
virtual ~FlatStructuringElement ()
bool GetDecomposable () const
void SetDecomposable (bool v)
const DecompTypeGetLines () const
void AddLine (LType l)
- Public Member Functions inherited from itk::Neighborhood< bool, VDimension >
NeighborIndexType GetCenterNeighborhoodIndex () const
bool GetCenterValue () const
virtual NeighborIndexType GetNeighborhoodIndex (const OffsetType &) const
OffsetType GetOffset (NeighborIndexType i) const
const SizeType GetRadius () const
SizeValueType GetRadius (DimensionValueType n) const
SizeValueType GetSize (DimensionValueType n) const
SizeType GetSize () const
std::slice GetSlice (unsigned int) const
OffsetValueType GetStride (DimensionValueType axis) const
 Neighborhood (const Self &other)
bool operator!= (const Self &other) const
Selfoperator= (const Self &other)
bool operator== (const Self &other) const
void Print (std::ostream &os) const
void SetRadius (const SizeType &)
void SetRadius (const SizeValueType *rad)
void SetRadius (const SizeValueType)
NeighborIndexType Size () const
virtual ~Neighborhood ()
 Neighborhood ()
Iterator End ()
ConstIterator End () const
Iterator Begin ()
ConstIterator Begin () const
bool & operator[] (NeighborIndexType i)
const bool & operator[] (NeighborIndexType i) const
bool & GetElement (NeighborIndexType i)
bool & operator[] (const OffsetType &o)
const bool & operator[] (const OffsetType &o) const
AllocatorTypeGetBufferReference ()
const AllocatorTypeGetBufferReference () const

Static Public Member Functions

static Self Annulus (RadiusType radius, unsigned int thickness=1, bool includeCenter=false)
static Self Ball (RadiusType radius)
static Self Box (RadiusType radius)
static Self Cross (RadiusType radius)
static Self Polygon (RadiusType radius, unsigned lines)

Static Public Attributes

static const unsigned int NeighborhoodDimension = VDimension
- Static Public Attributes inherited from itk::Neighborhood< bool, VDimension >

Protected Member Functions

void PrintSelf (std::ostream &os, Indent indent) const
- Protected Member Functions inherited from itk::Neighborhood< bool, VDimension >
virtual void Allocate (NeighborIndexType i)
virtual void ComputeNeighborhoodOffsetTable ()
virtual void ComputeNeighborhoodStrideTable ()
void SetSize ()

Private Types

typedef
StructuringElementFacet
< VDimension > 
FacetType
typedef
StructuringElementFacet< 3 > 
FacetType3
typedef Vector< float, 2 > LType2
typedef Vector< float, 3 > LType3

Static Private Member Functions

template<class TStructuringElement , class TRadius >
static void GeneratePolygon (TStructuringElement &res, TRadius radius, unsigned lines)
static void GeneratePolygon (itk::FlatStructuringElement< 2 > &res, itk::Size< 2 > radius, unsigned lines)
static void GeneratePolygon (itk::FlatStructuringElement< 3 > &res, itk::Size< 3 > radius, unsigned lines)

Private Attributes

bool m_Decomposable
DecompType m_Lines

Additional Inherited Members

- Public Attributes inherited from itk::Neighborhood< bool, VDimension >

Detailed Description

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

A class to support a variety of flat structuring elements, including versions created by decomposition of lines.

FlatStructuringElement provides several static methods, which can be used to create a structuring element with a particular shape, size, etc. Currently, those methods allow to create a ball, a box, a cross structuring element, and let create a structuring element based on an image.

Wiki Examples:

Definition at line 45 of file itkFlatStructuringElement.h.


Member Typedef Documentation

template<unsigned int VDimension>
typedef Superclass::ConstIterator itk::FlatStructuringElement< VDimension >::ConstIterator

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 59 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef std::vector< LType > itk::FlatStructuringElement< VDimension >::DecompType

Definition at line 75 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef StructuringElementFacet< VDimension > itk::FlatStructuringElement< VDimension >::FacetType
private

Definition at line 156 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef StructuringElementFacet< 3 > itk::FlatStructuringElement< VDimension >::FacetType3
private

Definition at line 166 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Superclass::Iterator itk::FlatStructuringElement< VDimension >::Iterator

Iterator typedef support. Note the naming is intentional, i.e., AllocatorType::iterator and AllocatorType::const_iterator, because the allocator may be a vnl object or other type, which uses this form.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 58 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Vector< float, VDimension > itk::FlatStructuringElement< VDimension >::LType

Definition at line 74 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Vector< float, 2 > itk::FlatStructuringElement< VDimension >::LType2
private

Definition at line 163 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Vector< float, 3 > itk::FlatStructuringElement< VDimension >::LType3
private

Definition at line 165 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Superclass::OffsetType itk::FlatStructuringElement< VDimension >::OffsetType

Offset type used to reference neighbor locations

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 63 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Superclass::PixelType itk::FlatStructuringElement< VDimension >::PixelType

External support for pixel type.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 53 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Superclass::RadiusType itk::FlatStructuringElement< VDimension >::RadiusType

Radius typedef support.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 66 of file itkFlatStructuringElement.h.

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

Standard class typedefs.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 49 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Superclass::SizeType itk::FlatStructuringElement< VDimension >::SizeType

Size and value typedef support.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 62 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Superclass::SliceIteratorType itk::FlatStructuringElement< VDimension >::SliceIteratorType

External slice iterator type typedef support.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 69 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
typedef Neighborhood< bool, VDimension > itk::FlatStructuringElement< VDimension >::Superclass

Definition at line 50 of file itkFlatStructuringElement.h.


Constructor & Destructor Documentation

template<unsigned int VDimension>
virtual itk::FlatStructuringElement< VDimension >::~FlatStructuringElement ( )
inlinevirtual

Default destructor.

Definition at line 78 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
itk::FlatStructuringElement< VDimension >::FlatStructuringElement ( )
inline

Default consructor.

Definition at line 81 of file itkFlatStructuringElement.h.


Member Function Documentation

template<unsigned int VDimension>
void itk::FlatStructuringElement< VDimension >::AddLine ( LType  l)
inline

Return the lines associated with the structuring element

Definition at line 129 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
static Self itk::FlatStructuringElement< VDimension >::Annulus ( RadiusType  radius,
unsigned int  thickness = 1,
bool  includeCenter = false 
)
static

Create an annulus structuring element

template<unsigned int VDimension>
static Self itk::FlatStructuringElement< VDimension >::Ball ( RadiusType  radius)
static

Create a ball structuring element

template<unsigned int VDimension>
static Self itk::FlatStructuringElement< VDimension >::Box ( RadiusType  radius)
static

Various constructors Create a box structuring element. The structuring element is is decomposable.

template<unsigned int VDimension>
bool itk::FlatStructuringElement< VDimension >::CheckParallel ( LType  NewVec) const
template<unsigned int VDimension>
void itk::FlatStructuringElement< VDimension >::ComputeBufferFromLines ( )

Fill the buffer of the structuring element based on the lines associated to the structuring element

template<unsigned int VDimension>
static Self itk::FlatStructuringElement< VDimension >::Cross ( RadiusType  radius)
static

Create a cross structuring element

template<unsigned int VDimension>
template<class TStructuringElement , class TRadius >
static void itk::FlatStructuringElement< VDimension >::GeneratePolygon ( TStructuringElement &  res,
TRadius  radius,
unsigned  lines 
)
staticprivate
template<unsigned int VDimension>
static void itk::FlatStructuringElement< VDimension >::GeneratePolygon ( itk::FlatStructuringElement< 2 > &  res,
itk::Size< 2 >  radius,
unsigned  lines 
)
staticprivate
template<unsigned int VDimension>
static void itk::FlatStructuringElement< VDimension >::GeneratePolygon ( itk::FlatStructuringElement< 3 > &  res,
itk::Size< 3 >  radius,
unsigned  lines 
)
staticprivate
template<unsigned int VDimension>
bool itk::FlatStructuringElement< VDimension >::GetDecomposable ( ) const
inline

Returns wether the structuring element is decomposable or not. If the structuring is decomposable, the set of lines associated with the structuring may be used by an algorithm instead of the standard buffer.

Definition at line 114 of file itkFlatStructuringElement.h.

Referenced by itk::KernelImageFilter< TImage, TImage, TKernel >::MakeKernel().

template<unsigned int VDimension>
const DecompType& itk::FlatStructuringElement< VDimension >::GetLines ( ) const
inline

Return the lines associated with the structuring element

Definition at line 125 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
static Self itk::FlatStructuringElement< VDimension >::Polygon ( RadiusType  radius,
unsigned  lines 
)
static

Create a polygon structuring element. The structuring element is is decomposable. lines is the number of elements in the decomposition

template<unsigned int VDimension>
void itk::FlatStructuringElement< VDimension >::PrintSelf ( std::ostream &  ,
Indent   
) const
protectedvirtual

Standard itk object method.

Reimplemented from itk::Neighborhood< bool, VDimension >.

template<unsigned int VDimension>
void itk::FlatStructuringElement< VDimension >::SetDecomposable ( bool  v)
inline

Returns wether the structuring element is decomposable or not. If the structuring is decomposable, the set of lines associated with the structuring may be used by an algorithm instead of the standard buffer.

Definition at line 118 of file itkFlatStructuringElement.h.


Member Data Documentation

template<unsigned int VDimension>
bool itk::FlatStructuringElement< VDimension >::m_Decomposable
private

Definition at line 148 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
DecompType itk::FlatStructuringElement< VDimension >::m_Lines
private

Definition at line 150 of file itkFlatStructuringElement.h.

template<unsigned int VDimension>
const unsigned int itk::FlatStructuringElement< VDimension >::NeighborhoodDimension = VDimension
static

External support for dimensionality.

Reimplemented from itk::Neighborhood< bool, VDimension >.

Definition at line 72 of file itkFlatStructuringElement.h.


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