VTK  9.7.1
vtkActor2D.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
23 #ifndef vtkActor2D_h
24 #define vtkActor2D_h
25 
26 #include "vtkCoordinate.h" // For vtkViewportCoordinateMacro
27 #include "vtkProp.h"
28 #include "vtkRenderingCoreModule.h" // For export macro
29 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
30 
31 VTK_ABI_NAMESPACE_BEGIN
32 class vtkMapper2D;
33 class vtkProperty2D;
34 
35 class VTKRENDERINGCORE_EXPORT VTK_MARSHALAUTO vtkActor2D : public vtkProp
36 {
37 public:
38  void PrintSelf(ostream& os, vtkIndent indent) override;
39  vtkTypeMacro(vtkActor2D, vtkProp);
40 
46  static vtkActor2D* New();
47 
49 
52  int RenderOverlay(vtkViewport* viewport) override;
53  int RenderOpaqueGeometry(vtkViewport* viewport) override;
54  int RenderTranslucentPolygonalGeometry(vtkViewport* viewport) override;
56 
61 
63 
66  virtual void SetMapper(vtkMapper2D* mapper);
67  vtkGetObjectMacro(Mapper, vtkMapper2D);
69 
71 
74  vtkSetMacro(LayerNumber, int);
75  vtkGetMacro(LayerNumber, int);
77 
82  vtkProperty2D* GetProperty();
83 
87  virtual void SetProperty(vtkProperty2D*);
88 
90 
95  vtkViewportCoordinateMacro(Position);
96  vtkSetObjectMacro(PositionCoordinate, vtkCoordinate);
98 
102  void SetDisplayPosition(int, int);
103 
105 
111  vtkViewportCoordinateMacro(Position2);
112  vtkSetObjectMacro(Position2Coordinate, vtkCoordinate);
114 
116 
122  void SetWidth(double w);
124  double GetWidth();
126  void SetHeight(double h);
128  double GetHeight();
130 
134  vtkMTimeType GetMTime() override;
135 
141  void GetActors2D(vtkPropCollection* pc) override;
142 
146  void ShallowCopy(vtkProp* prop) override;
147 
153  void ReleaseGraphicsResources(vtkWindow*) override;
154 
160  virtual vtkCoordinate* GetActualPositionCoordinate() { return this->PositionCoordinate; }
161 
167  virtual vtkCoordinate* GetActualPosition2Coordinate() { return this->Position2Coordinate; }
168 
169 protected:
170  vtkActor2D();
171  ~vtkActor2D() override;
172 
178 
179 private:
180  vtkActor2D(const vtkActor2D&) = delete;
181  void operator=(const vtkActor2D&) = delete;
182 };
183 
184 VTK_ABI_NAMESPACE_END
185 #endif
vtkMapper2D * Mapper
Definition: vtkActor2D.h:173
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:49
int LayerNumber
Definition: vtkActor2D.h:174
vtkCoordinate * Position2Coordinate
Definition: vtkActor2D.h:177
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:318
abstract specification for Viewports
Definition: vtkViewport.h:46
virtual int RenderOpaqueGeometry(vtkViewport *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
Definition: vtkProp.h:236
virtual vtkTypeBool HasTranslucentPolygonalGeometry()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
Definition: vtkProp.h:300
virtual int RenderOverlay(vtkViewport *)
Definition: vtkProp.h:239
a actor that draws 2D data
Definition: vtkActor2D.h:35
#define VTK_MARSHAL_EXCLUDE_REASON_IS_REDUNDANT
vtkCoordinate * PositionCoordinate
Definition: vtkActor2D.h:176
an ordered list of Props
int vtkTypeBool
Definition: vtkABI.h:64
window superclass for vtkRenderWindow
Definition: vtkWindow.h:41
vtkProperty2D * Property
Definition: vtkActor2D.h:175
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual vtkCoordinate * GetActualPosition2Coordinate()
Return the actual vtkCoordinate reference that the mapper should use to position the actor...
Definition: vtkActor2D.h:167
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems ...
Definition: vtkCoordinate.h:69
#define VTK_MARSHALEXCLUDE(reason)
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
Definition: vtkProp.h:237
represent surface properties of a 2D image
Definition: vtkProperty2D.h:30
#define VTK_MARSHALAUTO
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
abstract class specifies interface for objects which render 2D actors
Definition: vtkMapper2D.h:25