18#ifndef itkSignedMaurerDistanceMapImageFilter_h
19#define itkSignedMaurerDistanceMapImageFilter_h
66template <
typename TInputImage,
typename TOutputImage>
73 static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension;
74 static constexpr unsigned int OutputImageDimension = TOutputImage::ImageDimension;
75 static constexpr unsigned int ImageDimension = TOutputImage::ImageDimension;
119 itkSetMacro(SquaredDistance,
bool);
122 itkGetConstReferenceMacro(SquaredDistance,
bool);
125 itkBooleanMacro(SquaredDistance);
129 itkSetMacro(InsideIsPositive,
bool);
133 itkGetConstReferenceMacro(InsideIsPositive,
bool);
138 itkBooleanMacro(InsideIsPositive);
141 itkSetMacro(UseImageSpacing,
bool);
144 itkGetConstReferenceMacro(UseImageSpacing,
bool);
147 itkBooleanMacro(UseImageSpacing);
157#ifdef ITK_USE_CONCEPT_CHECKING
184 itkExceptionMacro(
"This class requires threadId so it must use classic multi-threading model");
195 unsigned int m_CurrentDimension{ 0 };
197 bool m_InsideIsPositive{
false };
198 bool m_UseImageSpacing{
true };
199 bool m_SquaredDistance{
false };
205#ifndef ITK_MANUAL_INSTANTIATION
206# include "itkSignedMaurerDistanceMapImageFilter.hxx"
Base class for all process objects that output image data.
typename OutputImageType::RegionType OutputImageRegionType
TOutputImage OutputImageType
typename OutputImageType::Pointer OutputImagePointer
Base class for filters that take an image as input and produce an image as output.
typename InputImageType::ConstPointer InputImageConstPointer
Control indentation during Print() invocation.
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
This filter calculates the Euclidean distance transform of a binary image in linear time for arbitrar...
typename InputImageType::SizeType InputSizeType
typename OutputImageType::SizeValueType OutputSizeValueType
typename OutputImageType::SizeType OutputSizeType
TInputImage InputImageType
SignedMaurerDistanceMapImageFilter()
void Voronoi(unsigned int, OutputIndexType idx, OutputImageType *output)
void GenerateData() override
typename OutputImageType::RegionType OutputRegionType
bool Remove(OutputPixelType, OutputPixelType, OutputPixelType, OutputPixelType, OutputPixelType, OutputPixelType)
typename InputImageType::RegionType InputRegionType
~SignedMaurerDistanceMapImageFilter() override=default
unsigned int SplitRequestedRegion(unsigned int i, unsigned int num, OutputImageRegionType &splitRegion) override
typename InputImageType::IndexType InputIndexType
typename InputImageType::SpacingType InputSpacingType
typename OutputImageType::PixelType OutputPixelType
typename OutputImageType::SpacingType OutputSpacingType
typename InputImageType::IndexValueType InputIndexValueType
typename OutputImageType::IndexType OutputIndexType
typename InputImageType::SizeValueType InputSizeValueType
typename InputImageType::PixelType InputPixelType
void DynamicThreadedGenerateData(const OutputImageRegionType &) override
void PrintSelf(std::ostream &os, Indent indent) const override
typename OutputImageType::IndexValueType OutputIndexValueType
void ThreadedGenerateData(const OutputImageRegionType &, ThreadIdType) override
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
#define itkConceptMacro(name, concept)
ImageBaseType::RegionType RegionType
ImageBaseType::IndexType IndexType
ImageBaseType::SizeType SizeType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType
unsigned long SizeValueType