18#ifndef itkFastMarchingExtensionImageFilter_h
19#define itkFastMarchingExtensionImageFilter_h
55template <
typename TLevelSet,
57 unsigned int VAuxDimension = 1,
58 typename TSpeedImage = Image<float, TLevelSet::ImageDimension>>
77 using typename Superclass::LevelSetType;
78 using typename Superclass::SpeedImageType;
79 using typename Superclass::LevelSetImageType;
82 static constexpr unsigned int SetDimension = Superclass::SetDimension;
85 static constexpr unsigned int AuxDimension = VAuxDimension;
106 m_AuxAliveValues = values;
113 return m_AuxAliveValues.GetPointer();
120 m_AuxTrialValues = values;
127 return m_AuxTrialValues;
130#ifdef ITK_USE_CONCEPT_CHECKING
163#ifndef ITK_MANUAL_INSTANTIATION
164# include "itkFastMarchingExtensionImageFilter.hxx"
Level set auxiliary variables type information.
typename AuxImageType::Pointer AuxImagePointer
Base class for all data objects in ITK.
Extend auxiliary variables smoothly using Fast Marching.
void PrintSelf(std::ostream &os, Indent indent) const override
FastMarchingExtensionImageFilter()
void EnlargeOutputRequestedRegion(DataObject *output) override
~FastMarchingExtensionImageFilter() override=default
typename AuxVarType::AuxValueType AuxValueType
AuxValueContainer::Pointer GetAuxiliaryTrialValues()
typename AuxVarType::AuxValueContainer AuxValueContainer
void SetAuxiliaryAliveValues(AuxValueContainer *values)
void GenerateOutputInformation() override
typename AuxVarType::AuxValueVectorType AuxValueVectorType
double UpdateValue(const IndexType &index, const SpeedImageType *speed, LevelSetImageType *output) override
void SetAuxiliaryTrialValues(AuxValueContainer *values)
typename AuxVarType::AuxImageType AuxImageType
void Initialize(LevelSetImageType *) override
typename AuxVarType::AuxImagePointer AuxImagePointer
AuxValueContainer * GetAuxiliaryAliveValues()
AuxImageType * GetAuxiliaryImage(unsigned int idx)
Solve an Eikonal equation using Fast Marching.
typename LevelSetType::LevelSetImageType LevelSetImageType
Templated n-dimensional image class.
Control indentation during Print() invocation.
Light weight base class for most itk classes.
A templated class holding a n-Dimensional vector.
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
SmartPointer< Self > Pointer
#define itkConceptMacro(name, concept)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Represent a n-dimensional index in a n-dimensional image.