18 #ifndef itkFlatStructuringElement_h 19 #define itkFlatStructuringElement_h 88 template<
unsigned int VDimension >
89 class FlatStructuringElement:
public Neighborhood< bool, VDimension >
140 static Self
Box(RadiusType radius);
143 static Self
Ball(RadiusType radius,
bool radiusIsParametric =
false);
146 static Self
Cross(RadiusType radius);
149 static Self
Annulus(RadiusType radius,
150 unsigned int thickness = 1,
151 bool includeCenter =
false,
152 bool radiusIsParametric =
false);
159 static Self
Polygon(RadiusType radius,
unsigned lines);
208 itkBooleanMacro(RadiusIsParametric);
213 static Self
FromImage(
const ImageType * image);
224 template<
unsigned int VDimension3 >
230 template<
typename TStructuringElement,
typename TRadius>
231 static void GeneratePolygon(TStructuringElement & res, TRadius radius,
unsigned lines);
248 #ifndef ITK_MANUAL_INSTANTIATION 249 #include "itkFlatStructuringElement.hxx" static RadiusType CheckImageSize(const ImageType *image)
itk::Image< PixelType, VDimension > ImageType
FlatStructuringElement< VDimension > Self
Vector< float, 3 > LType3
void PrintSelf(std::ostream &os, Indent indent) const override
typedef::itk::Size< VDimension > RadiusType
Neighborhood< bool, VDimension > Superclass
static Self Polygon(RadiusType radius, unsigned lines)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes...
StructuringElementFacet< VDimension > FacetType
Vector< float, VDimension3 > P1
static Self FromImage(const ImageType *image)
Superclass::SliceIteratorType SliceIteratorType
bool CheckParallel(LType NewVec) const
Superclass::PixelType PixelType
Superclass::RadiusType RadiusType
static const unsigned int NeighborhoodDimension
Superclass::OffsetType OffsetType
A templated class holding a n-Dimensional vector.
typedef::itk::Size< VDimension > SizeType
bool m_RadiusIsParametric
bool GetRadiusIsParametric() const
void SetDecomposable(bool v)
Vector< float, 2 > LType2
static Self Ball(RadiusType radius, bool radiusIsParametric=false)
Superclass::Iterator Iterator
A flexible iterator for itk containers(i.e. itk::Neighborhood) that support pixel access through oper...
static Self Annulus(RadiusType radius, unsigned int thickness=1, bool includeCenter=false, bool radiusIsParametric=false)
bool GetDecomposable() const
A class to support a variety of flat structuring elements, including versions created by decompositio...
static Self Box(RadiusType radius)
Vector< float, VDimension > LType
Vector< float, VDimension3 > P2
AllocatorType::iterator Iterator
Control indentation during Print() invocation.
AllocatorType::const_iterator ConstIterator
virtual ~FlatStructuringElement()
StructuringElementFacet< 3 > FacetType3
Vector< float, VDimension3 > P3
static void GeneratePolygon(TStructuringElement &res, TRadius radius, unsigned lines)
void SetRadiusIsParametric(bool flag)
static Self Cross(RadiusType radius)
std::vector< LType > DecompType
const DecompType & GetLines() const
Templated n-dimensional image class.
Superclass::SizeType SizeType
void ComputeBufferFromLines()
Superclass::ConstIterator ConstIterator