void ggiGetPixel(ggi_visual vis, int x, int y, ggi_col *color)
Get the color of the pixel at (x,y). Returns 0 if the point lies outside the clipping rectangle.
void ggiPutPixel(ggi_visual vis, int x, int y, ggi_col color);
void ggiPutPixelA(ggi_visual vis, int x, int y, ggi_col color, ggi_alpha alpha);
void ggiDrawPixel(ggi_visual vis, int x, int y);
void ggiDrawPixelA(ggi_visual vis, int x, int y, ggi_alpha alpha);
Draw a pixel at (x,y).
void ggiDrawPixels(ggi_visual vis, ggi_coord coords[], uint count);
Draw several pixels.
void ggiHLine(ggi_visual vis, int x1, int x2, int y);
Draw a horizontal line from (x1,y) to (x2,y). Note: This line is not stippled!
void ggiVLine(ggi_visual vis, int x, int y1, int y2);
Draw a vertical line from (x,y1) to (x,y2). Note: This line is not stippled!
void ggiDrawRect(ggi_visual vis, int x1, int y1, int x2, int y2);
void ggiFillRect(ggi_visual vis, int x1, int y1, int x2, int y2);
Draw/Fill the rectangle ((x1,y1),(x2,y2)).
void ggiLine(ggi_visual vis, int x1, int y1, int x2, int y2);
void ggiLinef(ggi_visual vis, ggi_float x1, ggi_float y1, ggi_float x2, ggi_float y2);
Draw a line from (x1,y1) to (x2,y2).
void ggiDrawLines(ggi_visual vis, ggi_line lines[], uint count);
Draw several lines.
void ggiDrawCircle(ggi_visual vis, int x, int y, uint r);
void ggiFillCircle(ggi_visual vis, int x, int y, uint r);
Draw/Fill a circle with radius r around (x,y).
void ggiDrawEllipse(ggi_visual vis, int x, int y, uint rx, uint ry);
void ggiFillEllipse(ggi_visual vis, int x, int y, uint rx, uint ry);
Draw/Fill an ellipse with radius (rx,ry) around (x,y).
void ggiDrawArc(ggi_visual vis, int x, int y, uint rx, uint ry, ggi_float start, ggi_float end, ggi_bool close);
Draw an arc with radius (rx,ry) around (x,y) between "start" and "end" (degree). If close is GGI_TRUE, the arc will be closed (using arcmode).
void ggiFillArc(ggi_visual vis, int x, int y, uint rx, uint ry, ggi_float start, ggi_float end);
Fill an arc with radius (rx,ry) around (x,y) between "start" and "end" (degree).
void ggiBezier(ggi_visual vis, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4);
Draw a bezier curve.
void ggiTrapezoid(ggi_visual vis, int xl1, int xr1, int y1, int xl2, int xr2, int y2);
Fill a trapezoid.
void ggiTriangle(ggi_visual vis, int x1, int y1, int x2, int y2, int x3, int y3);
Fill a triangle.
void ggiDrawPoly(ggi_visual vis, ggi_coord coords[], uint count);
void ggiFillPoly(ggi_visual vis, ggi_coord coords[], uint count);
Draw/Fill a polygon.
void ggiFillPolys(ggi_visual vis, ggi_coord coords[], uint counts[], uint count);
Fill several (overlapping) polygons.
void ggiScroll( ggi_visual vis, int dx, int dy, int sx, int sy, int width, int height);
Copy the rectangular area ((sx,sy),(sx+width,sy+height)) to (dx,dy).
void ggiBlit(ggi_visual vis, int dx, int dy, ggi_visual src, int sx, int sy, int width, int height);
void ggiStretchBlit(ggi_visual dest, int dx, int dy, int dwidth, int dheight, ggi_visual src, int sx, int sy, int swidth, int sheight);
Copy the rectangular area ((sx,sy),(sx+width,sy+height)) from "src" to (dx,dy). ggiStretchBlit() can scale the image.
void ggiBlitTrans(ggi_visual dest, int dx, int dy, ggi_visual src, int sx, int sy, int width, int height, ggi_col transcol);
void ggiStretchBlitTrans(ggi_visual dest, int dx, int dy, int dwidth, int dheight,ggi_visual src, int sx, int sy, int swidth, int sheight,ggi_col transcol);
Copy the rectangular area ((sx,sy),(sx+width,sy+height)) from "src" to (dx,dy). Pixels with color "transcol" are not drawn. ggiStretchBlitTrans() can scale the image.
void ggiBlitOp(ggi_visual dest, int dx, int dy, ggi_visual src1, ggi_visual src2, int sx, int sy, int width, int height, ggi_operator op);
void ggiStretchBlitOp(ggi_visual dest, int dx, int dy, int dwidth, int dheight, ggi_visual src1, ggi_visual src2, int sx, int sy, int swidth, int sheight, ggi_operator op);
Apply the operator "op" to all pixels of the rectangular areas ((sx,sy),(sx+width,sy+height)) of "src1" and "src2" and draw them only if the result is not 0. ggiStretchBlitOp() can scale the image.