Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitk::TubeGraphVtkMapper3D Class Reference

#include <mitkTubeGraphVtkMapper3D.h>

Inheritance diagram for mitk::TubeGraphVtkMapper3D:
Collaboration diagram for mitk::TubeGraphVtkMapper3D:

Public Types

typedef TubeGraph::EdgeDescriptorType EdgeDescriptorType
 
typedef TubeGraph::VertexDescriptorType VertexDescriptorType
 
- Public Types inherited from mitk::VtkMapper
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

 mitkClassMacro (TubeGraphVtkMapper3D, VtkMapper3D)
 
virtual const TubeGraphGetInput ()
 
virtual vtkProp * GetVtkProp (mitk::BaseRenderer *renderer) override
 
- Public Member Functions inherited from mitk::VtkMapper
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 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 Pointer New ()
 
- 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...
 

Protected Member Functions

 TubeGraphVtkMapper3D ()
 
virtual ~TubeGraphVtkMapper3D ()
 
virtual void GenerateDataForRenderer (mitk::BaseRenderer *renderer) override
 
virtual void GenerateTubeGraphData (mitk::BaseRenderer *renderer)
 
virtual void RenderTubeGraphPropertyInformation (mitk::BaseRenderer *renderer)
 
void GeneratePolyDataForTube (TubeGraphEdge &edge, const TubeGraph::Pointer &graph, const TubeGraphProperty::Pointer &graphProperty, mitk::BaseRenderer *renderer)
 
void GeneratePolyDataForFurcation (TubeGraphVertex &vertex, const TubeGraph::Pointer &graph, mitk::BaseRenderer *renderer)
 
void ClipPolyData (TubeGraphVertex &vertex, const TubeGraph::Pointer &graph, const TubeGraphProperty::Pointer &graphProperty, mitk::BaseRenderer *renderer)
 
- 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 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

- Public Attributes inherited from mitk::VtkMapper
mitk::LocalStorageHandler< VtkMapperLocalStoragem_VtkMapperLSH
 
- Protected Attributes inherited from mitk::Mapper
mitk::DataNodem_DataNode
 

Detailed Description

3D Mapper for mitk::Graph< TubeGraphVertex, TubeGraphEdge >. This mapper creates tubes around each tubular structure by using vtkTubeFilter.

Definition at line 42 of file mitkTubeGraphVtkMapper3D.h.

Member Typedef Documentation

Constructor & Destructor Documentation

mitk::TubeGraphVtkMapper3D::TubeGraphVtkMapper3D ( )
protected

Definition at line 40 of file mitkTubeGraphVtkMapper3D.cpp.

mitk::TubeGraphVtkMapper3D::~TubeGraphVtkMapper3D ( )
protectedvirtual

Definition at line 44 of file mitkTubeGraphVtkMapper3D.cpp.

Member Function Documentation

void mitk::TubeGraphVtkMapper3D::ClipPolyData ( mitk::TubeGraphVertex vertex,
const TubeGraph::Pointer graph,
const TubeGraphProperty::Pointer graphProperty,
mitk::BaseRenderer renderer 
)
protected
void mitk::TubeGraphVtkMapper3D::GenerateDataForRenderer ( mitk::BaseRenderer renderer)
overrideprotectedvirtual

This method is called, each time a specific renderer is updated.

Reimplemented from mitk::Mapper.

Definition at line 58 of file mitkTubeGraphVtkMapper3D.cpp.

References mitk::ImageMappingHelper::map().

void mitk::TubeGraphVtkMapper3D::GeneratePolyDataForFurcation ( mitk::TubeGraphVertex vertex,
const TubeGraph::Pointer graph,
mitk::BaseRenderer renderer 
)
protected
void mitk::TubeGraphVtkMapper3D::GeneratePolyDataForTube ( mitk::TubeGraphEdge edge,
const TubeGraph::Pointer graph,
const TubeGraphProperty::Pointer graphProperty,
mitk::BaseRenderer renderer 
)
protected

Converts a single tube into a vtkPolyData. Each point of the tube surface is labeled with the tube id.

Definition at line 286 of file mitkTubeGraphVtkMapper3D.cpp.

References mitk::TubeGraphEdge::GetElementVector(), mitk::TubeGraphEdge::GetNumberOfElements(), mitk::TubeGraphVertex::GetTubeElement(), and mitk::New().

void mitk::TubeGraphVtkMapper3D::GenerateTubeGraphData ( mitk::BaseRenderer renderer)
protectedvirtual

Generate vtkPolyData containing the tube centerlines and sets these as input for a vtkTubeFilter, which generates tubes around the edges. Also generates vtkActors for each vertex. Here the vtkPolyData are vtkSphereSources. All poly data will be clipped with each other on an furcation. So you get end-caps and connecting pieces from the spheres. Clipping the tubes with each other avoids structures within the general view.

Definition at line 220 of file mitkTubeGraphVtkMapper3D.cpp.

References MITK_INFO.

const mitk::TubeGraph * mitk::TubeGraphVtkMapper3D::GetInput ( void  )
virtual

Returns the input data object of the given filter. In this case, a mitk::Graph< TubeGraphVertex, TubeGraphEdge > is returned.

Definition at line 48 of file mitkTubeGraphVtkMapper3D.cpp.

References GetData().

vtkProp * mitk::TubeGraphVtkMapper3D::GetVtkProp ( mitk::BaseRenderer renderer)
overridevirtual

Implements mitk::VtkMapper.

Definition at line 53 of file mitkTubeGraphVtkMapper3D.cpp.

mitk::TubeGraphVtkMapper3D::mitkClassMacro ( TubeGraphVtkMapper3D  ,
VtkMapper3D   
)
static Pointer mitk::TubeGraphVtkMapper3D::New ( )
static
void mitk::TubeGraphVtkMapper3D::RenderTubeGraphPropertyInformation ( mitk::BaseRenderer renderer)
protectedvirtual

Render only the visual information like color or visibility new.

Definition at line 138 of file mitkTubeGraphVtkMapper3D.cpp.

References MITK_INFO, and mitk::New().


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