35#include <wx/glcanvas.h>
41void piDrawGLThickLine(
float x1,
float y1,
float x2,
float y2, wxPen pen,
58 void SetBackground(
const wxBrush &brush);
59 void SetPen(
const wxPen &pen);
60 void SetBrush(
const wxBrush &brush);
61 void SetTextForeground(
const wxColour &colour);
62 void SetFont(
const wxFont &font);
63 static void SetGLAttrs(
bool highQuality);
64 void SetGLStipple()
const;
66 void SetDC(wxDC *dc_in) { dc = dc_in; }
68 const wxPen &GetPen()
const;
69 const wxBrush &GetBrush()
const;
70 const wxFont &GetFont()
const;
72 void GetSize(wxCoord *width, wxCoord *height)
const;
74 void DrawLine(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2,
75 bool b_hiqual =
true);
76 void DrawLines(
int n, wxPoint points[], wxCoord xoffset = 0,
77 wxCoord yoffset = 0,
bool b_hiqual =
true);
79 void StrokeLine(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2);
80 void StrokeLine(wxPoint a, wxPoint b) { StrokeLine(a.x, a.y, b.x, b.y); }
81 void StrokeLines(
int n, wxPoint *points);
84 void DrawRectangle(wxCoord x, wxCoord y, wxCoord w, wxCoord h);
85 void DrawRoundedRectangle(wxCoord x, wxCoord y, wxCoord w, wxCoord h,
87 void DrawCircle(wxCoord x, wxCoord y, wxCoord radius);
88 void DrawCircle(
const wxPoint &pt, wxCoord radius) {
89 DrawCircle(pt.x, pt.y, radius);
91 void StrokeCircle(wxCoord x, wxCoord y, wxCoord radius);
93 void DrawEllipse(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
94 void DrawPolygon(
int n, wxPoint points[], wxCoord xoffset = 0,
95 wxCoord yoffset = 0,
float scale = 1.0,
float angle = 0.0);
96 void DrawPolygonTessellated(
int n, wxPoint points[], wxCoord xoffset = 0,
98 void StrokePolygon(
int n, wxPoint points[], wxCoord xoffset = 0,
99 wxCoord yoffset = 0,
float scale = 1.0);
101 void DrawBitmap(
const wxBitmap &bitmap, wxCoord x, wxCoord y,
bool usemask);
103 void DrawText(
const wxString &text, wxCoord x, wxCoord y);
104 void GetTextExtent(
const wxString &
string, wxCoord *w, wxCoord *h,
105 wxCoord *descent = NULL, wxCoord *externalLeading = NULL,
106 wxFont *font = NULL);
108 void ResetBoundingBox();
109 void CalcBoundingBox(wxCoord x, wxCoord y);
111 void DestroyClippingRegion() {}
113 wxDC *GetDC()
const {
return dc; }
115 void DrawGLLineArray(
int n,
float *vertex_array,
unsigned char *color_array,
117 void DrawGLLineArray(
int n,
float *vertex_array,
float *color_array,
121 GLfloat *s_odc_tess_work_buf;
124#ifdef USE_ANDROID_GLES2
125 int s_odc_tess_vertex_idx;
126 int s_odc_tess_vertex_idx_this;
127 int s_odc_tess_buf_len;
128 GLenum s_odc_tess_mode;
130 vec4 s_odc_tess_color;
132 GLUtesselator *m_tobj;
138 bool ConfigureBrush();
140 void GLDrawBlendData(wxCoord x, wxCoord y, wxCoord w, wxCoord h,
int format,
141 const unsigned char *data);
143 void drawrrhelperGLES2(wxCoord x0, wxCoord y0, wxCoord r,
int quadrant,
146 wxGLCanvas *glcanvas;
150 wxColour m_textforegroundcolour;
158#if wxUSE_GRAPHICS_CONTEXT
159 wxGraphicsContext *pgc;
164 unsigned int workBufIndex;
Contains view parameters and status information for a chart display viewport.
PlugIn Object Definition/API.