Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkVtkOverlay2D.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 VTKOVERLAY2D_H
18 #define VTKOVERLAY2D_H
19 
20 #include "mitkVtkOverlay.h"
21 #include <MitkCoreExports.h>
22 #include <vtkSmartPointer.h>
23 
24 class vtkActor2D;
25 class vtkProperty2D;
26 
27 namespace mitk
28 {
34  {
35  public:
37  virtual Overlay::Bounds GetBoundsOnDisplay(BaseRenderer *renderer) const override;
38  virtual void SetBoundsOnDisplay(BaseRenderer *renderer, const Bounds &bounds) override;
39 
40  void SetPosition2D(const Point2D &position2D, mitk::BaseRenderer *renderer = NULL);
41 
42  Point2D GetPosition2D(mitk::BaseRenderer *renderer = NULL) const;
43 
44  void SetOffsetVector(const Point2D &OffsetVector, BaseRenderer *renderer = NULL);
45 
46  Point2D GetOffsetVector(mitk::BaseRenderer *renderer = NULL) const;
47 
48  protected:
49  virtual vtkProp *GetVtkProp(BaseRenderer *renderer) const override;
50  virtual void UpdateVtkOverlay(BaseRenderer *renderer) override;
51  virtual void UpdateVtkOverlay2D(BaseRenderer *renderer) = 0;
52  virtual vtkActor2D *GetVtkActor2D(BaseRenderer *renderer) const = 0;
53 
55  explicit VtkOverlay2D();
56 
58  virtual ~VtkOverlay2D();
59 
60  private:
62  VtkOverlay2D(const VtkOverlay2D &);
63 
65  VtkOverlay2D &operator=(const VtkOverlay2D &);
66  };
67 
68 } // namespace mitk
69 #endif // VTKOVERLAY2D_H
#define MITKCORE_EXPORT
The VtkOverlay class is the base for all Overlays which are using the VTK framework to render the ele...
Organizes the rendering process.
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
The VtkOverlay2D class is the basis for all VTK based Overlays which create a vtkActor2D element that...
Container for position and size on the display.
Definition: mitkOverlay.h:40