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

Control the position and orientation of rendered slices with NavigationData. More...

#include <mitkNavigationDataSliceVisualization.h>

Inheritance diagram for mitk::NavigationDataSliceVisualization:
Collaboration diagram for mitk::NavigationDataSliceVisualization:

Public Types

enum  ViewDirection {
  Axial, Sagittal, Frontal, AxialOblique,
  SagittalOblique, Oblique
}
 

Public Member Functions

 mitkClassMacro (NavigationDataSliceVisualization, NavigationDataToNavigationDataFilter) static Pointer New()
 
virtual void SetRenderer (BaseRenderer *_arg)
 Set/get the renderer that visualizes the navigation data. More...
 
virtual const BaseRendererGetRenderer ()
 
virtual void SetTipOffset (Vector3D _arg)
 Set/get the tip offset used for plane tracking. More...
 
virtual Vector3D GetTipOffset () const
 
virtual void SetToolTrajectory (Vector3D direction)
 Set/get the tool trajectory used to define the cutting plane normal direction. More...
 
virtual Vector3D GetToolTrajectory () const
 
virtual void SetWorldVerticalVector (Vector3D _arg)
 Set/get the world vertical vector used to define the y-axis of the cutting plane. More...
 
virtual Vector3D GetWorldVerticalVector () const
 
 itkSetEnumMacro (ViewDirection, ViewDirection) itkGetEnumMacro(ViewDirection
 Set/get the orientation of the sliced plane. More...
 
- Public Member Functions inherited from mitk::NavigationDataToNavigationDataFilter
 mitkClassMacro (NavigationDataToNavigationDataFilter, NavigationDataSource)
 
virtual void SetInput (const NavigationData *nd)
 Set the input of this filter. More...
 
virtual void SetInput (unsigned int idx, const NavigationData *nd)
 Set input with id idx of this filter. More...
 
const NavigationDataGetInput (void) const
 Get the input of this filter. More...
 
const NavigationDataGetInput (unsigned int idx) const
 Get the input with id idx of this filter. More...
 
const NavigationDataGetInput (std::string navDataName) const
 Get the input with name navDataName of this filter. More...
 
DataObjectPointerArraySizeType GetInputIndex (std::string navDataName)
 return the index of the input with name navDataName, throw std::invalid_argument exception if that name was not found More...
 
virtual void ConnectTo (mitk::NavigationDataSource *UpstreamFilter)
 Connects the input of this filter to the outputs of the given NavigationDataSource. More...
 
- Public Member Functions inherited from mitk::NavigationDataSource
 mitkClassMacroItkParent (NavigationDataSource, itk::ProcessObject)
 
virtual std::string GetName ()
 
virtual void SetName (std::string _arg)
 Sets the human readable name of this source. There is also a default name, but you can use this method if you need to define it on your own. More...
 
NavigationDataGetOutput (void)
 return the output (output with id 0) of the filter More...
 
NavigationDataGetOutput (DataObjectPointerArraySizeType idx)
 return the output with id idx of the filter More...
 
NavigationDataGetOutput (const std::string &navDataName)
 return the output with name navDataName of the filter More...
 
DataObjectPointerArraySizeType GetOutputIndex (std::string navDataName)
 return the index of the output with name navDataName, -1 if no output with that name was found More...
 
virtual void RegisterAsMicroservice ()
 Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice(). More...
 
virtual void UnRegisterMicroservice ()
 Registers this object as a Microservice, making it available to every module and/or plugin. More...
 
std::string GetMicroserviceID ()
 Returns the id that this device is registered with. The id will only be valid, if the NavigationDataSource has been registered using RegisterAsMicroservice(). More...
 
virtual void GraftNthOutput (unsigned int idx, itk::DataObject *graft)
 Graft the specified DataObject onto this ProcessObject's output. More...
 
virtual void GraftOutput (itk::DataObject *graft)
 Graft the specified DataObject onto this ProcessObject's output. More...
 
virtual itk::DataObject::Pointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
virtual itk::DataObject::Pointer MakeOutput (const DataObjectIdentifierType &name) override
 
virtual void SetParameters (const mitk::PropertyList *)
 Set all filter parameters as the PropertyList p. More...
 
virtual mitk::PropertyList::ConstPointer GetParameters () const
 Get all filter parameters as a PropertyList. More...
 
virtual void Freeze ()
 
virtual void UnFreeze ()
 
virtual bool GetIsFrozen ()
 

Protected Member Functions

 NavigationDataSliceVisualization ()
 
virtual void GenerateData ()
 
- Protected Member Functions inherited from mitk::NavigationDataToNavigationDataFilter
 NavigationDataToNavigationDataFilter ()
 
virtual ~NavigationDataToNavigationDataFilter ()
 
void CreateOutputsForAllInputs ()
 Create an output for each input. More...
 
- Protected Member Functions inherited from mitk::NavigationDataSource
 NavigationDataSource ()
 
virtual ~NavigationDataSource ()
 

Protected Attributes

BaseRenderer::Pointer m_Renderer
 
Vector3D m_TipOffset
 
Vector3D m_ToolTrajectory
 
Vector3D m_WorldVerticalVector
 
ViewDirection m_ViewDirection
 
- Protected Attributes inherited from mitk::NavigationDataSource
std::string m_Name
 
bool m_IsFrozen
 

Additional Inherited Members

- Static Public Attributes inherited from mitk::NavigationDataSource
static const std::string US_INTERFACE_NAME
 These Constants are used in conjunction with Microservices. More...
 
static const std::string US_PROPKEY_DEVICENAME
 
static const std::string US_PROPKEY_ID
 
static const std::string US_PROPKEY_ISACTIVE
 

Detailed Description

Control the position and orientation of rendered slices with NavigationData.

Documentation A NavigationDataToNavigationDataFilter that takes NavigationData as input and sets the position and, optionally, the orientation of the slice plane for a user-specified renderer.

Definition at line 34 of file mitkNavigationDataSliceVisualization.h.

Member Enumeration Documentation

Enumerator
Axial 

Tracked slice planes are NOT re-oriented, only the position of the slice plane is controlled by the input navigation data.

Sagittal 
Frontal 
AxialOblique 

Axial plane "tilted" about the lateral vector so that it is coplanar with the tool trajectory

SagittalOblique 

Sagittal plane "tilted" about the axial vector so that it is coplanar with the tool trajectory

Oblique 

Slice plane normal to the tool trajectory

Definition at line 40 of file mitkNavigationDataSliceVisualization.h.

Constructor & Destructor Documentation

mitk::NavigationDataSliceVisualization::NavigationDataSliceVisualization ( )
protected

Member Function Documentation

virtual const BaseRenderer* mitk::NavigationDataSliceVisualization::GetRenderer ( )
virtual
virtual Vector3D mitk::NavigationDataSliceVisualization::GetTipOffset ( ) const
virtual
virtual Vector3D mitk::NavigationDataSliceVisualization::GetToolTrajectory ( ) const
virtual
virtual Vector3D mitk::NavigationDataSliceVisualization::GetWorldVerticalVector ( ) const
virtual
mitk::NavigationDataSliceVisualization::itkSetEnumMacro ( ViewDirection  ,
ViewDirection   
)

Set/get the orientation of the sliced plane.

Default is Axial.

mitk::NavigationDataSliceVisualization::mitkClassMacro ( NavigationDataSliceVisualization  ,
NavigationDataToNavigationDataFilter   
)
virtual void mitk::NavigationDataSliceVisualization::SetRenderer ( BaseRenderer _arg)
virtual

Set/get the renderer that visualizes the navigation data.

virtual void mitk::NavigationDataSliceVisualization::SetTipOffset ( Vector3D  _arg)
virtual

Set/get the tip offset used for plane tracking.

This is an additional offset vector applied to the input navigation data. It is defined in tool tip coordinates. In other words:

position_slice = position_input + orient_input.rotate(TipOffset)

Default is [0,0,0].

void mitk::NavigationDataSliceVisualization::SetToolTrajectory ( Vector3D  direction)
virtual

Set/get the tool trajectory used to define the cutting plane normal direction.

This vector, defined in tool tip coordinates, applies only when the ViewDirection is Oblique.

Default is [0,0,-1].

Definition at line 37 of file mitkNavigationDataSliceVisualization.cpp.

References mitk::Equal(), and MITK_WARN.

virtual void mitk::NavigationDataSliceVisualization::SetWorldVerticalVector ( Vector3D  _arg)
virtual

Set/get the world vertical vector used to define the y-axis of the cutting plane.

This vector, defined in world coordinates, applies only when the ViewDirection is Oblique. It is projected onto the cutting plane to define the vertical orientation of the slice.

The direction of this vector does not matter (i.e. [0,1,0] is the same as [0,-1,0]). The direction will be determined automatically by choosing the one that is closest to the direction of the y-axis of the PlaneGeometry before each update. This way, the anatomical axis directions that get set initially will be maintained after every update of this filter.

Default is [0,1,0].

Member Data Documentation

BaseRenderer::Pointer mitk::NavigationDataSliceVisualization::m_Renderer
protected

Definition at line 130 of file mitkNavigationDataSliceVisualization.h.

Vector3D mitk::NavigationDataSliceVisualization::m_TipOffset
protected
Vector3D mitk::NavigationDataSliceVisualization::m_ToolTrajectory
protected
ViewDirection mitk::NavigationDataSliceVisualization::m_ViewDirection
protected

Definition at line 134 of file mitkNavigationDataSliceVisualization.h.

Vector3D mitk::NavigationDataSliceVisualization::m_WorldVerticalVector
protected

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