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
mitkNeedleProjectionFilter.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 mitkNeedleProjectionFilter_h
14 #define mitkNeedleProjectionFilter_h
15 
16 #include "MitkIGTExports.h"
17 
18 // MITK
20 #include <mitkNavigationData.h>
21 #include <mitkPointSet.h>
22 #include <mitkGeometry3D.h>
23 
24 namespace mitk {
44  {
45  public:
47  itkNewMacro(Self);
48 
49  virtual void SelectInput(int i);
50 
51  itkGetMacro(TargetPlane, mitk::AffineTransform3D::Pointer);
52  itkSetMacro(TargetPlane, mitk::AffineTransform3D::Pointer);
53  itkGetMacro(Projection, mitk::PointSet::Pointer);
56  void SetToolAxisForFilter(mitk::Point3D point);
59  void ShowToolAxis(bool enabled);
60 
61  protected:
63  ~NeedleProjectionFilter() override;
64 
65  void GenerateData() override;
66 
67  mitk::AffineTransform3D::Pointer m_TargetPlane;
68 
73 
75 
78  void InitializeOriginalPoints(mitk::Point3D toolAxis, bool showToolAxis);
79 
80 
84  mitk::AffineTransform3D::Pointer NavigationDataToTransform(const mitk::NavigationData * nd);
88  mitk::Geometry3D::Pointer TransformToGeometry(mitk::AffineTransform3D::Pointer transform);
89  };
90 } // namespace mitk
91 
92 
93 #endif
mitk::NeedleProjectionFilter::m_ToolAxis
mitk::Point3D m_ToolAxis
Definition: mitkNeedleProjectionFilter.h:72
mitkNavigationData.h
mitk::NeedleProjectionFilter::m_TargetPlane
mitk::AffineTransform3D::Pointer m_TargetPlane
Definition: mitkNeedleProjectionFilter.h:67
itk::SmartPointer< Self >
mitkGeometry3D.h
mitkNavigationDataPassThroughFilter.h
mitk::NavigationData
Navigation Data.
Definition: mitkNavigationData.h:36
mitkPointSet.h
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::Point< ScalarType, 3 >
mitk::NavigationDataPassThroughFilter
Basis for filters that want to leave the navigation data untouched.
Definition: mitkNavigationDataPassThroughFilter.h:28
mitk::NeedleProjectionFilter::m_ShowToolAxis
bool m_ShowToolAxis
Definition: mitkNeedleProjectionFilter.h:71
mitk::NeedleProjectionFilter::m_OriginalPoints
mitk::PointSet::Pointer m_OriginalPoints
Definition: mitkNeedleProjectionFilter.h:70
mitk::NeedleProjectionFilter::m_SelectedInput
int m_SelectedInput
Definition: mitkNeedleProjectionFilter.h:74
mitk::NeedleProjectionFilter::m_Projection
mitk::PointSet::Pointer m_Projection
Definition: mitkNeedleProjectionFilter.h:69
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitk::NeedleProjectionFilter
This filter projects a needle's path onto a plane.
Definition: mitkNeedleProjectionFilter.h:43