Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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
Find image slices visible on a given plane.
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