Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkCameraVisualization.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 CAMERAVISUALIZATION_H_INCLUDED
18 #define CAMERAVISUALIZATION_H_INCLUDED
19 
20 #include "mitkCommon.h"
22 #include "mitkBaseRenderer.h"
23 
24 namespace mitk { class MITKIGT_EXPORT CameraVisualization : public NavigationDataToNavigationDataFilter
33  {
34  public:
35  mitkClassMacro(CameraVisualization, NavigationDataToNavigationDataFilter);
36  itkFactorylessNewMacro(Self)
37  itkCloneMacro(Self)
38 
42  itkSetMacro(DirectionOfProjectionInToolCoordinates, mitk::Vector3D);
43 
47  itkSetMacro(ViewUpInToolCoordinates, mitk::Vector3D);
48 
52  itkSetMacro(FocalLength, float);
53 
57  itkGetConstMacro(DirectionOfProjectionInToolCoordinates, mitk::Vector3D);
58 
62  itkGetConstMacro(ViewUpInToolCoordinates, mitk::Vector3D);
63 
67  itkGetConstMacro(FocalLength, float);
68 
72  virtual void SetRenderer( mitk::BaseRenderer* renderer );
73 
77  virtual const mitk::BaseRenderer* GetRenderer();
78 
88  virtual void SetParameters(const mitk::PropertyList* p) override;
89 
102  mitk::PropertyList::ConstPointer GetParameters() const override;
103 
104  protected:
105  CameraVisualization();
106  virtual ~CameraVisualization();
107 
113  virtual void GenerateData() override;
114 
115  mitk::BaseRenderer::Pointer m_Renderer;
116 
117  Vector3D m_DirectionOfProjectionInToolCoordinates;
118  Vector3D m_ViewUpInToolCoordinates;
119  Vector3D m_DirectionOfProjection;
120  Point3D m_CameraPosition;
121  ScalarType m_FocalLength;
122  };
123 } // namespace mitk
124 #endif
double ScalarType
Organizes the rendering process.
DataCollection - Class to facilitate loading/accessing structured data.
itk::SmartPointer< const Self > ConstPointer
Vector< ScalarType, 3 > Vector3D
Definition: mitkVector.h:134
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44