Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit

Computes a thick slice projection from a 3D image stack. More...

#include <vtkMitkThickSlicesFilter.h>

Inheritance diagram for vtkMitkThickSlicesFilter:
Collaboration diagram for vtkMitkThickSlicesFilter:

Public Types

enum  {
  MIP , SUM , WEIGHTED , MINIP ,
  MEAN
}
 Enumeration of thick slice projection modes. More...
 

Public Member Functions

 vtkTypeMacro (vtkMitkThickSlicesFilter, vtkThreadedImageAlgorithm)
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Print the filter state to the given output stream. More...
 
 vtkSetClampMacro (Dimensionality, int, 2, 3)
 Determines how the input is interpreted (set of 2D slices). Clamped to [2, 3]. More...
 
 vtkGetMacro (Dimensionality, int)
 
 vtkSetMacro (HandleBoundaries, int)
 Get/Set whether to handle boundaries. More...
 
 vtkGetMacro (HandleBoundaries, int)
 
 vtkBooleanMacro (HandleBoundaries, int)
 
void SetThickSliceMode (int mode)
 Set the thick slice projection mode. More...
 
int GetThickSliceMode ()
 Get the current thick slice projection mode. More...
 

Static Public Member Functions

static vtkMitkThickSlicesFilter * New ()
 Create a new instance of vtkMitkThickSlicesFilter. More...
 

Protected Member Functions

 vtkMitkThickSlicesFilter ()
 Constructor. Sets defaults: HandleBoundaries=1, Dimensionality=2, mode=MIP. More...
 
 ~vtkMitkThickSlicesFilter () override
 Destructor. More...
 
int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
 Propagate output information (reduces Z extent to a single slice). More...
 
int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
 Compute the input update extent from the output request. More...
 
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
 Execute the filter and process output data arrays. More...
 
void ThreadedRequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *, vtkImageData ***inData, vtkImageData **outData, int outExt[6], int threadId) override
 Threaded execution method that applies the selected projection mode. More...
 

Protected Attributes

int HandleBoundaries
 
int Dimensionality
 
int m_CurrentMode
 

Detailed Description

Computes a thick slice projection from a 3D image stack.

vtkMitkThickSlicesFilter collapses a set of 2D slices into a single output slice using one of several projection modes (MIP, MinIP, SUM, WEIGHTED, MEAN). The Dimensionality property determines whether to treat the input as a set of 2D or 3D slices.

Definition at line 30 of file vtkMitkThickSlicesFilter.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Enumeration of thick slice projection modes.

  • MIP – Maximum Intensity Projection
  • SUM – Sum of all slices (normalized)
  • WEIGHTED – Gaussian-weighted projection
  • MINIP – Minimum Intensity Projection
  • MEAN – Mean of all slices
Enumerator
MIP 
SUM 
WEIGHTED 
MINIP 
MEAN 

Definition at line 64 of file vtkMitkThickSlicesFilter.h.

Constructor & Destructor Documentation

◆ vtkMitkThickSlicesFilter()

vtkMitkThickSlicesFilter::vtkMitkThickSlicesFilter ( )
protected

Constructor. Sets defaults: HandleBoundaries=1, Dimensionality=2, mode=MIP.

◆ ~vtkMitkThickSlicesFilter()

vtkMitkThickSlicesFilter::~vtkMitkThickSlicesFilter ( )
inlineoverrideprotected

Destructor.

Definition at line 78 of file vtkMitkThickSlicesFilter.h.

Member Function Documentation

◆ GetThickSliceMode()

int vtkMitkThickSlicesFilter::GetThickSliceMode ( )
inline

Get the current thick slice projection mode.

Returns
The current projection mode enum value.

Definition at line 127 of file vtkMitkThickSlicesFilter.h.

◆ New()

static vtkMitkThickSlicesFilter* vtkMitkThickSlicesFilter::New ( )
static

Create a new instance of vtkMitkThickSlicesFilter.

◆ PrintSelf()

void vtkMitkThickSlicesFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
override

Print the filter state to the given output stream.

◆ RequestData()

int vtkMitkThickSlicesFilter::RequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
overrideprotected

Execute the filter and process output data arrays.

◆ RequestInformation()

int vtkMitkThickSlicesFilter::RequestInformation ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
overrideprotected

Propagate output information (reduces Z extent to a single slice).

◆ RequestUpdateExtent()

int vtkMitkThickSlicesFilter::RequestUpdateExtent ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
overrideprotected

Compute the input update extent from the output request.

◆ SetThickSliceMode()

void vtkMitkThickSlicesFilter::SetThickSliceMode ( int  mode)
inline

Set the thick slice projection mode.

Parameters
[in]modeOne of the projection mode enum values (MIP, SUM, WEIGHTED, MINIP, MEAN).

Definition at line 120 of file vtkMitkThickSlicesFilter.h.

◆ ThreadedRequestData()

void vtkMitkThickSlicesFilter::ThreadedRequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *  ,
vtkImageData ***  inData,
vtkImageData **  outData,
int  outExt[6],
int  threadId 
)
overrideprotected

Threaded execution method that applies the selected projection mode.

Parameters
[in]inDataArray of input image data.
[out]outDataArray of output image data.
[in]outExtSix-component output extent array.
[in]threadIdThe thread id.

◆ vtkBooleanMacro()

vtkMitkThickSlicesFilter::vtkBooleanMacro ( HandleBoundaries  ,
int   
)

◆ vtkGetMacro() [1/2]

vtkMitkThickSlicesFilter::vtkGetMacro ( Dimensionality  ,
int   
)

◆ vtkGetMacro() [2/2]

vtkMitkThickSlicesFilter::vtkGetMacro ( HandleBoundaries  ,
int   
)

◆ vtkSetClampMacro()

vtkMitkThickSlicesFilter::vtkSetClampMacro ( Dimensionality  ,
int  ,
2  ,
3   
)

Determines how the input is interpreted (set of 2D slices). Clamped to [2, 3].

◆ vtkSetMacro()

vtkMitkThickSlicesFilter::vtkSetMacro ( HandleBoundaries  ,
int   
)

Get/Set whether to handle boundaries.

If enabled, boundary pixels are treated as duplicated so that central differencing works for the boundary pixels. If disabled, the output whole extent of the image is reduced by one pixel.

◆ vtkTypeMacro()

vtkMitkThickSlicesFilter::vtkTypeMacro ( vtkMitkThickSlicesFilter  ,
vtkThreadedImageAlgorithm   
)

Member Data Documentation

◆ Dimensionality

int vtkMitkThickSlicesFilter::Dimensionality
protected

Definition at line 81 of file vtkMitkThickSlicesFilter.h.

◆ HandleBoundaries

int vtkMitkThickSlicesFilter::HandleBoundaries
protected

Definition at line 80 of file vtkMitkThickSlicesFilter.h.

◆ m_CurrentMode

int vtkMitkThickSlicesFilter::m_CurrentMode
protected

Definition at line 108 of file vtkMitkThickSlicesFilter.h.


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