Medical Imaging Interaction Toolkit  2018.4.99-eed36131
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 NODEDISPLACEMENTFILTER_H_INCLUDED
14 #define NODEDISPLACEMENTFILTER_H_INCLUDED
15 
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 {
44  {
45  public:
47  itkNewMacro(Self);
48 
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
int m_SelectedInput
The Input that is used as a reference to orient the managed nodes.
mitk::NavigationData::Pointer m_InitialReferencePose
DataCollection - Class to facilitate loading/accessing structured data.
Basis for filters that want to leave the navigation data untouched.
#define AddNode(name)
std::vector< mitk::DataNode::Pointer > m_Nodes
All Nodes that are being managed by this Filter.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:40
std::vector< mitk::AffineTransform3D::Pointer > m_Transforms
The transformation that each node has to be reached from the selected navigation tool. The indexes correspond to indexes in the node vector.
This filter moves DataNodes relatively to tracking Data from a 6-DoF Sensor.
#define MITKUSNAVIGATION_EXPORT