18#ifndef itkDanielssonDistanceMapImageFilter_h
19#define itkDanielssonDistanceMapImageFilter_h
58template <
typename TInputImage,
typename TOutputImage,
typename TVoronoiImage = TInputImage>
115 static constexpr unsigned int InputImageDimension = InputImageType::ImageDimension;
130 itkSetMacro(SquaredDistance,
bool);
131 itkGetConstReferenceMacro(SquaredDistance,
bool);
132 itkBooleanMacro(SquaredDistance);
140 itkSetMacro(InputIsBinary,
bool);
141 itkGetConstReferenceMacro(InputIsBinary,
bool);
142 itkBooleanMacro(InputIsBinary);
146 itkSetMacro(UseImageSpacing,
bool);
147 itkGetConstReferenceMacro(UseImageSpacing,
bool);
148 itkBooleanMacro(UseImageSpacing);
176 using Superclass::MakeOutput;
180#ifdef ITK_USE_CONCEPT_CHECKING
181 static constexpr unsigned int OutputImageDimension = TOutputImage::ImageDimension;
182 static constexpr unsigned int VoronoiImageDimension = TVoronoiImage::ImageDimension;
215 bool m_SquaredDistance{};
216 bool m_InputIsBinary{};
217 bool m_UseImageSpacing{
true };
223#ifndef ITK_MANUAL_INSTANTIATION
224# include "itkDanielssonDistanceMapImageFilter.hxx"
This filter computes the distance map of the input image as an approximation with pixel accuracy to t...
typename InputImageType::OffsetType OffsetType
typename InputImageType::RegionType RegionType
VectorImageType * GetVectorDistanceMap()
DataObjectPointer MakeOutput(DataObjectPointerArraySizeType idx) override
typename VoronoiImageType::Pointer VoronoiImagePointer
VoronoiImageType * GetVoronoiMap()
~DanielssonDistanceMapImageFilter() override=default
typename RegionType::SizeType SizeType
typename InputImageType::PixelType InputPixelType
typename SizeType::SizeValueType SizeValueType
typename OutputImageType::PixelType OutputPixelType
OutputImageType * GetDistanceMap()
TVoronoiImage VoronoiImageType
void GenerateData() override
DanielssonDistanceMapImageFilter()
typename RegionType::IndexType IndexType
typename InputImageType::SpacingType SpacingType
typename VectorImageType::Pointer VectorImagePointer
void PrintSelf(std::ostream &os, Indent indent) const override
typename InputImageType::SpacingValueType SpacingValueType
void UpdateLocalDistance(VectorImageType *, const IndexType &, const OffsetType &)
typename VoronoiImageType::PixelType VoronoiPixelType
SmartPointer< Self > Pointer
Base class for all process objects that output image data.
TOutputImage OutputImageType
typename OutputImageType::Pointer OutputImagePointer
Superclass::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
Base class for filters that take an image as input and produce an image as output.
TInputImage InputImageType
typename InputImageType::Pointer InputImagePointer
Templated n-dimensional image class.
Control indentation during Print() invocation.
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
DataObjectPointerArray::size_type DataObjectPointerArraySizeType
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 long SizeValueType