Medical Imaging Interaction Toolkit
2018.4.99-389bf124
Medical Imaging Interaction Toolkit
|
Alternative Vtk-based 3D mapper for mitk::PointSet. More...
#include <mitkEnhancedPointSetVtkMapper3D.h>
Public Member Functions | |
mitkClassMacro (EnhancedPointSetVtkMapper3D, VtkMapper) | |
Pointer | Clone () const |
virtual const mitk::PointSet * | GetInput () |
vtkProp * | GetVtkProp (mitk::BaseRenderer *renderer) override |
void | UpdateVtkTransform (mitk::BaseRenderer *renderer) override |
Set the vtkTransform of the m_Prop3D for the current time step of renderer. 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 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 *) |
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... | |
virtual bool | IsLODEnabled (BaseRenderer *) const |
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... | |
Public Attributes | |
LocalStorageHandler< BaseLocalStorage > | m_LSH |
Protected Types | |
typedef mitk::PointSet::PointIdentifier | PointIdentifier |
typedef std::map< PointIdentifier, vtkSphereSource * > | SphereSourceMap |
typedef std::map< PointIdentifier, vtkCubeSource * > | CubeSourceMap |
typedef std::map< PointIdentifier, vtkConeSource * > | ConeSourceMap |
typedef std::map< PointIdentifier, vtkCylinderSource * > | CylinderSourceMap |
typedef std::pair< vtkActor *, mitk::PointSpecificationType > | ActorAndPointType |
typedef std::map< PointIdentifier, ActorAndPointType > | ActorMap |
Protected Member Functions | |
EnhancedPointSetVtkMapper3D () | |
~EnhancedPointSetVtkMapper3D () override | |
void | RemoveEntryFromSourceMaps (mitk::PointSet::PointIdentifier pointID) |
void | DeleteVtkObject (vtkObject *o) |
void | UpdateVtkObjects () |
void | GenerateDataForRenderer (mitk::BaseRenderer *renderer) override |
Generate the data needed for rendering into renderer. More... | |
void | ApplyColorAndOpacityProperties (mitk::BaseRenderer *renderer, vtkActor *actor) override |
Apply color and opacity properties read from the PropertyList. Called by mapper subclasses. More... | |
![]() | |
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 | |
SphereSourceMap | m_SphereSources |
CubeSourceMap | m_CubeSources |
ConeSourceMap | m_ConeSources |
CylinderSourceMap | m_CylinderSources |
ActorMap | m_PointActors |
vtkActor * | m_Contour |
vtkTubeFilter * | m_ContourSource |
vtkAssembly * | m_PropAssembly |
![]() | |
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 |
Alternative Vtk-based 3D mapper for mitk::PointSet.
This class renders mitk::PointSet objects in 3D views. It resembles the standard mitk::PointSetVtkMapper3D, but is designed to enable single points to be rendered with individual appearances.
Instead of assembling one vtkPolyData object containing all points, a list of VTK source objects (spheres, cubes, cones, ...) is maintained. Therefore, the application can change the appearance and/or type of a specific point at runtime, without having to rebuild the
You should use this class instead of the standard mapper if you
Note: the class is still in experimental stage, and the points above marked with (+++) are not yet working correctly. Also, drawing lines between points (contour mode) is not yet supported. The class will be extended so that point representations are stored in a lookup table, which is indexed by point data from the rendered PointSet.
This mapper requires the PointData container to be the same size as the point container.
Definition at line 63 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 102 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 103 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 99 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 98 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 100 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 96 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 97 of file mitkEnhancedPointSetVtkMapper3D.h.
|
protected |
Definition at line 48 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References m_Contour, m_ContourSource, and m_PropAssembly.
|
overrideprotected |
Definition at line 60 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References m_Contour, m_ContourSource, and m_PropAssembly.
|
overrideprotectedvirtual |
Apply color and opacity properties read from the PropertyList. Called by mapper subclasses.
Reimplemented from mitk::VtkMapper.
Definition at line 180 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References mitk::DataNode::GetColor(), mitk::Mapper::GetDataNode(), mitk::DataNode::GetFloatProperty(), GetInput(), mitk::DataNode::GetOpacity(), mitk::PointSet::GetPointSet(), mitk::DataNode::GetProperty(), mitk::GenericLookupTable< T >::GetTableValue(), mitk::Mapper::GetTimestep(), mitk::DataNode::IsVisible(), m_ConeSources, m_CubeSources, m_CylinderSources, m_PointActors, m_SphereSources, mitk::PTCORNER, mitk::PTEDGE, mitk::PTEND, mitk::PTSTART, mitk::PTUNDEFINED, and UpdateVtkObjects().
Referenced by GenerateDataForRenderer().
Pointer mitk::EnhancedPointSetVtkMapper3D::Clone | ( | ) | const |
|
protected |
Definition at line 393 of file mitkEnhancedPointSetVtkMapper3D.cpp.
|
overrideprotectedvirtual |
Generate the data needed for rendering into renderer.
Reimplemented from mitk::Mapper.
Definition at line 346 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References ApplyColorAndOpacityProperties(), mitk::Mapper::GetDataNode(), mitk::LocalStorageHandler< L >::GetLocalStorage(), mitk::Mapper::BaseLocalStorage::IsGenerateDataRequired(), ls, m_LSH, and UpdateVtkObjects().
|
virtual |
Definition at line 43 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References mitk::DataNode::GetData(), and mitk::Mapper::GetDataNode().
Referenced by ApplyColorAndOpacityProperties(), and UpdateVtkObjects().
|
overridevirtual |
Implements mitk::VtkMapper.
Definition at line 55 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References m_PropAssembly.
mitk::EnhancedPointSetVtkMapper3D::mitkClassMacro | ( | EnhancedPointSetVtkMapper3D | , |
VtkMapper | |||
) |
|
static |
|
protected |
Definition at line 399 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References m_ConeSources, m_CubeSources, m_CylinderSources, m_PointActors, m_SphereSources, mitk::PTCORNER, mitk::PTEDGE, mitk::PTEND, mitk::PTSTART, and mitk::PTUNDEFINED.
Referenced by UpdateVtkObjects().
|
static |
Definition at line 372 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References mitk::DataNode::AddProperty(), mitk::BoolProperty::New(), mitk::IntProperty::New(), mitk::FloatProperty::New(), mitk::StringProperty::New(), and mitk::ColorProperty::New().
|
protected |
Definition at line 80 of file mitkEnhancedPointSetVtkMapper3D.cpp.
References GetInput(), mitk::PointSet::GetPointSet(), mitk::Mapper::GetTimestep(), m_ConeSources, m_CubeSources, m_CylinderSources, m_PointActors, m_PropAssembly, m_SphereSources, mitk::PTCORNER, mitk::PTEDGE, mitk::PTEND, mitk::PTSTART, mitk::PTUNDEFINED, and RemoveEntryFromSourceMaps().
Referenced by ApplyColorAndOpacityProperties(), and GenerateDataForRenderer().
|
overridevirtual |
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.
Reimplemented from mitk::VtkMapper.
Definition at line 360 of file mitkEnhancedPointSetVtkMapper3D.cpp.
|
protected |
Definition at line 107 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by ApplyColorAndOpacityProperties(), RemoveEntryFromSourceMaps(), and UpdateVtkObjects().
|
protected |
Definition at line 112 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by EnhancedPointSetVtkMapper3D(), and ~EnhancedPointSetVtkMapper3D().
|
protected |
Definition at line 113 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by EnhancedPointSetVtkMapper3D(), and ~EnhancedPointSetVtkMapper3D().
|
protected |
Definition at line 106 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by ApplyColorAndOpacityProperties(), RemoveEntryFromSourceMaps(), and UpdateVtkObjects().
|
protected |
Definition at line 108 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by ApplyColorAndOpacityProperties(), RemoveEntryFromSourceMaps(), and UpdateVtkObjects().
LocalStorageHandler<BaseLocalStorage> mitk::EnhancedPointSetVtkMapper3D::m_LSH |
Definition at line 80 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by GenerateDataForRenderer().
|
protected |
Definition at line 109 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by ApplyColorAndOpacityProperties(), RemoveEntryFromSourceMaps(), and UpdateVtkObjects().
|
protected |
Definition at line 115 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by EnhancedPointSetVtkMapper3D(), GetVtkProp(), UpdateVtkObjects(), and ~EnhancedPointSetVtkMapper3D().
|
protected |
Definition at line 105 of file mitkEnhancedPointSetVtkMapper3D.h.
Referenced by ApplyColorAndOpacityProperties(), RemoveEntryFromSourceMaps(), and UpdateVtkObjects().