Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::HeightFieldSurfaceClipImageFilter Class Reference

Filter for clipping an image with an height-field represented by an mitk::Surface. More...

#include <mitkHeightFieldSurfaceClipImageFilter.h>

Inheritance diagram for mitk::HeightFieldSurfaceClipImageFilter:
Collaboration diagram for mitk::HeightFieldSurfaceClipImageFilter:

Public Types

enum  { CLIPPING_MODE_CONSTANT , CLIPPING_MODE_MULTIPLYBYFACTOR , CLIPPING_MODE_MULTIPLANE }
 Clipping mode enumeration. More...
 
typedef std::vector< mitk::Surface * > ClippingPlaneList
 List of Surface pointers used for multi-plane clipping. More...
 
- Public Types inherited from mitk::ImageToImageFilter
typedef Superclass::OutputImageRegionType OutputImageRegionType
 Superclass typedefs. More...
 
typedef mitk::Image InputImageType
 Some convenient typedefs. More...
 
typedef InputImageType::Pointer InputImagePointer
 
typedef InputImageType::ConstPointer InputImageConstPointer
 
typedef SlicedData::RegionType InputImageRegionType
 
- Public Types inherited from mitk::ImageSource
typedef mitk::Image OutputImageType
 Some convenient typedefs. More...
 
typedef OutputImageType OutputType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef SlicedData::RegionType OutputImageRegionType
 
- Public Types inherited from mitk::BaseDataSource
typedef BaseData OutputType
 Output data type. More...
 
typedef itk::DataObject::DataObjectIdentifierType DataObjectIdentifierType
 Identifier type for named data objects. More...
 

Public Member Functions

 mitkClassMacro (HeightFieldSurfaceClipImageFilter, ImageToImageFilter)
 
Pointer Clone () const
 
void SetClippingSurface (Surface *clippingSurface)
 Set the surface defining a height field as a triangle mesh. More...
 
void SetClippingSurfaces (ClippingPlaneList planeList)
 Set multiple surfaces for multi-plane clipping. More...
 
const Surface * GetClippingSurface () const
 Get the clipping surface. More...
 
void SetClippingMode (int mode)
 Set the clipping mode. More...
 
int GetClippingMode ()
 Get the current clipping mode. More...
 
void SetClippingModeToConstant ()
 Set clipping mode to CLIPPING_MODE_CONSTANT. More...
 
void SetClippingModeToMultiplyByFactor ()
 Set clipping mode to CLIPPING_MODE_MULTIPLYBYFACTOR. More...
 
void SetClippingModeToMultiPlaneValue ()
 Set clipping mode to CLIPPING_MODE_MULTIPLANE. More...
 
virtual void SetClippingConstant (ScalarType _arg)
 Set the constant gray-value for clipping in CONSTANT mode. More...
 
virtual ScalarType GetClippingConstant () const
 Get the constant gray-value for clipping in CONSTANT mode. More...
 
virtual void SetMultiplicationFactor (ScalarType _arg)
 Set the multiplication factor for clipping in MULTIPLYBYFACTOR mode. More...
 
virtual ScalarType GetMultiplicationFactor () const
 Get the multiplication factor for clipping in MULTIPLYBYFACTOR mode. More...
 
virtual void SetHeightFieldResolutionX (unsigned int _arg)
 Set the x-resolution of the height-field sampling (default: 256). More...
 
virtual unsigned int GetHeightFieldResolutionX () const
 Get the x-resolution of the height-field sampling. More...
 
virtual void SetHeightFieldResolutionY (unsigned int _arg)
 Set the y-resolution of the height-field sampling (default: 256). More...
 
virtual unsigned int GetHeightFieldResolutionY () const
 Get the y-resolution of the height-field sampling. More...
 
- Public Member Functions inherited from mitk::ImageToImageFilter
 mitkClassMacro (ImageToImageFilter, ImageSource)
 
Pointer Clone () const
 
virtual void SetInput (const InputImageType *image)
 Set the image input of this process object. More...
 
virtual void SetInput (unsigned int idx, const InputImageType *image)
 Set the image input at the specified index. More...
 
InputImageType * GetInput (void)
 Get the input image (non-const). More...
 
InputImageType * GetInput (unsigned int idx)
 Get the input image at the specified index (non-const). More...
 
const InputImageType * GetInput (void) const
 Get the input image (const). More...
 
const InputImageType * GetInput (unsigned int idx) const
 Get the input image at the specified index (const). More...
 
- Public Member Functions inherited from mitk::ImageSource
 mitkClassMacro (ImageSource, BaseDataSource)
 
Pointer Clone () const
 
mitkBaseDataSourceGetOutputDeclarations itk::DataObject::Pointer MakeOutput (DataObjectPointerArraySizeType idx) override
 Get the output data of this image source object. More...
 
itk::DataObject::Pointer MakeOutput (const DataObjectIdentifierType &name) override
 
virtual vtkImageData * GetVtkImageData ()
 Get the output as VTK image data (non-const version). More...
 
virtual const vtkImageData * GetVtkImageData () const
 Get the output as VTK image data (const version). More...
 
- Public Member Functions inherited from mitk::BaseDataSource
 mitkClassMacroItkParent (BaseDataSource, itk::ProcessObject)
 
OutputType * GetOutput ()
 
const OutputType * GetOutput () const
 
OutputType * GetOutput (DataObjectPointerArraySizeType idx)
 
const OutputType * GetOutput (DataObjectPointerArraySizeType idx) const
 
virtual void GraftOutput (OutputType *output)
 Graft the specified BaseData onto this BaseDataSource's output. More...
 
virtual void GraftOutput (const DataObjectIdentifierType &key, OutputType *output)
 Graft the specified base data object onto a named output. More...
 
virtual void GraftNthOutput (unsigned int idx, OutputType *output)
 Graft the specified base data object onto this BaseDataSource's idx'th output. More...
 
bool Updating () const
 Check whether the pipeline is currently executing. More...
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from mitk::ImageToImageFilter
static Pointer New ()
 Method for creation through the object factory. More...
 
- Static Public Member Functions inherited from mitk::ImageSource
static Pointer New ()
 Method for creation through the object factory. More...
 

Protected Member Functions

 HeightFieldSurfaceClipImageFilter ()
 
 ~HeightFieldSurfaceClipImageFilter () override
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
void GenerateData () override
 
template<typename TPixel , unsigned int VImageDimension>
void _InternalComputeClippedImage (itk::Image< TPixel, VImageDimension > *itkImage, HeightFieldSurfaceClipImageFilter *clipImageFilter, vtkPolyData *clippingPolyData, AffineTransform3D *imageToPlaneTransform)
 
- Protected Member Functions inherited from mitk::ImageToImageFilter
 ImageToImageFilter ()
 
 ~ImageToImageFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 Print self information to the given stream. More...
 
void GenerateInputRequestedRegion () override
 Determine the input requested region to produce the output requested region. More...
 
- Protected Member Functions inherited from mitk::ImageSource
 ImageSource ()
 
 ~ImageSource () override
 
void GenerateData () override
 A version of GenerateData() specific for image processing filters. More...
 
virtual void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, itk::ThreadIdType threadId)
 If an imaging filter can be implemented as a multithreaded algorithm, the filter will provide an implementation of ThreadedGenerateData(). More...
 
void PrepareOutputs () override
 This method is intentionally left blank. More...
 
virtual void AllocateOutputs ()
 The GenerateData method normally allocates the buffers for all of the outputs of a filter. More...
 
virtual void BeforeThreadedGenerateData ()
 If an imaging filter needs to perform processing after the buffer has been allocated but before threads are spawned, the filter can provide an implementation for BeforeThreadedGenerateData(). More...
 
virtual void AfterThreadedGenerateData ()
 If an imaging filter needs to perform processing after all processing threads have completed, the filter can provide an implementation for AfterThreadedGenerateData(). More...
 
virtual unsigned int SplitRequestedRegion (unsigned int i, unsigned int num, OutputImageRegionType &splitRegion)
 Split the output's RequestedRegion into "num" pieces, returning region "i" as "splitRegion". More...
 
- Protected Member Functions inherited from mitk::BaseDataSource
 BaseDataSource ()
 Constructor. More...
 
 ~BaseDataSource () override
 Destructor. More...
 

Protected Attributes

ImageTimeSelector::Pointer m_InputTimeSelector
 
ImageTimeSelector::Pointer m_OutputTimeSelector
 
int m_ClippingMode
 
ScalarType m_ClippingConstant
 
ScalarType m_MultiplicationFactor
 
unsigned m_MultiPlaneValue
 
unsigned int m_HeightFieldResolutionX
 
unsigned int m_HeightFieldResolutionY
 
double m_MaxHeight
 
itk::TimeStamp m_TimeOfHeaderInitialization
 Time when Header was last initialized. More...
 

Additional Inherited Members

- Static Protected Member Functions inherited from mitk::ImageSource
static itk::ITK_THREAD_RETURN_TYPE ThreaderCallback (void *arg)
 Static function used as a "callback" by the MultiThreader. More...
 
- Static Protected Member Functions inherited from mitk::BaseDataSource
static Pointer New ()
 

Detailed Description

Filter for clipping an image with an height-field represented by an mitk::Surface.

The filter assumes that the surface represents a height field as seen from the plane defined by (1.0/0.0/0.0), (0.0/1.0/0.0). All voxels lying on one side of the height field will be clipped, i.e., set to 0. In addition, any voxels which are out of bounds when projected on this plane will be clipped as well.

Definition at line 43 of file mitkHeightFieldSurfaceClipImageFilter.h.

Member Typedef Documentation

◆ ClippingPlaneList

List of Surface pointers used for multi-plane clipping.

Definition at line 47 of file mitkHeightFieldSurfaceClipImageFilter.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Clipping mode enumeration.

Defines how clipped voxels are modified:

  • CLIPPING_MODE_CONSTANT: Replace clipped voxels with a constant value.
  • CLIPPING_MODE_MULTIPLYBYFACTOR: Multiply clipped voxels by a factor.
  • CLIPPING_MODE_MULTIPLANE: Use multi-plane labeling.
Enumerator
CLIPPING_MODE_CONSTANT 
CLIPPING_MODE_MULTIPLYBYFACTOR 
CLIPPING_MODE_MULTIPLANE 

Definition at line 81 of file mitkHeightFieldSurfaceClipImageFilter.h.

Constructor & Destructor Documentation

◆ HeightFieldSurfaceClipImageFilter()

mitk::HeightFieldSurfaceClipImageFilter::HeightFieldSurfaceClipImageFilter ( )
protected

◆ ~HeightFieldSurfaceClipImageFilter()

mitk::HeightFieldSurfaceClipImageFilter::~HeightFieldSurfaceClipImageFilter ( )
overrideprotected

Member Function Documentation

◆ _InternalComputeClippedImage()

template<typename TPixel , unsigned int VImageDimension>
void mitk::HeightFieldSurfaceClipImageFilter::_InternalComputeClippedImage ( itk::Image< TPixel, VImageDimension > *  itkImage,
HeightFieldSurfaceClipImageFilter *  clipImageFilter,
vtkPolyData *  clippingPolyData,
AffineTransform3D *  imageToPlaneTransform 
)
protected

◆ Clone()

Pointer mitk::HeightFieldSurfaceClipImageFilter::Clone ( ) const

◆ GenerateData()

void mitk::HeightFieldSurfaceClipImageFilter::GenerateData ( )
overrideprotected

◆ GenerateInputRequestedRegion()

void mitk::HeightFieldSurfaceClipImageFilter::GenerateInputRequestedRegion ( )
overrideprotected

◆ GenerateOutputInformation()

void mitk::HeightFieldSurfaceClipImageFilter::GenerateOutputInformation ( )
overrideprotected

◆ GetClippingConstant()

virtual ScalarType mitk::HeightFieldSurfaceClipImageFilter::GetClippingConstant ( ) const
virtual

Get the constant gray-value for clipping in CONSTANT mode.

Returns
The clipping constant value.

◆ GetClippingMode()

int mitk::HeightFieldSurfaceClipImageFilter::GetClippingMode ( )

Get the current clipping mode.

Returns
The current clipping mode constant.

◆ GetClippingSurface()

const Surface* mitk::HeightFieldSurfaceClipImageFilter::GetClippingSurface ( ) const

Get the clipping surface.

Returns
Const pointer to the clipping Surface.

◆ GetHeightFieldResolutionX()

virtual unsigned int mitk::HeightFieldSurfaceClipImageFilter::GetHeightFieldResolutionX ( ) const
virtual

Get the x-resolution of the height-field sampling.

Returns
The x-resolution in samples.

◆ GetHeightFieldResolutionY()

virtual unsigned int mitk::HeightFieldSurfaceClipImageFilter::GetHeightFieldResolutionY ( ) const
virtual

Get the y-resolution of the height-field sampling.

Returns
The y-resolution in samples.

◆ GetMultiplicationFactor()

virtual ScalarType mitk::HeightFieldSurfaceClipImageFilter::GetMultiplicationFactor ( ) const
virtual

Get the multiplication factor for clipping in MULTIPLYBYFACTOR mode.

Returns
The multiplication factor.

◆ mitkClassMacro()

mitk::HeightFieldSurfaceClipImageFilter::mitkClassMacro ( HeightFieldSurfaceClipImageFilter  ,
ImageToImageFilter   
)

◆ New()

static Pointer mitk::HeightFieldSurfaceClipImageFilter::New ( )
static

◆ SetClippingConstant()

virtual void mitk::HeightFieldSurfaceClipImageFilter::SetClippingConstant ( ScalarType  _arg)
virtual

Set the constant gray-value for clipping in CONSTANT mode.

Parameters
[in]_argThe constant value to fill clipped voxels with.

◆ SetClippingMode()

void mitk::HeightFieldSurfaceClipImageFilter::SetClippingMode ( int  mode)

Set the clipping mode.

Parameters
[in]modeOne of the CLIPPING_MODE_* constants.

◆ SetClippingModeToConstant()

void mitk::HeightFieldSurfaceClipImageFilter::SetClippingModeToConstant ( )

Set clipping mode to CLIPPING_MODE_CONSTANT.

◆ SetClippingModeToMultiPlaneValue()

void mitk::HeightFieldSurfaceClipImageFilter::SetClippingModeToMultiPlaneValue ( )

Set clipping mode to CLIPPING_MODE_MULTIPLANE.

◆ SetClippingModeToMultiplyByFactor()

void mitk::HeightFieldSurfaceClipImageFilter::SetClippingModeToMultiplyByFactor ( )

Set clipping mode to CLIPPING_MODE_MULTIPLYBYFACTOR.

◆ SetClippingSurface()

void mitk::HeightFieldSurfaceClipImageFilter::SetClippingSurface ( Surface *  clippingSurface)

Set the surface defining a height field as a triangle mesh.

Parameters
[in]clippingSurfaceThe surface to use for clipping.

◆ SetClippingSurfaces()

void mitk::HeightFieldSurfaceClipImageFilter::SetClippingSurfaces ( ClippingPlaneList  planeList)

Set multiple surfaces for multi-plane clipping.

Parameters
[in]planeListA vector of Surface pointers to use for clipping.

◆ SetHeightFieldResolutionX()

virtual void mitk::HeightFieldSurfaceClipImageFilter::SetHeightFieldResolutionX ( unsigned int  _arg)
virtual

Set the x-resolution of the height-field sampling (default: 256).

Parameters
[in]_argThe x-resolution in samples.

◆ SetHeightFieldResolutionY()

virtual void mitk::HeightFieldSurfaceClipImageFilter::SetHeightFieldResolutionY ( unsigned int  _arg)
virtual

Set the y-resolution of the height-field sampling (default: 256).

Parameters
[in]_argThe y-resolution in samples.

◆ SetMultiplicationFactor()

virtual void mitk::HeightFieldSurfaceClipImageFilter::SetMultiplicationFactor ( ScalarType  _arg)
virtual

Set the multiplication factor for clipping in MULTIPLYBYFACTOR mode.

Parameters
[in]_argThe factor to multiply clipped voxels by.

Member Data Documentation

◆ m_ClippingConstant

ScalarType mitk::HeightFieldSurfaceClipImageFilter::m_ClippingConstant
protected

Definition at line 179 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_ClippingMode

int mitk::HeightFieldSurfaceClipImageFilter::m_ClippingMode
protected

Definition at line 177 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_HeightFieldResolutionX

unsigned int mitk::HeightFieldSurfaceClipImageFilter::m_HeightFieldResolutionX
protected

Definition at line 183 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_HeightFieldResolutionY

unsigned int mitk::HeightFieldSurfaceClipImageFilter::m_HeightFieldResolutionY
protected

Definition at line 184 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_InputTimeSelector

ImageTimeSelector::Pointer mitk::HeightFieldSurfaceClipImageFilter::m_InputTimeSelector
protected

Definition at line 174 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_MaxHeight

double mitk::HeightFieldSurfaceClipImageFilter::m_MaxHeight
protected

Definition at line 186 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_MultiPlaneValue

unsigned mitk::HeightFieldSurfaceClipImageFilter::m_MultiPlaneValue
protected

Definition at line 181 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_MultiplicationFactor

ScalarType mitk::HeightFieldSurfaceClipImageFilter::m_MultiplicationFactor
protected

Definition at line 180 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_OutputTimeSelector

ImageTimeSelector::Pointer mitk::HeightFieldSurfaceClipImageFilter::m_OutputTimeSelector
protected

Definition at line 175 of file mitkHeightFieldSurfaceClipImageFilter.h.

◆ m_TimeOfHeaderInitialization

itk::TimeStamp mitk::HeightFieldSurfaceClipImageFilter::m_TimeOfHeaderInitialization
protected

Time when Header was last initialized.

Definition at line 189 of file mitkHeightFieldSurfaceClipImageFilter.h.


The documentation for this class was generated from the following file: