Medical Imaging Interaction Toolkit
2016.11.0
Medical Imaging Interaction Toolkit
|
Vtk-based mapper for cutting 2D slices out of Surfaces. More...
#include <mitkSurfaceVtkMapper2D.h>
Classes | |
class | LocalStorage |
Internal class holding the mapper, actor, etc. for each of the 3 2D render windows. More... | |
Public Types | |
typedef SurfaceVtkMapper2D | Self |
typedef VtkMapper | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
Public Types inherited from mitk::VtkMapper | |
typedef VtkMapper | Self |
typedef Mapper | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
Public Types inherited from mitk::Mapper | |
typedef Mapper | Self |
typedef itk::Object | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
Public Member Functions | |
virtual std::vector< std::string > | GetClassHierarchy () const override |
virtual const char * | GetClassName () const |
Pointer | Clone () const |
virtual const mitk::Surface * | GetInput () const |
virtual vtkProp * | GetVtkProp (mitk::BaseRenderer *renderer) override |
returns the prop assembly More... | |
void | UpdateVtkTransform (mitk::BaseRenderer *) override |
UpdateVtkTransform Overwrite the method of the base class. More... | |
Public Member Functions inherited from mitk::VtkMapper | |
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 | 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 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... | |
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 Pointer | New () |
static void | SetDefaultProperties (mitk::DataNode *node, mitk::BaseRenderer *renderer=NULL, bool overwrite=false) |
set the default properties for this mapper More... | |
Static Public Member Functions inherited from mitk::VtkMapper | |
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< LocalStorage > | m_LSH |
The LocalStorageHandler holds all (three) LocalStorages for the three 2D render windows. More... | |
Public Attributes inherited from mitk::VtkMapper | |
mitk::LocalStorageHandler< VtkMapperLocalStorage > | m_VtkMapperLSH |
Protected Member Functions | |
SurfaceVtkMapper2D () | |
SurfaceVtkMapper2D default constructor. More... | |
virtual | ~SurfaceVtkMapper2D () |
~SurfaceVtkMapper2D default destructor. More... | |
virtual void | GenerateDataForRenderer (mitk::BaseRenderer *renderer) override |
GenerateDataForRenderer produces all the data. More... | |
virtual void | ResetMapper (BaseRenderer *renderer) override |
ResetMapper Called in mitk::Mapper::Update to hide objects. If TimeSlicedGeometry or time step is not valid, reset the mapper. so that nothing is displayed e.g. toggle visiblity of the propassembly. More... | |
void | ApplyAllProperties (BaseRenderer *renderer) |
ApplyAllProperties Pass all the properties to VTK. More... | |
void | Update (BaseRenderer *renderer) override |
Update Check if data should be generated. More... | |
Protected Member Functions inherited from mitk::VtkMapper | |
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 | CalculateTimeStep (BaseRenderer *renderer) |
Updates the time step, which is sometimes needed in subclasses. More... | |
virtual OverlayManager * | GetOverlayManager () const |
Additional Inherited Members | |
Protected Attributes inherited from mitk::Mapper | |
mitk::DataNode * | m_DataNode |
Vtk-based mapper for cutting 2D slices out of Surfaces.
The mapper uses a vtkCutter filter to cut out slices (contours) of the 3D volume and render these slices as vtkPolyData. The data is transformed according to its geometry before cutting, to support the geometry concept of MITK.
Properties: Surface.2D.Line Width: Thickness of the rendered lines in 2D. Surface.2D.Normals.Draw Normals: enables drawing of normals as 3D arrows in the 2D render window. The normals are created with a vtkGlyph3D from the vtkPolyData. Surface.2D.Normals.Draw Inverse Normals: same as normals, but in the other direction. The inverse normals are computed with a vtkReverseSense filter. Surface.2D.Normals.(Inverse) Normals Color: Color of the (inverse) normals. Surface.2D.Normals.(Inverse) Normals Scale Factor: Regulates the size of the normals.
Definition at line 60 of file mitkSurfaceVtkMapper2D.h.
typedef itk::SmartPointer<const Self> mitk::SurfaceVtkMapper2D::ConstPointer |
Definition at line 63 of file mitkSurfaceVtkMapper2D.h.
Definition at line 63 of file mitkSurfaceVtkMapper2D.h.
Definition at line 63 of file mitkSurfaceVtkMapper2D.h.
Definition at line 63 of file mitkSurfaceVtkMapper2D.h.
|
protected |
SurfaceVtkMapper2D default constructor.
Definition at line 106 of file mitkSurfaceVtkMapper2D.cpp.
|
protectedvirtual |
~SurfaceVtkMapper2D default destructor.
Definition at line 110 of file mitkSurfaceVtkMapper2D.cpp.
|
protected |
ApplyAllProperties Pass all the properties to VTK.
renderer | The respective renderer of the mitkRenderWindow. |
Definition at line 265 of file mitkSurfaceVtkMapper2D.cpp.
References mitk::DataNode::GetBoolProperty(), mitk::DataNode::GetColor(), mitk::Mapper::GetDataNode(), mitk::DataNode::GetDoubleProperty(), mitk::DataNode::GetFloatProperty(), mitk::DataNode::GetLevelWindow(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::LevelWindow::GetLowerWindowBound(), mitk::DataNode::GetOpacity(), mitk::DataNode::GetProperty(), mitk::LevelWindow::GetUpperWindowBound(), mitk::VtkScalarModeProperty::GetVtkScalarMode(), mitk::SurfaceVtkMapper2D::LocalStorage::m_Actor, mitk::SurfaceVtkMapper2D::LocalStorage::m_InverseNormalActor, mitk::SurfaceVtkMapper2D::LocalStorage::m_InverseNormalGlyph, m_LSH, mitk::SurfaceVtkMapper2D::LocalStorage::m_Mapper, mitk::SurfaceVtkMapper2D::LocalStorage::m_NormalActor, and mitk::SurfaceVtkMapper2D::LocalStorage::m_NormalGlyph.
Referenced by GenerateDataForRenderer().
Pointer mitk::SurfaceVtkMapper2D::Clone | ( | ) | const |
|
overrideprotectedvirtual |
GenerateDataForRenderer produces all the data.
renderer | The respective renderer of the mitkRenderWindow. |
Reimplemented from mitk::Mapper.
Definition at line 176 of file mitkSurfaceVtkMapper2D.cpp.
References ApplyAllProperties(), mitk::DataNode::GetBoolProperty(), mitk::BaseRenderer::GetCurrentWorldPlaneGeometry(), mitk::DataNode::GetData(), mitk::Mapper::GetDataNode(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::PlaneGeometry::GetNormal(), mitk::BaseGeometry::GetOrigin(), mitk::BaseRenderer::GetTime(), mitk::BaseData::GetTimeGeometry(), mitk::Mapper::GetTimestep(), mitk::Surface::GetVtkPolyData(), mitk::DataNode::GetVtkTransform(), mitk::PlaneGeometry::HasReferenceGeometry(), mitk::BaseGeometry::IsValid(), mitk::SurfaceVtkMapper2D::LocalStorage::m_Actor, mitk::SurfaceVtkMapper2D::LocalStorage::m_Cutter, mitk::SurfaceVtkMapper2D::LocalStorage::m_CuttingPlane, mitk::SurfaceVtkMapper2D::LocalStorage::m_InverseNormalActor, mitk::SurfaceVtkMapper2D::LocalStorage::m_InverseNormalGlyph, mitk::SurfaceVtkMapper2D::LocalStorage::m_InverseNormalMapper, m_LSH, mitk::SurfaceVtkMapper2D::LocalStorage::m_Mapper, mitk::SurfaceVtkMapper2D::LocalStorage::m_NormalActor, mitk::SurfaceVtkMapper2D::LocalStorage::m_NormalGlyph, mitk::SurfaceVtkMapper2D::LocalStorage::m_NormalMapper, mitk::SurfaceVtkMapper2D::LocalStorage::m_PropAssembly, mitk::SurfaceVtkMapper2D::LocalStorage::m_ReverseSense, mitk::New(), and mitk::TimeGeometry::TimePointToTimeStep().
Referenced by Update().
|
inlineoverridevirtual |
Reimplemented from mitk::VtkMapper.
Definition at line 63 of file mitkSurfaceVtkMapper2D.h.
|
virtual |
Reimplemented from mitk::VtkMapper.
|
virtual |
Definition at line 100 of file mitkSurfaceVtkMapper2D.cpp.
References mitk::DataNode::GetData(), and mitk::Mapper::GetDataNode().
|
inlinestatic |
Definition at line 63 of file mitkSurfaceVtkMapper2D.h.
|
overridevirtual |
returns the prop assembly
Implements mitk::VtkMapper.
Definition at line 121 of file mitkSurfaceVtkMapper2D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), m_LSH, and mitk::SurfaceVtkMapper2D::LocalStorage::m_PropAssembly.
|
static |
Referenced by mitk::CoreObjectFactory::CreateMapper().
|
overrideprotectedvirtual |
ResetMapper Called in mitk::Mapper::Update to hide objects. If TimeSlicedGeometry or time step is not valid, reset the mapper. so that nothing is displayed e.g. toggle visiblity of the propassembly.
renderer | The respective renderer of the mitkRenderWindow. |
Reimplemented from mitk::Mapper.
Definition at line 115 of file mitkSurfaceVtkMapper2D.cpp.
References mitk::LocalStorageHandler< L >::GetLocalStorage(), m_LSH, and mitk::SurfaceVtkMapper2D::LocalStorage::m_PropAssembly.
|
static |
set the default properties for this mapper
Definition at line 369 of file mitkSurfaceVtkMapper2D.cpp.
References mitk::IPropertyAliases::AddAlias(), mitk::DataNode::AddProperty(), mitk::CoreServices::GetPropertyAliases(), mitk::BoolProperty::New(), mitk::IntProperty::New(), mitk::FloatProperty::New(), mitk::VtkScalarModeProperty::New(), mitk::ColorProperty::New(), and mitk::Mapper::SetDefaultProperties().
Referenced by mitk::CoreObjectFactory::SetDefaultProperties().
|
overrideprotectedvirtual |
Update Check if data should be generated.
renderer | The respective renderer of the mitkRenderWindow. |
Reimplemented from mitk::Mapper.
Definition at line 127 of file mitkSurfaceVtkMapper2D.cpp.
References mitk::Mapper::CalculateTimeStep(), GenerateDataForRenderer(), mitk::BaseRenderer::GetCurrentWorldPlaneGeometry(), mitk::BaseRenderer::GetCurrentWorldPlaneGeometryUpdateTime(), mitk::DataNode::GetData(), mitk::Mapper::GetDataNode(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::PropertyList::GetMTime(), mitk::DataNode::GetMTime(), mitk::DataNode::GetPropertyList(), mitk::BaseData::GetTimeGeometry(), mitk::DataNode::GetVisibility(), mitk::TimeGeometry::IsValidTimeStep(), mitk::SurfaceVtkMapper2D::LocalStorage::m_LastUpdateTime, m_LSH, and mitk::Surface::UpdateOutputInformation().
|
inlineoverridevirtual |
UpdateVtkTransform Overwrite the method of the base class.
The base class transforms the actor according to the respective geometry which is correct for most cases. This mapper, however, uses a vtkCutter to cut out a contour. To cut out the correct contour, the data has to be transformed beforehand. Else the current plane geometry will point the cutter to en empty location (if the surface does have a geometry, which is a rather rare case).
Reimplemented from mitk::VtkMapper.
Definition at line 164 of file mitkSurfaceVtkMapper2D.h.
mitk::LocalStorageHandler<LocalStorage> mitk::SurfaceVtkMapper2D::m_LSH |
The LocalStorageHandler holds all (three) LocalStorages for the three 2D render windows.
Definition at line 152 of file mitkSurfaceVtkMapper2D.h.
Referenced by ApplyAllProperties(), GenerateDataForRenderer(), GetVtkProp(), ResetMapper(), and Update().