Medical Imaging Interaction Toolkit
2018.4.99-389bf124
Medical Imaging Interaction Toolkit
|
This filter projects a needle's path onto a plane. More...
#include <mitkNeedleProjectionFilter.h>
Public Member Functions | |
mitkClassMacro (NeedleProjectionFilter, NavigationDataPassThroughFilter) | |
virtual void | SelectInput (int i) |
virtual mitk::AffineTransform3D::Pointer | GetTargetPlane () |
virtual void | SetTargetPlane (mitk::AffineTransform3D::Pointer _arg) |
virtual mitk::PointSet::Pointer | GetProjection () |
void | SetToolAxisForFilter (mitk::Point3D point) |
void | ShowToolAxis (bool enabled) |
![]() | |
mitkClassMacro (NavigationDataPassThroughFilter, 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 NavigationData * | GetInput (void) const |
Get the input of this filter. More... | |
const NavigationData * | GetInput (unsigned int idx) const |
Get the input with id idx of this filter. More... | |
const NavigationData * | GetInput (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... | |
![]() | |
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... | |
NavigationData * | GetOutput (void) |
return the output (output with id 0) of the filter More... | |
NavigationData * | GetOutput (DataObjectPointerArraySizeType idx) |
return the output with id idx of the filter More... | |
NavigationData * | GetOutput (const std::string &navDataName) |
return the output with name navDataName of the filter More... | |
NavigationTool::Pointer | GetToolMetaData (DataObjectPointerArraySizeType idx) |
NavigationTool::Pointer | GetToolMetaData (const std::string &navDataName) |
virtual mitk::NavigationToolStorage::Pointer | GetToolMetaDataCollection () |
virtual void | SetToolMetaDataCollection (mitk::NavigationToolStorage::Pointer _arg) |
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... | |
itk::DataObject::Pointer | MakeOutput (DataObjectPointerArraySizeType idx) override |
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 () |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static Pointer | New () |
Protected Member Functions | |
NeedleProjectionFilter () | |
~NeedleProjectionFilter () override | |
void | GenerateData () override |
void | InitializeOriginalPoints (mitk::Point3D toolAxis, bool showToolAxis) |
mitk::AffineTransform3D::Pointer | NavigationDataToTransform (const mitk::NavigationData *nd) |
Creates an Affine Transformation from a Navigation Data Object. More... | |
mitk::Geometry3D::Pointer | TransformToGeometry (mitk::AffineTransform3D::Pointer transform) |
Creates an Geometry 3D Object from an AffineTransformation. More... | |
![]() | |
NavigationDataPassThroughFilter () | |
~NavigationDataPassThroughFilter () override | |
void | GenerateData () override |
Passes navigation data from all inputs to all outputs. If a subclass wants to implement its own version of the GenerateData() method it should call this method inside its implementation. More... | |
![]() | |
NavigationDataToNavigationDataFilter () | |
~NavigationDataToNavigationDataFilter () override | |
void | CreateOutputsForAllInputs () |
Create an output for each input. More... | |
![]() | |
NavigationDataSource () | |
~NavigationDataSource () override | |
Protected Attributes | |
mitk::AffineTransform3D::Pointer | m_TargetPlane |
mitk::PointSet::Pointer | m_Projection |
mitk::PointSet::Pointer | m_OriginalPoints |
bool | m_ShowToolAxis |
mitk::Point3D | m_ToolAxis |
int | m_SelectedInput |
![]() | |
std::string | m_Name |
bool | m_IsFrozen |
NavigationToolStorage::Pointer | m_ToolMetaDataCollection |
Additional Inherited Members | |
![]() | |
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 |
This filter projects a needle's path onto a plane.
To use it, hook it up to a NavigationDataStream, select an input and set an AffineTransform 3D that represents the target plane. You can then call GetProjection to retrieve a pointset that represents the projected path. You may change the PointSet's properties, these changes will not be overwritten. If no Input is selected, the target Pointset will not update If no Target Plane is selected, The projection line will always be 40 cm long Any points you add to the pointSet will be overwritten during the next Update. The point with index zero is the Tip of the Needle. The Point with index one is the projection onto the plane.
Projection will happen onto an extension of the plane as well - the filter does not regard boundaries This Filter currently only supports projection of one needle. Extension to multiple needles / planes should be easy.
Definition at line 43 of file mitkNeedleProjectionFilter.h.
|
protected |
Definition at line 20 of file mitkNeedleProjectionFilter.cpp.
References mitk::FillVector3D(), InitializeOriginalPoints(), m_OriginalPoints, m_ShowToolAxis, m_ToolAxis, and MITK_DEBUG.
|
overrideprotected |
Definition at line 81 of file mitkNeedleProjectionFilter.cpp.
|
overrideprotected |
Definition at line 92 of file mitkNeedleProjectionFilter.cpp.
References mitk::NavigationDataPassThroughFilter::GenerateData(), mitk::NavigationDataToNavigationDataFilter::GetInput(), m_OriginalPoints, m_Projection, m_SelectedInput, m_ShowToolAxis, m_TargetPlane, MITK_INFO, NavigationDataToTransform(), mitk::PlaneGeometry::New(), and TransformToGeometry().
|
virtual |
|
virtual |
|
protected |
Internal method for initialization of the projection / tool axis representation by the point set m_OriginalPoints.
Definition at line 39 of file mitkNeedleProjectionFilter.cpp.
References m_OriginalPoints, and mitk::PointSet::New().
Referenced by NeedleProjectionFilter(), SetToolAxisForFilter(), and ShowToolAxis().
mitk::NeedleProjectionFilter::mitkClassMacro | ( | NeedleProjectionFilter | , |
NavigationDataPassThroughFilter | |||
) |
|
protected |
Creates an Affine Transformation from a Navigation Data Object.
Definition at line 155 of file mitkNeedleProjectionFilter.cpp.
References mitk::NavigationData::GetOrientation(), mitk::NavigationData::GetPosition(), and mitk::TransferMatrix().
Referenced by GenerateData().
|
static |
|
virtual |
Definition at line 85 of file mitkNeedleProjectionFilter.cpp.
References m_SelectedInput, and mitkThrow.
|
virtual |
void mitk::NeedleProjectionFilter::SetToolAxisForFilter | ( | mitk::Point3D | point | ) |
Sets the tool axis for this filter. The default tool axis is along the z-axis in tool coordinates.
Definition at line 72 of file mitkNeedleProjectionFilter.cpp.
References InitializeOriginalPoints(), m_OriginalPoints, m_ShowToolAxis, m_ToolAxis, and MITK_DEBUG.
void mitk::NeedleProjectionFilter::ShowToolAxis | ( | bool | enabled | ) |
Sets whether the tool axis should be visualized. This is required if no surface is available. If disabled only the projection and not the axis is shown. It's disabled by default.
Definition at line 66 of file mitkNeedleProjectionFilter.cpp.
References InitializeOriginalPoints(), m_ShowToolAxis, and m_ToolAxis.
|
protected |
Creates an Geometry 3D Object from an AffineTransformation.
Definition at line 185 of file mitkNeedleProjectionFilter.cpp.
References mitk::Geometry3D::New().
Referenced by GenerateData().
|
protected |
Definition at line 70 of file mitkNeedleProjectionFilter.h.
Referenced by GenerateData(), InitializeOriginalPoints(), NeedleProjectionFilter(), and SetToolAxisForFilter().
|
protected |
Definition at line 69 of file mitkNeedleProjectionFilter.h.
Referenced by GenerateData().
|
protected |
Definition at line 74 of file mitkNeedleProjectionFilter.h.
Referenced by GenerateData(), and SelectInput().
|
protected |
Definition at line 71 of file mitkNeedleProjectionFilter.h.
Referenced by GenerateData(), NeedleProjectionFilter(), SetToolAxisForFilter(), and ShowToolAxis().
|
protected |
Definition at line 67 of file mitkNeedleProjectionFilter.h.
Referenced by GenerateData().
|
protected |
Definition at line 72 of file mitkNeedleProjectionFilter.h.
Referenced by NeedleProjectionFilter(), SetToolAxisForFilter(), and ShowToolAxis().