A.I.M.S


structuring_element.h File Reference
#include <aims/vector/vector.h>
#include <cartobase/smart/rcptr.h>
#include <cartobase/smart/refwrapper.h>
#include <string>
#include <vector>
#include <set>
#include <map>
Include dependency graph for structuring_element.h:

Go to the source code of this file.

Classes

class  carto::Volume< T >
 
class  aims::StructuringElement
 aims::StructuringElement class representing a 3D structuring element. More...
 
class  aims::StructuredVolume< T >
 Class giving access to an iterator over the voxels of a volume inside of a structuring element. More...
 
class  aims::StructuredConstVolume< T >
 
class  aims::StructuringElementRef
 Convenient handle for a StructuringElement. More...
 
class  aims::strel::Shape
 aims::strel::Shape pure abstract class representing a "shape" 3D structuring element. More...
 
class  aims::strel::ShapeFactory
 aims::strel::Shape generator More...
 
class  aims::strel::Connectivity
 aims::strel::Connectivity pure abstract class representing a "connectivity" 3D structuring element. More...
 
class  aims::strel::ConnectivityFactory
 aims::strel::Connectivity generator More...
 

Namespaces

 carto
 
 aims
 The class for EcatSino data write operation.
 
 aims::strel
 

Macros

#define AIMS_DECLARE_STREL_SHAPE(NAME)
 
#define AIMS_DECLARE_STREL_CONNECTIVITY(NAME)
 

Functions

StructuringElementRef aims::strel::none ()
 Pointer to an empty aims::StructuringElement. More...
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (Cube)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (SquareXY)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (SquareXZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (SquareYZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (Sphere)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiskXY)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiskXZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiskYZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (Cross)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (CrossXY)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (CrossXZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (CrossYZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiagonalCross)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiagonalCrossXY)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiagonalCrossXZ)
 
 aims::strel::AIMS_DECLARE_STREL_SHAPE (DiagonalCrossYZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity4XY)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity4XZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity4YZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity4XYDiag)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity4XZDiag)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity4YZDiag)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity6XYZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity8XY)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity8XZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity8YZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity8XYZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity18XYZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity26XYZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity9XYZMinus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity9XYZPlus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity9XZYMinus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity9XZYPlus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity9YZXMinus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity9YZXPlus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XMinusY)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XPlusY)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XYMinus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XYPlus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XMinusZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XPlusZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XZMinus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5XZPlus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5YMinusZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5YPlusZ)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5YZMinus)
 
 aims::strel::AIMS_DECLARE_STREL_CONNECTIVITY (Connectivity5YZPlus)
 

Macro Definition Documentation

#define AIMS_DECLARE_STREL_CONNECTIVITY (   NAME)
Value:
class NAME: public Connectivity \
{ \
public: \
typedef StructuringElement::iterator iterator; \
typedef StructuringElement::const_iterator const_iterator; \
NAME(): Connectivity() { setVectorFromMatrix(); } \
virtual ~NAME() {} \
Connectivity::Matrix3x3x3Const getMatrix() const; \
protected: \
virtual NAME* clone() const \
{ return new NAME(*this); } \
}

Definition at line 496 of file structuring_element.h.

#define AIMS_DECLARE_STREL_SHAPE (   NAME)
Value:
class NAME: public Shape \
{ \
public: \
typedef StructuringElement::iterator iterator; \
typedef StructuringElement::const_iterator const_iterator; \
NAME( const double amplitude = 1., \
const bool usecenter = false ): Shape() \
{ Shape::setParameters( amplitude, usecenter ); } \
NAME( const Point3d & origin, \
const double amplitude = 1., \
const bool usecenter = false ): Shape() \
{ Shape::setParameters( origin, amplitude, usecenter ); } \
NAME( const std::vector<double> & amplitude, \
const bool usecenter = false ): Shape() \
{ Shape::setParameters( amplitude, usecenter ); } \
NAME( const Point3d & origin, \
const std::vector<double> & amplitude, \
const bool usecenter = false ): Shape() \
{ setParameters( origin, amplitude, usecenter ); } \
virtual ~NAME() {} \
protected: \
virtual void setParameters( const Point3d & origin, \
const std::vector<double> & amplitude, \
const bool usecenter = false ); \
virtual NAME* clone() const { return new NAME(*this); } \
}

Definition at line 444 of file structuring_element.h.