ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkZeroFluxNeumannBoundaryCondition.h>
A function object that determines a neighborhood of values at an image boundary according to a Neumann boundary condition where first, upwind derivatives on the boundary are zero. This is a useful condition in solving some classes of differential equations.
For example, invoking this function object on a 7x5 iterator that masks a region at an image corner (iterator is centered on the 2):
returns the following neighborhood of values:
The input to this function object is a neighborhood iterator. This boundary condition object is designed to be given as a template argument to a NeighborhoodIterator or any of the NeighborhoodIterator subclasses.
Definition at line 58 of file itkZeroFluxNeumannBoundaryCondition.h.
Public Member Functions | |
RegionType | GetInputRequestedRegion (const RegionType &inputLargestPossibleRegion, const RegionType &outputRequestedRegion) const override |
const char * | GetNameOfClass () const override |
OutputPixelType | GetPixel (const IndexType &index, const TInputImage *image) const override |
OutputPixelType | operator() (const OffsetType &point_index, const OffsetType &boundary_offset, const NeighborhoodType *data) const override |
OutputPixelType | operator() (const OffsetType &point_index, const OffsetType &boundary_offset, const NeighborhoodType *data, const NeighborhoodAccessorFunctorType &neighborhoodAccessorFunctor) const override |
ZeroFluxNeumannBoundaryCondition ()=default | |
Public Member Functions inherited from itk::ImageBoundaryCondition< TInputImage, TOutputImage > | |
ImageBoundaryCondition ()=default | |
virtual void | Print (std::ostream &os, Indent i=0) const |
virtual bool | RequiresCompleteNeighborhood () |
virtual | ~ImageBoundaryCondition ()=default |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::ImageBoundaryCondition< TInputImage, TOutputImage > | |
static constexpr unsigned int | ImageDimension = TInputImage::ImageDimension |
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::IndexType = typename Superclass::IndexType |
Definition at line 71 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::NeighborhoodAccessorFunctorType = typename Superclass::NeighborhoodAccessorFunctorType |
Definition at line 76 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::NeighborhoodType = typename Superclass::NeighborhoodType |
Definition at line 74 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::OffsetType = typename Superclass::OffsetType |
Definition at line 73 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::OutputPixelType = typename Superclass::OutputPixelType |
Definition at line 69 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::PixelPointerType = typename Superclass::PixelPointerType |
Definition at line 68 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::PixelType = typename Superclass::PixelType |
Extract information from the image type.
Definition at line 67 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::RegionType = typename Superclass::RegionType |
Definition at line 70 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::Self = ZeroFluxNeumannBoundaryCondition |
Standard class type aliases.
Definition at line 63 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::SizeType = typename Superclass::SizeType |
Definition at line 72 of file itkZeroFluxNeumannBoundaryCondition.h.
using itk::ZeroFluxNeumannBoundaryCondition< TInputImage, TOutputImage >::Superclass = ImageBoundaryCondition< TInputImage, TOutputImage > |
Definition at line 64 of file itkZeroFluxNeumannBoundaryCondition.h.
|
default |
Default constructor.
|
overridevirtual |
Determines the necessary input region for the output region. For this boundary condition, only the intersection of the largest possible image region and the output requested region is needed. If the intersection is empty, then a one-pixel layer of the image from the side closest to the output requested region is needed.
inputLargestPossibleRegion | Largest possible region of the input image. |
outputRequestedRegion | The output requested region. |
Reimplemented from itk::ImageBoundaryCondition< TInputImage, TOutputImage >.
|
inlineoverridevirtual |
Runtime information support.
Reimplemented from itk::ImageBoundaryCondition< TInputImage, TOutputImage >.
Definition at line 85 of file itkZeroFluxNeumannBoundaryCondition.h.
|
overridevirtual |
Returns a value for a given pixel at an index. If the index is inside the bounds of the input image, then the pixel value is obtained from the input image. Otherwise, the nearest pixel value is returned.
index | The index of the desired pixel. |
image | The image from which pixel values should be determined. |
Implements itk::ImageBoundaryCondition< TInputImage, TOutputImage >.
|
overridevirtual |
Computes and returns a neighborhood of appropriate values from neighborhood iterator data..
Implements itk::ImageBoundaryCondition< TInputImage, TOutputImage >.
|
overridevirtual |
Computes and returns the appropriate pixel value from neighborhood iterator data, using the functor.
Implements itk::ImageBoundaryCondition< TInputImage, TOutputImage >.
|
static |
Extract information from the image type.
Definition at line 79 of file itkZeroFluxNeumannBoundaryCondition.h.