Medical Imaging Interaction Toolkit  2022.04.99-8b707dbd
Medical Imaging Interaction Toolkit
mitkVtkAnnotation2D.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 VTKAnnotation2D_H
14 #define VTKAnnotation2D_H
15 
16 #include "mitkVtkAnnotation.h"
17 #include <MitkAnnotationExports.h>
18 #include <vtkSmartPointer.h>
19 
20 class vtkActor2D;
21 class vtkProperty2D;
22 
23 namespace mitk
24 {
30  {
31  public:
33  Annotation::Bounds GetBoundsOnDisplay(BaseRenderer *renderer) const override;
34  void SetBoundsOnDisplay(BaseRenderer *renderer, const Bounds &bounds) override;
35 
36  void SetPosition2D(const Point2D &position2D);
37 
38  Point2D GetPosition2D() const;
39 
40  void SetOffsetVector(const Point2D &OffsetVector);
41 
42  Point2D GetOffsetVector() const;
43 
44  protected:
45  vtkProp *GetVtkProp(BaseRenderer *renderer) const override;
46  void UpdateVtkAnnotation(BaseRenderer *renderer) override;
47  virtual void UpdateVtkAnnotation2D(BaseRenderer *renderer) = 0;
48  virtual vtkActor2D *GetVtkActor2D(BaseRenderer *renderer) const = 0;
49 
51  explicit VtkAnnotation2D();
52 
54  ~VtkAnnotation2D() override;
55 
56  private:
59 
61  VtkAnnotation2D &operator=(const VtkAnnotation2D &);
62  };
63 
64 } // namespace mitk
65 #endif // VTKAnnotation2D_H
The VtkAnnotation2D class is the basis for all VTK based Annotation which create a vtkActor2D element...
Container for position and size on the display.
#define MITKANNOTATION_EXPORT
Organizes the rendering process.
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
The VtkAnnotation class is the base for all Annotation which are using the VTK framework to render th...