25 #ifndef __vtkContextDevice2D_h
26 #define __vtkContextDevice2D_h
34 class vtkTextProperty;
54 virtual void DrawPoly(
float *points,
int n,
55 unsigned char *colors = 0,
int nc_comps = 0) = 0;
61 virtual void DrawPoints(
float *points,
int n,
unsigned char* colors = 0,
62 int nc_comps = 0) = 0;
71 virtual void DrawPointSprites(
vtkImageData *sprite,
float *points,
int n,
72 unsigned char *colors = 0,
int nc_comps = 0) = 0;
91 virtual void DrawEllipseWedge(
float x,
float y,
float outRx,
float outRy,
92 float inRx,
float inRy,
float startAngle,
100 virtual void DrawEllipticArc(
float x,
float y,
float rX,
float rY,
101 float startAngle,
float stopAngle)=0;
105 virtual void DrawString(
float *point,
const vtkStdString &
string) = 0;
113 virtual void ComputeStringBounds(
const vtkStdString &
string,
114 float bounds[4]) = 0;
127 float bounds[4]) = 0;
132 virtual void DrawImage(
float p[2],
float scale,
vtkImageData *image) = 0;
143 void ApplyPen(
vtkPen *pen);
149 vtkGetObjectMacro(Pen,
vtkPen);
167 void ApplyTextProp(vtkTextProperty *prop);
171 vtkGetObjectMacro(TextProp, vtkTextProperty);
175 virtual void SetColor4(
unsigned char color[4]) = 0;
184 virtual void SetTexture(
vtkImageData* image,
int properties) = 0;
187 virtual void SetPointSize(
float size) = 0;
190 virtual void SetLineWidth(
float width) = 0;
193 virtual void SetLineType(
int type) = 0;
196 virtual int GetWidth() {
return this->Geometry[0]; }
211 virtual void PushMatrix() = 0;
214 virtual void PopMatrix() = 0;
218 virtual void SetClipping(
int *x) = 0;
221 virtual void DisableClipping() = 0;
231 virtual bool GetBufferIdMode()
const;
246 virtual void BufferIdModeEnd();
270 #endif //__vtkContextDevice2D_h
Wrapper around vtkstd::string to keep symbols short.
abstract base class for most VTK objects
abstract specification for Viewports
virtual void Begin(vtkViewport *)
virtual void DrawPolygon(float *, int)
window superclass for vtkRenderWindow
provides a brush that fills shapes drawn by vtkContext2D.
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
represent and manipulate 2D points
topologically and geometrically regular array of data
vtkAbstractContextBufferId * BufferId
virtual void DrawQuadStrip(float *, int)
Abstract class for drawing 2D primitives.
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
virtual void DrawQuad(float *, int)
2D array of ids, used for picking.
represent and manipulate 3x3 transformation matrices
vtkTextProperty * TextProp
String class that stores Unicode text.