VTK  9.3.0
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 
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();
110 
115  int RenderOpaqueGeometry(vtkViewport* viewport) override;
117  int RenderOverlay(vtkViewport* viewport) override;
119 
124 
125 protected:
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
draw an image in a rendered 3D scene
Definition: vtkImageActor.h:38
topologically and geometrically regular array of data
Definition: vtkImageData.h:43
a simple class to control print indentation
Definition: vtkIndent.h:29
represents an 3D object for placement in a rendered scene
Definition: vtkProp3D.h:39
double * GetBounds() override=0
Return a reference to the Prop3D's composite transform.
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:46
An actor that displays text.
static int GetRenderedDPI()
Since a 3D text actor is not pixel-aligned and positioned in 3D space, the text is rendered at a cons...
virtual void SetForceOpaque(bool opaque)
Force the actor to render during the opaque or translucent pass.
vtkImageActor * ImageActor
double * GetBounds() override
Get the bounds for this Prop3D as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
virtual void ForceOpaqueOn()
Force the actor to render during the opaque or translucent pass.
virtual bool GetForceOpaque()
Force the actor to render during the opaque or translucent pass.
int RenderOpaqueGeometry(vtkViewport *viewport) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
virtual void SetTextProperty(vtkTextProperty *p)
Set/Get the text property.
virtual void ForceOpaqueOff()
Force the actor to render during the opaque or translucent pass.
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
int GetBoundingBox(int bbox[4])
Get the vtkTextRenderer-derived bounding box for the given vtkTextProperty and text string str.
vtkImageData * ImageData
std::string LastInputString
virtual void ForceTranslucentOff()
Force the actor to render during the opaque or translucent pass.
void ReleaseGraphicsResources(vtkWindow *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
vtkTextProperty * TextProperty
~vtkTextActor3D() override
virtual void SetForceTranslucent(bool trans)
Force the actor to render during the opaque or translucent pass.
int RenderOverlay(vtkViewport *viewport) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
vtkTimeStamp BuildTime
void ShallowCopy(vtkProp *prop) override
Shallow copy of this text actor.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void ForceTranslucentOn()
Force the actor to render during the opaque or translucent pass.
static vtkTextActor3D * New()
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
virtual int UpdateImageActor()
virtual bool GetForceTranslucent()
Force the actor to render during the opaque or translucent pass.
represent text properties.
record modification and/or execution time
Definition: vtkTimeStamp.h:25
abstract specification for Viewports
Definition: vtkViewport.h:45
window superclass for vtkRenderWindow
Definition: vtkWindow.h:28
void GetBounds(T a, double bds[6])
@ string
Definition: vtkX3D.h:490
int vtkTypeBool
Definition: vtkABI.h:64
#define VTK_SIZEHINT(...)