Medical Imaging Interaction Toolkit  2016.11.0
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  VtkMapperLocalStorage
 

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 *renderer)
 SHADERTODO. More...
 
virtual 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 void SetVtkMapperImmediateModeRendering (vtkMapper *mapper)
 Re-issues all drawing commands required to describe the entire scene each time a new frame is required, regardless of actual changes. More...
 
- 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...
 

Public Attributes

mitk::LocalStorageHandler< VtkMapperLocalStoragem_VtkMapperLSH
 

Protected Member Functions

 VtkMapper ()
 
virtual ~VtkMapper ()
 
- Protected Member Functions inherited from mitk::Mapper
 Mapper ()
 explicit constructor which disallows implicit conversions More...
 
virtual ~Mapper ()
 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...
 
virtual OverlayManagerGetOverlayManager () const
 

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 53 of file mitkVtkMapper.h.

Member Typedef Documentation

Definition at line 56 of file mitkVtkMapper.h.

Definition at line 56 of file mitkVtkMapper.h.

Definition at line 56 of file mitkVtkMapper.h.

Definition at line 56 of file mitkVtkMapper.h.

Constructor & Destructor Documentation

mitk::VtkMapper::VtkMapper ( )
protected

constructor

Definition at line 19 of file mitkVtkMapper.cpp.

mitk::VtkMapper::~VtkMapper ( )
protectedvirtual

virtual destructor in order to derive from this class

Definition at line 23 of file mitkVtkMapper.cpp.

Member Function Documentation

void mitk::VtkMapper::ApplyColorAndOpacityProperties ( mitk::BaseRenderer renderer,
vtkActor *  actor 
)
overridevirtual
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, and mitk::UnstructuredGridVtkMapper3D.

Definition at line 118 of file mitkVtkMapper.h.

void mitk::VtkMapper::ApplyShaderProperties ( mitk::BaseRenderer renderer)
virtual std::vector<std::string> mitk::VtkMapper::GetClassHierarchy ( ) const
inlineoverridevirtual
static const char* mitk::VtkMapper::GetStaticNameOfClass ( )
inlinestatic

Definition at line 56 of file mitkVtkMapper.h.

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.

Reimplemented in mitk::CompositeMapper.

Definition at line 125 of file mitkVtkMapper.cpp.

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

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

Implements mitk::Mapper.

Definition at line 57 of file mitkVtkMapper.cpp.

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 27 of file mitkVtkMapper.cpp.

References mitk::VtkMapper::VtkMapperLocalStorage::m_ShaderProgram, mitk::VtkPropRenderer::Opaque, mitk::VtkPropRenderer::Overlay, mitk::VtkPropRenderer::Translucent, and mitk::VtkPropRenderer::Volumetric.

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

Checks visibility and renders untransparent geometry.

Reimplemented in mitk::OdfVtkMapper2D< TPixelType, NrOdfDirections >, mitk::OdfVtkMapper2D< float, QBALL_ODFSIZE >, and mitk::CompositeMapper.

Definition at line 75 of file mitkVtkMapper.cpp.

References mitk::BaseRenderer::GetVtkRenderer().

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

Checks visibility and renders the overlay.

Reimplemented in mitk::OdfVtkMapper2D< TPixelType, NrOdfDirections >, mitk::OdfVtkMapper2D< float, QBALL_ODFSIZE >, and mitk::CompositeMapper.

Definition at line 62 of file mitkVtkMapper.cpp.

References mitk::BaseRenderer::GetVtkRenderer().

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

Checks visiblity and renders transparent geometry.

Reimplemented in mitk::OdfVtkMapper2D< TPixelType, NrOdfDirections >, mitk::OdfVtkMapper2D< float, QBALL_ODFSIZE >, and mitk::CompositeMapper.

Definition at line 89 of file mitkVtkMapper.cpp.

References mitk::BaseRenderer::GetVtkRenderer().

void mitk::VtkMapper::MitkRenderVolumetricGeometry ( BaseRenderer renderer)
virtual
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, and mitk::CompositeMapper.

Definition at line 141 of file mitkVtkMapper.h.

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

void mitk::VtkMapper::SetVtkMapperImmediateModeRendering ( vtkMapper *  mapper)
static

Re-issues all drawing commands required to describe the entire scene each time a new frame is required, regardless of actual changes.

Definition at line 133 of file mitkVtkMapper.cpp.

References mitk::VtkPropRenderer::useImmediateModeRendering().

Referenced by mitk::PlaneGeometryDataVtkMapper3D::GenerateDataForRenderer().

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 139 of file mitkVtkMapper.cpp.

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

Member Data Documentation

mitk::LocalStorageHandler<VtkMapperLocalStorage> mitk::VtkMapper::m_VtkMapperLSH

Definition at line 160 of file mitkVtkMapper.h.


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