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

Mapper to resample and display 2D slices of registration evaluation visualization. More...

#include <mitkRegEvaluationMapper2D.h>

Inheritance diagram for mitk::RegEvaluationMapper2D:
Collaboration diagram for mitk::RegEvaluationMapper2D:

Classes

class  LocalStorage
 Internal class holding the mapper, actor, etc. for each of the 3 2D render windows. More...
 

Public Member Functions

 mitkClassMacro (RegEvaluationMapper2D, VtkMapper)
 
Pointer Clone () const
 
const mitk::DataNode * GetTargetNode (void)
 
const mitk::DataNode * GetMovingNode (void)
 
const mitk::Image * GetTargetImage (void)
 Get the target image to map. More...
 
const mitk::Image * GetMovingImage (void)
 Get the moving image to map. More...
 
const mitk::MAPRegistrationWrapper * GetRegistration (void)
 Get the target image to map. More...
 
void Update (mitk::BaseRenderer *renderer) override
 Checks whether this mapper needs to update itself and generate data. More...
 
vtkProp * GetVtkProp (mitk::BaseRenderer *renderer) override
 Return the VTK prop (actor, assembly, etc.) for the given renderer. More...
 
LocalStorage * GetLocalStorage (mitk::BaseRenderer *renderer)
 Get the LocalStorage corresponding to the current renderer. More...
 
- Public Member Functions inherited from mitk::VtkMapper
 mitkClassMacro (VtkMapper, Mapper)
 
void MitkRender (mitk::BaseRenderer *renderer, mitk::VtkPropRenderer::RenderType type) override
 Determine the render pass type and call the appropriate render method. More...
 
virtual void MitkRenderOverlay (BaseRenderer *renderer)
 Check visibility and render the overlay pass. More...
 
virtual void MitkRenderOpaqueGeometry (BaseRenderer *renderer)
 Check visibility and render opaque (untransparent) geometry. More...
 
virtual void MitkRenderTranslucentGeometry (BaseRenderer *renderer)
 Check visibility and render translucent (transparent) geometry. More...
 
virtual void MitkRenderVolumetricGeometry (BaseRenderer *renderer)
 Check visibility and render volumetric geometry. More...
 
virtual bool HasVtkProp (const vtkProp *prop, BaseRenderer *renderer)
 Check whether this mapper owns the specified vtkProp for the given renderer. More...
 
virtual void UpdateVtkTransform (mitk::BaseRenderer *renderer)
 Set the vtkTransform of the m_Prop3D for the current time step of renderer. More...
 
void ApplyColorAndOpacityProperties (mitk::BaseRenderer *renderer, vtkActor *actor) override
 Apply color and opacity properties read from the PropertyList to the given vtkActor. More...
 
virtual void ReleaseGraphicsResources (mitk::BaseRenderer *)
 Release VTK-based graphics resources consumed by this mapper. More...
 
- Public Member Functions inherited from mitk::Mapper
 mitkClassMacroItkParent (Mapper, itk::Object)
 
virtual void SetDataNode (DataNode *_arg)
 Set the DataNode containing the data to map. More...
 
virtual DataNode * GetDataNode () const
 Get the DataNode containing the data to map. More...
 
TimeStepType GetTimestep () const
 Return the current time step as calculated from the renderer. More...
 
virtual bool IsLODEnabled (BaseRenderer *) const
 Return whether this Mapper currently allows for Level-of-Detail rendering. More...
 

Static Public Member Functions

static Pointer New ()
 
static void SetDefaultProperties (mitk::DataNode *node, mitk::BaseRenderer *renderer=nullptr, bool overwrite=false)
 Set the default properties for general image rendering. More...
 
- Static Public Member Functions inherited from mitk::Mapper
static void SetDefaultProperties (DataNode *node, BaseRenderer *renderer=nullptr, bool overwrite=false)
 Set default values of properties used by this mapper on the given node. More...
 

Public Attributes

mitk::LocalStorageHandler< LocalStorage > m_LSH
 The LocalStorageHandler holds all (three) LocalStorages for the three 2D render windows. More...
 

Protected Member Functions

void TransformActor (mitk::BaseRenderer *renderer)
 Transforms the actor to the actual position in 3D. More...
 
void GeneratePlane (mitk::BaseRenderer *renderer, double planeBounds[6])
 Generates a plane according to the size of the resliced image in millimeters. More...
 
 RegEvaluationMapper2D ()
 
 ~RegEvaluationMapper2D () override
 
void GenerateDataForRenderer (mitk::BaseRenderer *renderer) override
 Does the actual resampling, without rendering the image yet. All the data is generated inside this method. The vtkProp (or Actor) is filled with content (i.e. the resliced image). More...
 
void PrepareContour (mitk::DataNode *datanode, LocalStorage *localStorage)
 
void PrepareDifference (LocalStorage *localStorage)
 
void PrepareWipe (mitk::DataNode *datanode, LocalStorage *localStorage, const Point2D &currentIndex2D)
 
void PrepareCheckerBoard (mitk::DataNode *datanode, LocalStorage *localStorage)
 
void PrepareColorBlend (LocalStorage *localStorage)
 
void PrepareBlend (mitk::DataNode *datanode, LocalStorage *localStorage)
 
float CalculateLayerDepth (mitk::BaseRenderer *renderer)
 This method uses the vtkCamera clipping range and the layer property to calculate the depth of the object (e.g. image or contour). The depth is used to keep the correct order for the final VTK rendering. More...
 
void ApplyLookuptable (mitk::BaseRenderer *renderer, const mitk::DataNode *dataNode, vtkMitkLevelWindowFilter *levelFilter)
 This method applies (or modifies) the lookuptable for all types of images. More...
 
void ApplyLevelWindow (mitk::BaseRenderer *renderer, const mitk::DataNode *dataNode, vtkMitkLevelWindowFilter *levelFilter)
 Apply the level window for the given renderer. More...
 
void ApplyOpacity (mitk::BaseRenderer *renderer)
 Set the opacity of the actor. More...
 
bool RenderingGeometryIntersectsImage (const PlaneGeometry *renderingGeometry, SlicedGeometry3D *imageGeometry)
 Calculates whether the given rendering geometry intersects the given SlicedGeometry3D. More...
 
- Protected Member Functions inherited from mitk::VtkMapper
 VtkMapper ()
 
 ~VtkMapper () override
 
- Protected Member Functions inherited from mitk::Mapper
 Mapper ()
 explicit constructor which disallows implicit conversions More...
 
 ~Mapper () override
 virtual destructor in order to derive from this class More...
 
virtual void CalculateTimeStep (BaseRenderer *renderer)
 Updates the time step, which is sometimes needed in subclasses. More...
 
virtual void ResetMapper (BaseRenderer *)
 Reset the mapper (i.e., make sure that nothing is displayed) if no valid data is present. In most cases the reimplemented function disables the according actors (toggling visibility off) More...
 

Additional Inherited Members

- Protected Attributes inherited from mitk::Mapper
mitk::DataNode * m_DataNode
 

Detailed Description

Mapper to resample and display 2D slices of registration evaluation visualization.

Definition at line 55 of file mitkRegEvaluationMapper2D.h.

Constructor & Destructor Documentation

◆ RegEvaluationMapper2D()

mitk::RegEvaluationMapper2D::RegEvaluationMapper2D ( )
protected

Default constructor

◆ ~RegEvaluationMapper2D()

mitk::RegEvaluationMapper2D::~RegEvaluationMapper2D ( )
overrideprotected

Default deconstructor

Member Function Documentation

◆ ApplyLevelWindow()

void mitk::RegEvaluationMapper2D::ApplyLevelWindow ( mitk::BaseRenderer *  renderer,
const mitk::DataNode *  dataNode,
vtkMitkLevelWindowFilter *  levelFilter 
)
protected

Apply the level window for the given renderer.

Warning
To use the level window, the property 'LevelWindow' must be set and an 'Image Rendering.Mode' which uses the level window must be set.
Parameters
[in]rendererThe renderer for which to apply the level window.
[in]dataNodeThe data node providing the level window property.
[in]levelFilterThe VTK level window filter to configure.

◆ ApplyLookuptable()

void mitk::RegEvaluationMapper2D::ApplyLookuptable ( mitk::BaseRenderer *  renderer,
const mitk::DataNode *  dataNode,
vtkMitkLevelWindowFilter *  levelFilter 
)
protected

This method applies (or modifies) the lookuptable for all types of images.

Warning
To use the lookup table, the property 'Lookup Table' must be set and a 'Image Rendering.Mode' which uses the lookup table must be set.

◆ ApplyOpacity()

void mitk::RegEvaluationMapper2D::ApplyOpacity ( mitk::BaseRenderer *  renderer)
protected

Set the opacity of the actor.

◆ CalculateLayerDepth()

float mitk::RegEvaluationMapper2D::CalculateLayerDepth ( mitk::BaseRenderer *  renderer)
protected

This method uses the vtkCamera clipping range and the layer property to calculate the depth of the object (e.g. image or contour). The depth is used to keep the correct order for the final VTK rendering.

◆ Clone()

Pointer mitk::RegEvaluationMapper2D::Clone ( ) const

◆ GenerateDataForRenderer()

void mitk::RegEvaluationMapper2D::GenerateDataForRenderer ( mitk::BaseRenderer *  renderer)
overrideprotectedvirtual

Does the actual resampling, without rendering the image yet. All the data is generated inside this method. The vtkProp (or Actor) is filled with content (i.e. the resliced image).

After generation, a 4x4 transformation matrix(t) of the current slice is obtained from the vtkResliceImage object via GetReslicesAxis(). This matrix is applied to each textured plane (actor->SetUserTransform(t)) to transform everything to the actual 3D position (cf. the following image).

Reimplemented from mitk::Mapper.

◆ GeneratePlane()

void mitk::RegEvaluationMapper2D::GeneratePlane ( mitk::BaseRenderer *  renderer,
double  planeBounds[6] 
)
protected

Generates a plane according to the size of the resliced image in millimeters.

In VTK a vtkPlaneSource is defined through three points. The origin and two points defining the axes of the plane (see VTK documentation). The origin is set to (xMin; yMin; Z), where xMin and yMin are the minimal bounds of the resliced image in space. Z is relevant for blending and the layer property. The center of the plane (C) is also the center of the view plane (cf. the image above).

Note
For the standard MITK view with three 2D render windows showing three different slices, three such planes are generated. All these planes are generated in the XY-plane (even if they depict a YZ-slice of the volume).

◆ GetLocalStorage()

LocalStorage* mitk::RegEvaluationMapper2D::GetLocalStorage ( mitk::BaseRenderer *  renderer)

Get the LocalStorage corresponding to the current renderer.

◆ GetMovingImage()

const mitk::Image* mitk::RegEvaluationMapper2D::GetMovingImage ( void  )

Get the moving image to map.

◆ GetMovingNode()

const mitk::DataNode* mitk::RegEvaluationMapper2D::GetMovingNode ( void  )

◆ GetRegistration()

const mitk::MAPRegistrationWrapper* mitk::RegEvaluationMapper2D::GetRegistration ( void  )

Get the target image to map.

◆ GetTargetImage()

const mitk::Image* mitk::RegEvaluationMapper2D::GetTargetImage ( void  )

Get the target image to map.

◆ GetTargetNode()

const mitk::DataNode* mitk::RegEvaluationMapper2D::GetTargetNode ( void  )

◆ GetVtkProp()

vtkProp* mitk::RegEvaluationMapper2D::GetVtkProp ( mitk::BaseRenderer *  renderer)
overridevirtual

Return the VTK prop (actor, assembly, etc.) for the given renderer.

Each subclass must implement this to provide its rendering representation.

Parameters
[in]rendererThe renderer for which the prop is requested.
Returns
Pointer to the vtkProp used for rendering.

Implements mitk::VtkMapper.

◆ mitkClassMacro()

mitk::RegEvaluationMapper2D::mitkClassMacro ( RegEvaluationMapper2D  ,
VtkMapper   
)

Standard class typedefs.

◆ New()

static Pointer mitk::RegEvaluationMapper2D::New ( )
static

Method for creation through the object factory.

◆ PrepareBlend()

void mitk::RegEvaluationMapper2D::PrepareBlend ( mitk::DataNode *  datanode,
LocalStorage *  localStorage 
)
protected

◆ PrepareCheckerBoard()

void mitk::RegEvaluationMapper2D::PrepareCheckerBoard ( mitk::DataNode *  datanode,
LocalStorage *  localStorage 
)
protected

◆ PrepareColorBlend()

void mitk::RegEvaluationMapper2D::PrepareColorBlend ( LocalStorage *  localStorage)
protected

◆ PrepareContour()

void mitk::RegEvaluationMapper2D::PrepareContour ( mitk::DataNode *  datanode,
LocalStorage *  localStorage 
)
protected

◆ PrepareDifference()

void mitk::RegEvaluationMapper2D::PrepareDifference ( LocalStorage *  localStorage)
protected

◆ PrepareWipe()

void mitk::RegEvaluationMapper2D::PrepareWipe ( mitk::DataNode *  datanode,
LocalStorage *  localStorage,
const Point2D &  currentIndex2D 
)
protected

◆ RenderingGeometryIntersectsImage()

bool mitk::RegEvaluationMapper2D::RenderingGeometryIntersectsImage ( const PlaneGeometry *  renderingGeometry,
SlicedGeometry3D *  imageGeometry 
)
protected

Calculates whether the given rendering geometry intersects the given SlicedGeometry3D.

This method checks if the given PlaneGeometry intersects the given SlicedGeometry3D. It calculates the distance of the PlaneGeometry to all 8 cornerpoints of the SlicedGeometry3D. If all distances have the same sign (all positive or all negative) there is no intersection. If the distances have different sign, there is an intersection.

Parameters
renderingGeometry
imageGeometry

◆ SetDefaultProperties()

static void mitk::RegEvaluationMapper2D::SetDefaultProperties ( mitk::DataNode *  node,
mitk::BaseRenderer *  renderer = nullptr,
bool  overwrite = false 
)
static

Set the default properties for general image rendering.

◆ TransformActor()

void mitk::RegEvaluationMapper2D::TransformActor ( mitk::BaseRenderer *  renderer)
protected

Transforms the actor to the actual position in 3D.

Parameters
rendererThe current renderer corresponding to the render window.

◆ Update()

void mitk::RegEvaluationMapper2D::Update ( mitk::BaseRenderer *  renderer)
overridevirtual

Checks whether this mapper needs to update itself and generate data.

Reimplemented from mitk::Mapper.

Member Data Documentation

◆ m_LSH

mitk::LocalStorageHandler<LocalStorage> mitk::RegEvaluationMapper2D::m_LSH

The LocalStorageHandler holds all (three) LocalStorages for the three 2D render windows.

Definition at line 167 of file mitkRegEvaluationMapper2D.h.


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