Medical Imaging Interaction Toolkit  2016.11.0
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,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef NODEDISPLACEMENTFILTER_H_INCLUDED
18 #define NODEDISPLACEMENTFILTER_H_INCLUDED
19 
20 #include "MitkUSNavigationExports.h"
21 
22 #include <itkProcessObject.h>
23 
24 #include "mitkBaseRenderer.h"
25 #include "mitkCommon.h"
26 #include "mitkNavigationData.h"
28 
29 //MITK
30 
31 namespace mitk {
47  class MITKUSNAVIGATION_EXPORT NodeDisplacementFilter : public NavigationDataPassThroughFilter
48  {
49  public:
51  itkNewMacro(Self);
52 
60 
66  bool RemoveNode(unsigned int i);
67 
71  virtual int GetNumberOfNodes();
72 
76  virtual mitk::DataNode::Pointer GetNode (unsigned int i = 0);
77 
79  virtual mitk::NavigationData::Pointer GetRawDisplacementNavigationData(unsigned int i = 0);
80 
86  virtual std::vector< mitk::DataNode::Pointer > GetNodes();
87 
97  virtual void SelectInput(int i);
98 
104  itkSetMacro(InitialReferencePose,mitk::NavigationData::Pointer);
105 
109  virtual void ResetNodes();
110 
111  protected:
113  virtual ~NodeDisplacementFilter();
114 
115  virtual void GenerateData() override;
116 
120  mitk::Geometry3D::Pointer TransformToGeometry(mitk::AffineTransform3D::Pointer transform);
121 
125  std::vector<mitk::DataNode::Pointer> m_Nodes;
126 
131  std::vector<mitk::AffineTransform3D::Pointer> m_Transforms;
132 
137 
142  };
143 } // namespace mitk
144 
145 #endif
itk::SmartPointer< Self > Pointer
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:44
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.