18#ifndef itkGradientImageFilter_h
19#define itkGradientImageFilter_h
31template <
typename TPixelType,
unsigned int VImageDimension>
63template <
typename TInputImage,
64 typename TOperatorValueType = float,
65 typename TOutputValueType = float,
66 typename TOutputImageType =
118 itkSetMacro(UseImageSpacing,
bool);
119 itkGetConstMacro(UseImageSpacing,
bool);
120 itkBooleanMacro(UseImageSpacing);
122#if !defined(ITK_FUTURE_LEGACY_REMOVE)
127 SetUseImageSpacingOn()
136 SetUseImageSpacingOff()
138 this->SetUseImageSpacing(
false);
165#if !defined(ITK_FUTURE_LEGACY_REMOVE)
187 itkSetMacro(UseImageDirection,
bool);
188 itkGetConstMacro(UseImageDirection,
bool);
189 itkBooleanMacro(UseImageDirection);
217 template <
typename TValue>
224 it.GetImage()->TransformLocalVectorToPhysicalVector(gradient, physicalGradient);
233 template <
typename T>
240 it.
GetImage()->TransformLocalVectorToPhysicalVector(gradient, it.
Value());
244 it.
Value() = gradient;
257 std::make_unique<ZeroFluxNeumannBoundaryCondition<TInputImage>>()
262#ifndef ITK_MANUAL_INSTANTIATION
263# include "itkGradientImageFilter.hxx"
A templated class holding a n-Dimensional covariant vector.
ValueType * GetDataPointer()
ImageBoundaryCondition< TInputImage, TInputImage > BoundaryConditionType
TOperatorValueType OperatorValueType
TOutputValueType OutputValueType
typename OutputImageType::Pointer OutputImagePointer
const BoundaryConditionType * GetBoundaryCondition() const
void GenerateInputRequestedRegion() override
std::unique_ptr< ImageBoundaryCondition< TInputImage, TInputImage > > m_BoundaryCondition
typename OutputImageType::RegionType OutputImageRegionType
typename OutputImageType::PixelType OutputPixelType
void PrintSelf(std::ostream &os, Indent indent) const override
CovariantVector< OutputValueType, Self::OutputImageDimension > CovariantVectorType
virtual void SetUseImageSpacing(bool _arg)
ImageToImageFilter< InputImageType, OutputImageType > Superclass
void SetBoundaryCondition(std::unique_ptr< BoundaryConditionType > boundaryCondition)
SmartPointer< const Self > ConstPointer
void SetOutputPixel(ImageRegionIterator< T > &it, CovariantVectorType &gradient)
TOutputImageType OutputImageType
SmartPointer< Self > Pointer
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
void GenerateOutputInformation() override
typename InputImageType::PixelType InputPixelType
TInputImage InputImageType
~GradientImageFilter() override=default
static constexpr unsigned int InputImageDimension
void SetOutputPixel(ImageRegionIterator< VectorImage< TValue, OutputImageDimension > > &it, CovariantVectorType &gradient)
static constexpr unsigned int OutputImageDimension
typename InputImageType::Pointer InputImagePointer
void ResetBoundaryCondition()
A virtual base object that defines an interface to a class of boundary condition objects for use by n...
const ImageType * GetImage() const
A multi-dimensional iterator templated over image type that walks a region of pixels.
Templated n-dimensional image class.
Control indentation during Print() invocation.
virtual void Modified() const
Implements transparent reference counting.
Templated n-dimensional vector image class.
#define itkConceptMacro(name, concept)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....