Medical Imaging Interaction Toolkit  2018.4.99-12ad79a3
Medical Imaging Interaction Toolkit

Base class of all Vtk Mappers in order to display primitives by exploiting Vtk functionality. More...

#include <mitkVtkMapper.h>

Inheritance diagram for mitk::VtkMapper:
Collaboration diagram for mitk::VtkMapper:

Classes

class  LocalStorage
 

Public Types

typedef VtkMapper Self
 
typedef Mapper Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
- Public Types inherited from mitk::Mapper
typedef Mapper Self
 
typedef itk::Object Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 

Public Member Functions

virtual std::vector< std::string > GetClassHierarchy () const override
 
virtual const char * GetClassName () const
 
virtual vtkProp * GetVtkProp (mitk::BaseRenderer *renderer)=0
 
virtual bool IsVtkBased () const override
 Returns whether this is an vtk-based mapper. More...
 
void MitkRender (mitk::BaseRenderer *renderer, mitk::VtkPropRenderer::RenderType type) override
 Determines which geometry should be rendered (opaque, translucent, volumetric, overlay) and calls the appropriate function. More...
 
virtual void MitkRenderOverlay (BaseRenderer *renderer)
 Checks visibility and renders the overlay. More...
 
virtual void MitkRenderOpaqueGeometry (BaseRenderer *renderer)
 Checks visibility and renders untransparent geometry. More...
 
virtual void MitkRenderTranslucentGeometry (BaseRenderer *renderer)
 Checks visiblity and renders transparent geometry. More...
 
virtual void MitkRenderVolumetricGeometry (BaseRenderer *renderer)
 Checks visibility and renders volumes. More...
 
virtual bool HasVtkProp (const vtkProp *prop, BaseRenderer *renderer)
 Returns true if this mapper owns the specified vtkProp for the given BaseRenderer. More...
 
virtual void UpdateVtkTransform (mitk::BaseRenderer *renderer)
 Set the vtkTransform of the m_Prop3D for the current time step of renderer. More...
 
virtual void ApplyProperties (vtkActor *actor, mitk::BaseRenderer *renderer)
 Apply color and opacity properties read from the PropertyList. More...
 
void ApplyShaderProperties (mitk::BaseRenderer *)
 
void ApplyColorAndOpacityProperties (mitk::BaseRenderer *renderer, vtkActor *actor) override
 Apply color and opacity properties read from the PropertyList. Called by mapper subclasses. More...
 
virtual void ReleaseGraphicsResources (mitk::BaseRenderer *)
 Release vtk-based graphics resources that are being consumed by this mapper. More...
 
- Public Member Functions inherited from mitk::Mapper
virtual void SetDataNode (DataNode *_arg)
 Set the DataNode containing the data to map. More...
 
virtual DataNodeGetDataNode () const
 Get the DataNode containing the data to map. Method only returns valid DataNode Pointer if the mapper belongs to a data node. Otherwise, the returned DataNode Pointer might be invalid. More...
 
BaseDataGetData () const
 Get the data to map. More...
 
virtual bool GetColor (float rgb[3], BaseRenderer *renderer, const char *name="color") const
 Convenience access method for color properties (instances of ColorProperty) More...
 
virtual bool GetVisibility (bool &visible, BaseRenderer *renderer, const char *name="visible") const
 Convenience access method for visibility properties (instances of BoolProperty) More...
 
virtual bool GetOpacity (float &opacity, BaseRenderer *renderer, const char *name="opacity") const
 Convenience access method for opacity properties (instances of FloatProperty) More...
 
virtual bool GetLevelWindow (LevelWindow &levelWindow, BaseRenderer *renderer, const char *name="levelwindow") const
 Convenience access method for color properties (instances of LevelWindoProperty) More...
 
virtual bool IsVisible (BaseRenderer *renderer, const char *name="visible") const
 Convenience access method for visibility properties (instances of BoolProperty). Return value is the visibility. Default is visible==true, i.e., true is returned even if the property (propertyKey) is not found. More...
 
virtual void Update (BaseRenderer *renderer)
 Calls the time step of the input data for the specified renderer and checks whether the time step is valid and calls method GenerateDataForRenderer() More...
 
int GetTimestep () const
 Returns the current time step as calculated from the renderer. More...
 
virtual bool IsLODEnabled (BaseRenderer *) const
 

Static Public Member Functions

static const char * GetStaticNameOfClass ()
 
- Static Public Member Functions inherited from mitk::Mapper
static const char * GetStaticNameOfClass ()
 
static void SetDefaultProperties (DataNode *node, BaseRenderer *renderer=nullptr, bool overwrite=false)
 Set default values of properties used by this mapper to node. More...
 

Protected Member Functions

 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 GenerateData ()
 Generate the data needed for rendering (independent of a specific renderer) More...
 
virtual void GenerateDataForRenderer (BaseRenderer *)
 Generate the data needed for rendering into renderer. 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::DataNodem_DataNode
 

Detailed Description

Base class of all Vtk Mappers in order to display primitives by exploiting Vtk functionality.

Rendering of opaque, translucent or volumetric geometry and overlays is done in consecutive render passes.

Definition at line 48 of file mitkVtkMapper.h.

Member Typedef Documentation

◆ ConstPointer

Definition at line 51 of file mitkVtkMapper.h.

◆ Pointer

Definition at line 51 of file mitkVtkMapper.h.

◆ Self

Definition at line 51 of file mitkVtkMapper.h.

◆ Superclass

Definition at line 51 of file mitkVtkMapper.h.

Constructor & Destructor Documentation

◆ VtkMapper()

mitk::VtkMapper::VtkMapper ( )
protected

constructor

Definition at line 15 of file mitkVtkMapper.cpp.

◆ ~VtkMapper()

mitk::VtkMapper::~VtkMapper ( )
overrideprotected

virtual destructor in order to derive from this class

Definition at line 19 of file mitkVtkMapper.cpp.

Member Function Documentation

◆ ApplyColorAndOpacityProperties()

void mitk::VtkMapper::ApplyColorAndOpacityProperties ( mitk::BaseRenderer renderer,
vtkActor *  actor 
)
overridevirtual

◆ ApplyProperties()

virtual void mitk::VtkMapper::ApplyProperties ( vtkActor *  actor,
mitk::BaseRenderer renderer 
)
inlinevirtual

Apply color and opacity properties read from the PropertyList.

Deprecated:
(as of 2013_03) Use ApplyColorAndOpacityProperties(mitk::BaseRenderer* renderer, vtkActor * actor) instead

Reimplemented in mitk::GPUVolumeMapper3D, mitk::UnstructuredGridVtkMapper3D, and mitk::VolumeMapperVtkSmart3D.

Definition at line 107 of file mitkVtkMapper.h.

◆ ApplyShaderProperties()

void mitk::VtkMapper::ApplyShaderProperties ( mitk::BaseRenderer )
inline
Deprecated:
(as of 2018_04)

Definition at line 115 of file mitkVtkMapper.h.

◆ GetClassHierarchy()

virtual std::vector<std::string> mitk::VtkMapper::GetClassHierarchy ( ) const
inlineoverridevirtual

◆ GetClassName()

◆ GetStaticNameOfClass()

static const char* mitk::VtkMapper::GetStaticNameOfClass ( )
inlinestatic

Definition at line 51 of file mitkVtkMapper.h.

◆ GetVtkProp()

◆ HasVtkProp()

bool mitk::VtkMapper::HasVtkProp ( const vtkProp *  prop,
BaseRenderer renderer 
)
virtual

Returns true if this mapper owns the specified vtkProp for the given BaseRenderer.

Note: returns false by default; should be implemented for VTK-based Mapper subclasses.

Definition at line 100 of file mitkVtkMapper.cpp.

References GetVtkProp().

◆ IsVtkBased()

bool mitk::VtkMapper::IsVtkBased ( ) const
overridevirtual

Returns whether this is an vtk-based mapper.

Deprecated:
(as of 2013_03) All mappers of superclass VTKMapper are vtk based, use a dynamic_cast instead

Reimplemented from mitk::Mapper.

Definition at line 42 of file mitkVtkMapper.cpp.

◆ MitkRender()

void mitk::VtkMapper::MitkRender ( mitk::BaseRenderer renderer,
mitk::VtkPropRenderer::RenderType  type 
)
overridevirtual

Determines which geometry should be rendered (opaque, translucent, volumetric, overlay) and calls the appropriate function.

Called by mitk::VtkPropRenderer::Render

Implements mitk::Mapper.

Reimplemented in mitk::VtkGLMapperWrapper.

Definition at line 23 of file mitkVtkMapper.cpp.

References MitkRenderOpaqueGeometry(), MitkRenderOverlay(), MitkRenderTranslucentGeometry(), MitkRenderVolumetricGeometry(), mitk::VtkPropRenderer::Opaque, mitk::VtkPropRenderer::Overlay, mitk::VtkPropRenderer::Translucent, and mitk::VtkPropRenderer::Volumetric.

◆ MitkRenderOpaqueGeometry()

void mitk::VtkMapper::MitkRenderOpaqueGeometry ( BaseRenderer renderer)
virtual

Checks visibility and renders untransparent geometry.

Definition at line 60 of file mitkVtkMapper.cpp.

References mitk::Mapper::GetDataNode(), mitk::Mapper::GetVisibility(), mitk::DataNode::GetVisibility(), GetVtkProp(), and mitk::BaseRenderer::GetVtkRenderer().

Referenced by MitkRender().

◆ MitkRenderOverlay()

void mitk::VtkMapper::MitkRenderOverlay ( BaseRenderer renderer)
virtual

Checks visibility and renders the overlay.

Definition at line 47 of file mitkVtkMapper.cpp.

References mitk::Mapper::GetDataNode(), mitk::Mapper::GetVisibility(), mitk::DataNode::GetVisibility(), GetVtkProp(), and mitk::BaseRenderer::GetVtkRenderer().

Referenced by MitkRender().

◆ MitkRenderTranslucentGeometry()

void mitk::VtkMapper::MitkRenderTranslucentGeometry ( BaseRenderer renderer)
virtual

Checks visiblity and renders transparent geometry.

Definition at line 74 of file mitkVtkMapper.cpp.

References mitk::Mapper::GetDataNode(), mitk::Mapper::GetVisibility(), mitk::DataNode::GetVisibility(), GetVtkProp(), and mitk::BaseRenderer::GetVtkRenderer().

Referenced by MitkRender().

◆ MitkRenderVolumetricGeometry()

void mitk::VtkMapper::MitkRenderVolumetricGeometry ( BaseRenderer renderer)
virtual

◆ ReleaseGraphicsResources()

virtual void mitk::VtkMapper::ReleaseGraphicsResources ( mitk::BaseRenderer )
inlinevirtual

Release vtk-based graphics resources that are being consumed by this mapper.

Method called by mitk::VtkPropRenderer. The parameter renderer could be used to determine which graphic resources to release. The local storage is accessible by the parameter renderer. Should be overwritten in subclasses.

Reimplemented in mitk::PointSetVtkMapper3D.

Definition at line 130 of file mitkVtkMapper.h.

Referenced by mitk::VtkPropRenderer::ReleaseGraphicsResources().

◆ UpdateVtkTransform()

void mitk::VtkMapper::UpdateVtkTransform ( mitk::BaseRenderer renderer)
virtual

Set the vtkTransform of the m_Prop3D for the current time step of renderer.

Called by mitk::VtkPropRenderer::Update before rendering. This method will transform all actors (e.g. of an vtkAssembly) according the geometry.

Warning
This method transforms only props which derive from vtkProp3D. Make sure to use vtkAssembly, if you have multiple props. vtkPropAssembly does not work, since it derives from vtkProp.

Reimplemented in mitk::SurfaceVtkMapper2D, mitk::PlaneGeometryDataVtkMapper3D, mitk::PointSetVtkMapper3D, mitk::EnhancedPointSetVtkMapper3D, mitk::PlaneGeometryDataMapper2D, mitk::MeshVtkMapper3D, mitk::SplineVtkMapper3D, and mitk::PlanarFigureVtkMapper3D.

Definition at line 108 of file mitkVtkMapper.cpp.

References mitk::Mapper::GetDataNode(), mitk::Mapper::GetTimestep(), GetVtkProp(), and mitk::DataNode::GetVtkTransform().

Referenced by mitk::VtkPropRenderer::Update().


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