VTK  9.1.0
vtkBrush.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkBrush.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15
37#ifndef vtkBrush_h
38#define vtkBrush_h
39
40#include "vtkColor.h" // Needed for vtkColor4ub
41#include "vtkObject.h"
42#include "vtkRenderingContext2DModule.h" // For export macro
43
44class vtkImageData;
45
46class VTKRENDERINGCONTEXT2D_EXPORT vtkBrush : public vtkObject
47{
48public:
49 vtkTypeMacro(vtkBrush, vtkObject);
50 void PrintSelf(ostream& os, vtkIndent indent) override;
51
52 static vtkBrush* New();
53
58 void SetColorF(double color[3]);
59
64 void SetColorF(double r, double g, double b);
65
70 void SetColorF(double r, double g, double b, double a);
71
76 void SetOpacityF(double a);
77
81 double GetOpacityF();
82
87 void SetColor(unsigned char color[3]);
88
93 void SetColor(unsigned char r, unsigned char g, unsigned char b);
94
96
100 void SetColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a);
103
108 void SetOpacity(unsigned char a);
109
113 unsigned char GetOpacity();
114
118 void GetColorF(double color[4]);
119
123 void GetColor(unsigned char color[4]);
124
128 unsigned char* GetColor() { return &this->Color[0]; }
129
134
142
144
147 vtkGetObjectMacro(Texture, vtkImageData);
149
154 {
155 Nearest = 0x01,
156 Linear = 0x02,
157 Stretch = 0x04,
158 Repeat = 0x08
159 };
160
162
169 vtkSetMacro(TextureProperties, int);
171
173
176 vtkGetMacro(TextureProperties, int);
178
182 void DeepCopy(vtkBrush* brush);
183
184protected:
186 ~vtkBrush() override;
187
188 // Storage of the color in RGBA format (0-255 per channel).
189 unsigned char* Color;
193
194private:
195 vtkBrush(const vtkBrush&) = delete;
196 void operator=(const vtkBrush&) = delete;
197};
198
199#endif // vtkBrush_h
provides a brush that fills shapes drawn by vtkContext2D.
Definition: vtkBrush.h:47
void SetTexture(vtkImageData *image)
Set the texture that will be used to fill polygons By default, no texture is set.
static vtkBrush * New()
void GetColor(unsigned char color[4])
Get the color of the brush - expects an unsigned char of length 4.
vtkColor4ub GetColorObject()
Get the color of the brush.
void SetColorF(double r, double g, double b)
Set the color of the brush with three component doubles (RGB), ranging from 0.0 to 1....
int TextureProperties
Definition: vtkBrush.h:192
vtkColor4ub BrushColor
Definition: vtkBrush.h:190
void SetColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a)
Set the color of the brush with four component unsigned chars (RGBA), ranging from 0 to 255.
void SetColor(unsigned char r, unsigned char g, unsigned char b)
Set the color of the brush with three component unsigned chars (RGB), ranging from 0 to 255.
unsigned char * Color
Definition: vtkBrush.h:189
void SetOpacity(unsigned char a)
Set the opacity with an unsigned char, ranging from 0 (transparent) to 255 (opaque).
~vtkBrush() override
void SetOpacityF(double a)
Set the opacity with a double, ranging from 0.0 (transparent) to 1.0 (opaque).
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
unsigned char GetOpacity()
Get the opacity ranging from 0 (transparent) to 255(opaque).
void SetColor(unsigned char color[3])
Set the color of the brush with three component unsigned chars (RGB), ranging from 0 to 255.
void SetColorF(double r, double g, double b, double a)
Set the color of the brush with four component doubles (RGBA), ranging from 0.0 to 1....
TextureProperty
Texture properties.
Definition: vtkBrush.h:154
double GetOpacityF()
Get the opacity ranging from 0.0 (transparent) to 1.0(opaque).
unsigned char * GetColor()
Get the color of the brush - gives a pointer to the underlying data.
Definition: vtkBrush.h:128
void SetColorF(double color[3])
Set the color of the brush with three component doubles (RGB), ranging from 0.0 to 1....
void DeepCopy(vtkBrush *brush)
Make a deep copy of the supplied brush.
void GetColorF(double color[4])
Get the color of the brush - expects a double of length 4 to copy into.
vtkImageData * Texture
Definition: vtkBrush.h:191
void SetColor(const vtkColor4ub &color)
Set the color of the brush with four component unsigned chars (RGBA), ranging from 0 to 255.
topologically and geometrically regular array of data
Definition: vtkImageData.h:57
a simple class to control print indentation
Definition: vtkIndent.h:43
abstract base class for most VTK objects
Definition: vtkObject.h:63
@ Color
Definition: vtkX3D.h:52
@ color
Definition: vtkX3D.h:227
@ image
Definition: vtkX3D.h:380