Medical Imaging Interaction Toolkit
2018.4.99-389bf124
Medical Imaging Interaction Toolkit
|
Vtk-based mapper for VolumeData. More...
#include <mitkGPUVolumeMapper3D.h>
Classes | |
class | LocalStorage |
Public Member Functions | |
mitkClassMacro (GPUVolumeMapper3D, VtkMapper) | |
Pointer | Clone () const |
virtual const mitk::Image * | GetInput () |
vtkProp * | GetVtkProp (mitk::BaseRenderer *renderer) override |
void | ApplyProperties (vtkActor *actor, mitk::BaseRenderer *renderer) override |
Apply color and opacity properties read from the PropertyList. More... | |
bool | IsLODEnabled (BaseRenderer *renderer=nullptr) const override |
bool | IsMIPEnabled (BaseRenderer *renderer=nullptr) |
bool | IsGPUEnabled (BaseRenderer *renderer=nullptr) |
bool | IsRAYEnabled (BaseRenderer *renderer=nullptr) |
void | MitkRenderVolumetricGeometry (mitk::BaseRenderer *renderer) override |
Checks visibility and renders volumes. More... | |
![]() | |
virtual std::vector< std::string > | GetClassHierarchy () const override |
virtual const char * | GetClassName () const |
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 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... | |
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... | |
![]() | |
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. Method only returns valid DataNode Pointer if the mapper belongs to a data node. Otherwise, the returned DataNode Pointer might be invalid. More... | |
BaseData * | GetData () 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... | |
Static Public Member Functions | |
static Pointer | New () |
static void | SetDefaultProperties (mitk::DataNode *node, mitk::BaseRenderer *renderer=nullptr, bool overwrite=false) |
![]() | |
static const char * | GetStaticNameOfClass () |
![]() | |
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 | |
GPUVolumeMapper3D () | |
~GPUVolumeMapper3D () override | |
bool | IsRenderable (mitk::BaseRenderer *renderer) |
void | InitCommon () |
void | DeinitCommon () |
void | InitCPU (mitk::BaseRenderer *renderer) |
void | DeinitCPU (mitk::BaseRenderer *renderer) |
void | GenerateDataCPU (mitk::BaseRenderer *renderer) |
bool | InitGPU (mitk::BaseRenderer *renderer) |
void | DeinitGPU (mitk::BaseRenderer *) |
void | GenerateDataGPU (mitk::BaseRenderer *) |
bool | InitRAY (mitk::BaseRenderer *renderer) |
void | DeinitRAY (mitk::BaseRenderer *renderer) |
void | GenerateDataRAY (mitk::BaseRenderer *renderer) |
void | InitVtkMapper (mitk::BaseRenderer *renderer) |
void | GenerateDataForRenderer (mitk::BaseRenderer *renderer) override |
Generate the data needed for rendering into renderer. More... | |
void | CreateDefaultTransferFunctions () |
void | UpdateTransferFunctions (mitk::BaseRenderer *renderer) |
![]() | |
VtkMapper () | |
~VtkMapper () override | |
![]() | |
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 | 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... | |
Protected Attributes | |
vtkSmartPointer< vtkVolume > | m_Volumenullptr |
bool | m_commonInitialized |
vtkSmartPointer< vtkImageChangeInformation > | m_UnitSpacingImageFilter |
vtkSmartPointer< vtkPiecewiseFunction > | m_DefaultOpacityTransferFunction |
vtkSmartPointer< vtkPiecewiseFunction > | m_DefaultGradientTransferFunction |
vtkSmartPointer< vtkColorTransferFunction > | m_DefaultColorTransferFunction |
vtkSmartPointer< vtkPiecewiseFunction > | m_BinaryOpacityTransferFunction |
vtkSmartPointer< vtkPiecewiseFunction > | m_BinaryGradientTransferFunction |
vtkSmartPointer< vtkColorTransferFunction > | m_BinaryColorTransferFunction |
mitk::LocalStorageHandler< LocalStorage > | m_LSH |
![]() | |
mitk::DataNode * | m_DataNode |
Additional Inherited Members | |
![]() | |
typedef VtkMapper | Self |
typedef Mapper | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
![]() | |
typedef Mapper | Self |
typedef itk::Object | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
Vtk-based mapper for VolumeData.
Definition at line 47 of file mitkGPUVolumeMapper3D.h.
|
protected |
Definition at line 128 of file mitkGPUVolumeMapper3D.cpp.
References m_commonInitialized, and m_Volumenullptr.
|
overrideprotected |
Definition at line 134 of file mitkGPUVolumeMapper3D.cpp.
References DeinitCommon().
|
overridevirtual |
Apply color and opacity properties read from the PropertyList.
Reimplemented from mitk::VtkMapper.
Definition at line 412 of file mitkGPUVolumeMapper3D.cpp.
Pointer mitk::GPUVolumeMapper3D::Clone | ( | ) | const |
|
protected |
Definition at line 324 of file mitkGPUVolumeMapper3D.cpp.
References m_BinaryColorTransferFunction, m_BinaryGradientTransferFunction, m_BinaryOpacityTransferFunction, m_DefaultColorTransferFunction, m_DefaultGradientTransferFunction, and m_DefaultOpacityTransferFunction.
Referenced by InitCommon().
|
protected |
Definition at line 152 of file mitkGPUVolumeMapper3D.cpp.
References m_commonInitialized.
Referenced by ~GPUVolumeMapper3D().
|
protected |
Definition at line 113 of file mitkGPUVolumeMapper3D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), GPU_INFO, ls, mitk::GPUVolumeMapper3D::LocalStorage::m_cpuInitialized, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_MapperCPU, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeCPU, and mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyCPU.
Referenced by InitVtkMapper().
|
protected |
|
protected |
Definition at line 532 of file mitkGPUVolumeMapper3D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::BaseRenderer::GetVtkRenderer(), GPU_INFO, ls, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_MapperRAY, mitk::GPUVolumeMapper3D::LocalStorage::m_rayInitialized, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyRAY, and mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeRAY.
Referenced by InitVtkMapper().
|
protected |
Definition at line 285 of file mitkGPUVolumeMapper3D.cpp.
References mitk::Mapper::GetDataNode(), mitk::RenderingManager::GetInstance(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::RenderingManager::GetNextLOD(), IsLODEnabled(), IsMIPEnabled(), ls, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_MapperCPU, and mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyCPU.
Referenced by GenerateDataForRenderer().
|
overrideprotectedvirtual |
Generate the data needed for rendering into renderer.
Reimplemented from mitk::Mapper.
Definition at line 248 of file mitkGPUVolumeMapper3D.cpp.
References GenerateDataCPU(), GenerateDataGPU(), GenerateDataRAY(), GetInput(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::Mapper::GetTimestep(), mitk::Image::GetVtkImageData(), InitCommon(), InitVtkMapper(), IsRenderable(), ls, mitk::GPUVolumeMapper3D::LocalStorage::m_gpuInitialized, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_rayInitialized, m_UnitSpacingImageFilter, and UpdateTransferFunctions().
|
protected |
Definition at line 281 of file mitkGPUVolumeMapper3D.cpp.
Referenced by GenerateDataForRenderer().
|
protected |
Definition at line 552 of file mitkGPUVolumeMapper3D.cpp.
References mitk::Mapper::GetDataNode(), mitk::RenderingManager::GetInstance(), mitk::LocalStorageHandler< L >::GetLocalStorage(), IsLODEnabled(), IsMIPEnabled(), ls, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_MapperRAY, and mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyRAY.
Referenced by GenerateDataForRenderer().
|
virtual |
Definition at line 57 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetData(), and mitk::Mapper::GetDataNode().
Referenced by GenerateDataForRenderer(), and IsRenderable().
|
overridevirtual |
Implements mitk::VtkMapper.
Definition at line 222 of file mitkGPUVolumeMapper3D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), InitCommon(), InitVtkMapper(), IsRenderable(), ls, mitk::GPUVolumeMapper3D::LocalStorage::m_gpuInitialized, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_rayInitialized, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeCPU, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeGPU, m_Volumenullptr, and mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeRAY.
|
protected |
Definition at line 139 of file mitkGPUVolumeMapper3D.cpp.
References CreateDefaultTransferFunctions(), m_commonInitialized, and m_UnitSpacingImageFilter.
Referenced by GenerateDataForRenderer(), and GetVtkProp().
|
protected |
Definition at line 75 of file mitkGPUVolumeMapper3D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::BaseRenderer::GetVtkRenderer(), GPU_INFO, ls, mitk::GPUVolumeMapper3D::LocalStorage::m_cpuInitialized, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_MapperCPU, m_UnitSpacingImageFilter, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeCPU, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyCPU, and mitk::GPUVolumeMapper3D::LocalStorage::m_VtkRenderWindow.
Referenced by InitVtkMapper().
|
protected |
Definition at line 70 of file mitkGPUVolumeMapper3D.cpp.
Referenced by InitVtkMapper().
|
protected |
Definition at line 496 of file mitkGPUVolumeMapper3D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::BaseRenderer::GetRenderWindow(), mitk::BaseRenderer::GetVtkRenderer(), GPU_INFO, ls, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_MapperRAY, mitk::GPUVolumeMapper3D::LocalStorage::m_rayInitialized, mitk::GPUVolumeMapper3D::LocalStorage::m_raySupported, m_UnitSpacingImageFilter, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyRAY, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumeRAY, and mitk::GPUVolumeMapper3D::LocalStorage::m_VtkRenderWindow.
Referenced by InitVtkMapper().
|
protected |
Definition at line 193 of file mitkGPUVolumeMapper3D.cpp.
References DeinitCPU(), DeinitRAY(), GPU_WARN, InitCPU(), InitGPU(), InitRAY(), IsGPUEnabled(), and IsRAYEnabled().
Referenced by GenerateDataForRenderer(), and GetVtkProp().
bool mitk::GPUVolumeMapper3D::IsGPUEnabled | ( | mitk::BaseRenderer * | renderer = nullptr | ) |
Definition at line 489 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetBoolProperty(), mitk::Mapper::GetDataNode(), mitk::LocalStorageHandler< L >::GetLocalStorage(), ls, mitk::GPUVolumeMapper3D::LocalStorage::m_gpuSupported, and m_LSH.
Referenced by InitVtkMapper().
|
overridevirtual |
Returns true if this Mapper currently allows for Level-of-Detail rendering. This reflects whether this Mapper currently invokes StartEvent, EndEvent, and ProgressEvent on BaseRenderer.
Reimplemented from mitk::Mapper.
Definition at line 477 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetBoolProperty(), and mitk::Mapper::GetDataNode().
Referenced by GenerateDataCPU(), and GenerateDataRAY().
bool mitk::GPUVolumeMapper3D::IsMIPEnabled | ( | mitk::BaseRenderer * | renderer = nullptr | ) |
Definition at line 483 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetBoolProperty(), and mitk::Mapper::GetDataNode().
Referenced by GenerateDataCPU(), and GenerateDataRAY().
bool mitk::GPUVolumeMapper3D::IsRAYEnabled | ( | mitk::BaseRenderer * | renderer = nullptr | ) |
Definition at line 581 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetBoolProperty(), mitk::Mapper::GetDataNode(), mitk::LocalStorageHandler< L >::GetLocalStorage(), ls, m_LSH, and mitk::GPUVolumeMapper3D::LocalStorage::m_raySupported.
Referenced by InitVtkMapper().
|
protected |
Definition at line 160 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetBoolProperty(), mitk::Mapper::GetDataNode(), GetInput(), mitk::Mapper::GetTimestep(), mitk::DataNode::GetVisibility(), and mitk::Image::GetVtkImageData().
Referenced by GenerateDataForRenderer(), and GetVtkProp().
mitk::GPUVolumeMapper3D::mitkClassMacro | ( | GPUVolumeMapper3D | , |
VtkMapper | |||
) |
|
overridevirtual |
Checks visibility and renders volumes.
Reimplemented from mitk::VtkMapper.
Definition at line 62 of file mitkGPUVolumeMapper3D.cpp.
References mitk::VtkMapper::MitkRenderVolumetricGeometry().
|
static |
|
static |
Definition at line 417 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::AddProperty(), mitk::DataNode::GetData(), mitk::DataNode::GetProperty(), image, mitk::BoolProperty::New(), mitk::FloatProperty::New(), mitk::TransferFunctionProperty::New(), mitk::TransferFunctionInitializer::New(), mitk::LevelWindowProperty::New(), mitk::TransferFunction::New(), mitk::LevelWindow::SetAuto(), and mitk::DataNode::SetProperty().
|
protected |
Definition at line 352 of file mitkGPUVolumeMapper3D.cpp.
References mitk::DataNode::GetBoolProperty(), mitk::Mapper::GetColor(), mitk::Mapper::GetDataNode(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::DataNode::GetProperty(), mitk::TransferFunctionProperty::GetValue(), ls, m_BinaryColorTransferFunction, m_BinaryGradientTransferFunction, m_BinaryOpacityTransferFunction, mitk::GPUVolumeMapper3D::LocalStorage::m_cpuInitialized, m_DefaultColorTransferFunction, m_DefaultGradientTransferFunction, m_DefaultOpacityTransferFunction, mitk::GPUVolumeMapper3D::LocalStorage::m_gpuInitialized, m_LSH, mitk::GPUVolumeMapper3D::LocalStorage::m_rayInitialized, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyCPU, mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyGPU, and mitk::GPUVolumeMapper3D::LocalStorage::m_VolumePropertyRAY.
Referenced by GenerateDataForRenderer().
|
protected |
Definition at line 110 of file mitkGPUVolumeMapper3D.h.
Referenced by CreateDefaultTransferFunctions(), and UpdateTransferFunctions().
|
protected |
Definition at line 109 of file mitkGPUVolumeMapper3D.h.
Referenced by CreateDefaultTransferFunctions(), and UpdateTransferFunctions().
|
protected |
Definition at line 108 of file mitkGPUVolumeMapper3D.h.
Referenced by CreateDefaultTransferFunctions(), and UpdateTransferFunctions().
|
protected |
Definition at line 103 of file mitkGPUVolumeMapper3D.h.
Referenced by DeinitCommon(), GPUVolumeMapper3D(), and InitCommon().
|
protected |
Definition at line 107 of file mitkGPUVolumeMapper3D.h.
Referenced by CreateDefaultTransferFunctions(), and UpdateTransferFunctions().
|
protected |
Definition at line 106 of file mitkGPUVolumeMapper3D.h.
Referenced by CreateDefaultTransferFunctions(), and UpdateTransferFunctions().
|
protected |
Definition at line 105 of file mitkGPUVolumeMapper3D.h.
Referenced by CreateDefaultTransferFunctions(), and UpdateTransferFunctions().
|
protected |
Definition at line 157 of file mitkGPUVolumeMapper3D.h.
Referenced by DeinitCPU(), DeinitRAY(), GenerateDataCPU(), GenerateDataForRenderer(), GenerateDataRAY(), GetVtkProp(), InitCPU(), InitRAY(), IsGPUEnabled(), IsRAYEnabled(), and UpdateTransferFunctions().
|
protected |
Definition at line 104 of file mitkGPUVolumeMapper3D.h.
Referenced by GenerateDataForRenderer(), InitCommon(), InitCPU(), and InitRAY().
|
protected |
Definition at line 101 of file mitkGPUVolumeMapper3D.h.
Referenced by GetVtkProp(), and GPUVolumeMapper3D().