Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
mitkNodeDisplacementFilter.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkNodeDisplacementFilter_h
14 #define mitkNodeDisplacementFilter_h
15 
16 #include "MitkUSNavigationExports.h"
17 
18 #include <itkProcessObject.h>
19 
20 #include "mitkBaseRenderer.h"
21 #include "mitkCommon.h"
22 #include "mitkNavigationData.h"
24 
25 //MITK
26 
27 namespace mitk {
43  class MITKUSNAVIGATION_EXPORT NodeDisplacementFilter : public NavigationDataPassThroughFilter
44  {
45  public:
47  itkNewMacro(Self);
48 
55  bool AddNode(mitk::DataNode::Pointer node);
56 
62  bool RemoveNode(unsigned int i);
63 
67  virtual int GetNumberOfNodes();
68 
72  virtual mitk::DataNode::Pointer GetNode (unsigned int i = 0);
73 
75  virtual mitk::NavigationData::Pointer GetRawDisplacementNavigationData(unsigned int i = 0);
76 
82  virtual std::vector< mitk::DataNode::Pointer > GetNodes();
83 
93  virtual void SelectInput(int i);
94 
100  itkSetMacro(InitialReferencePose,mitk::NavigationData::Pointer);
101 
105  virtual void ResetNodes();
106 
107  protected:
109  ~NodeDisplacementFilter() override;
110 
111  void GenerateData() override;
112 
116  mitk::Geometry3D::Pointer TransformToGeometry(mitk::AffineTransform3D::Pointer transform);
117 
121  std::vector<mitk::DataNode::Pointer> m_Nodes;
122 
127  std::vector<mitk::AffineTransform3D::Pointer> m_Transforms;
128 
133 
137  mitk::NavigationData::Pointer m_InitialReferencePose;
138  };
139 } // namespace mitk
140 
141 #endif
mitk::NodeDisplacementFilter::m_Nodes
std::vector< mitk::DataNode::Pointer > m_Nodes
All Nodes that are being managed by this Filter.
Definition: mitkNodeDisplacementFilter.h:121
mitkNavigationData.h
itk::SmartPointer< Self >
mitkNavigationDataPassThroughFilter.h
mitk::NodeDisplacementFilter::m_Transforms
std::vector< mitk::AffineTransform3D::Pointer > m_Transforms
The transformation that each node has to be reached from the selected navigation tool....
Definition: mitkNodeDisplacementFilter.h:127
mitk::NodeDisplacementFilter
This filter moves DataNodes relatively to tracking Data from a 6-DoF Sensor.
Definition: mitkNodeDisplacementFilter.h:43
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
mitk::NavigationDataPassThroughFilter
Basis for filters that want to leave the navigation data untouched.
Definition: mitkNavigationDataPassThroughFilter.h:28
mitkCommon.h
mitk::NodeDisplacementFilter::m_SelectedInput
int m_SelectedInput
The Input that is used as a reference to orient the managed nodes.
Definition: mitkNodeDisplacementFilter.h:132
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitk::NodeDisplacementFilter::m_InitialReferencePose
mitk::NavigationData::Pointer m_InitialReferencePose
Definition: mitkNodeDisplacementFilter.h:137
mitkBaseRenderer.h