VTK  9.3.1
vtkTextActor3D.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
24 #ifndef vtkTextActor3D_h
25 #define vtkTextActor3D_h
26 
27 #include "vtkProp3D.h"
28 #include "vtkRenderingCoreModule.h" // For export macro
29 #include <string> // for ivar
30 
31 VTK_ABI_NAMESPACE_BEGIN
32 class vtkImageActor;
33 class vtkImageData;
34 class vtkTextProperty;
35 
36 class VTKRENDERINGCORE_EXPORT vtkTextActor3D : public vtkProp3D
37 {
38 public:
39  static vtkTextActor3D* New();
40  vtkTypeMacro(vtkTextActor3D, vtkProp3D);
41  void PrintSelf(ostream& os, vtkIndent indent) override;
42 
44 
47  vtkSetStringMacro(Input);
48  vtkGetStringMacro(Input);
50 
52 
55  virtual void SetTextProperty(vtkTextProperty* p);
56  vtkGetObjectMacro(TextProperty, vtkTextProperty);
58 
65  static int GetRenderedDPI() { return 72; }
66 
71  void ShallowCopy(vtkProp* prop) override;
72 
76  double* GetBounds() VTK_SIZEHINT(6) override;
77  void GetBounds(double bounds[6]) { this->vtkProp3D::GetBounds(bounds); }
78 
84  int GetBoundingBox(int bbox[4]);
85 
93  void ReleaseGraphicsResources(vtkWindow*) override;
94 
99  virtual void SetForceOpaque(bool opaque);
100  virtual bool GetForceOpaque();
101  virtual void ForceOpaqueOn();
102  virtual void ForceOpaqueOff();
103  virtual void SetForceTranslucent(bool trans);
104  virtual bool GetForceTranslucent();
105  virtual void ForceTranslucentOn();
106  virtual void ForceTranslucentOff();
109 
115  int RenderOpaqueGeometry(vtkViewport* viewport) override;
116  int RenderTranslucentPolygonalGeometry(vtkViewport* viewport) override;
117  int RenderOverlay(vtkViewport* viewport) override;
119 
124 
125 protected:
126  vtkTextActor3D();
127  ~vtkTextActor3D() override;
128 
129  char* Input;
130 
134 
137 
138  virtual int UpdateImageActor();
139 
140 private:
141  vtkTextActor3D(const vtkTextActor3D&) = delete;
142  void operator=(const vtkTextActor3D&) = delete;
143 };
144 
145 VTK_ABI_NAMESPACE_END
146 #endif
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:45
vtkImageActor * ImageActor
void GetBounds(T a, double bds[6])
vtkTimeStamp BuildTime
double * GetBounds() override=0
Return a reference to the Prop3D's composite transform.
abstract specification for Viewports
Definition: vtkViewport.h:44
virtual int RenderOpaqueGeometry(vtkViewport *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
Definition: vtkProp.h:213
virtual vtkTypeBool HasTranslucentPolygonalGeometry()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
Definition: vtkProp.h:277
virtual int RenderOverlay(vtkViewport *)
Definition: vtkProp.h:216
record modification and/or execution time
Definition: vtkTimeStamp.h:24
represents an 3D object for placement in a rendered scene
Definition: vtkProp3D.h:38
std::string LastInputString
int vtkTypeBool
Definition: vtkABI.h:64
virtual void ReleaseGraphicsResources(vtkWindow *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE Release any graphics resources that are being...
Definition: vtkProp.h:298
window superclass for vtkRenderWindow
Definition: vtkWindow.h:27
draw an image in a rendered 3D scene
Definition: vtkImageActor.h:37
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkImageData * ImageData
topologically and geometrically regular array of data
Definition: vtkImageData.h:42
void ShallowCopy(vtkProp *prop) override
Shallow copy of this vtkProp3D.
static int GetRenderedDPI()
Since a 3D text actor is not pixel-aligned and positioned in 3D space, the text is rendered at a cons...
An actor that displays text.
#define VTK_SIZEHINT(...)
represent text properties.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
Definition: vtkProp.h:214
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkTextProperty * TextProperty