forked from KolibriOS/kolibrios
3cf7852e03
git-svn-id: svn://kolibrios.org@5131 a494cfbc-eb01-0410-851d-a64ba20cac60
118 lines
3.2 KiB
Plaintext
118 lines
3.2 KiB
Plaintext
|
|
SDL_draw 1.2.1
|
|
~~~~~~~~~~~~~~
|
|
The latest version of this library is available from:
|
|
http://sdl-draw.sourceforge.net/
|
|
|
|
This is a simple library to draw basic elements, like points, lines and
|
|
circles, on SDL surfaces.
|
|
|
|
Library API
|
|
~~~~~~~~~~~
|
|
#include "SDL_draw.h"
|
|
|
|
//IMPORTANT: Call this function AFTER the call to 'SDL_SetVideoMode':
|
|
Draw_Init(); //Register the functions for current bpp
|
|
|
|
|
|
void Draw_Pixel(SDL_Surface *super,
|
|
Sint16 x, Sint16 y, Uint32 color);
|
|
|
|
Draw a colored pixel on coordinates x,y.
|
|
|
|
|
|
void Draw_Line(SDL_Surface *super,
|
|
Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2,
|
|
Uint32 color);
|
|
|
|
Draw a line from x1,y1 to x2,y2.
|
|
|
|
|
|
void Draw_Circle(SDL_Surface *super,
|
|
Sint16 x0, Sint16 y0, Uint16 r,
|
|
Uint32 color);
|
|
|
|
Draw a circle with center x0,y0 and radius r.
|
|
|
|
|
|
void Draw_FillCircle(SDL_Surface *super,
|
|
Sint16 x0, Sint16 y0, Uint16 r,
|
|
Uint32 color);
|
|
|
|
Draw a filled circle with center x0,y0 and radius r.
|
|
|
|
|
|
void Draw_HLine(SDL_Surface *super,
|
|
Sint16 x0,Sint16 y0, Sint16 x1,
|
|
Uint32 color);
|
|
|
|
Draw a horizontal line from x0,y0 to x1,y0.
|
|
|
|
|
|
void Draw_VLine(SDL_Surface *super,
|
|
Sint16 x0,Sint16 y0, Sint16 y1,
|
|
Uint32 color);
|
|
|
|
Draw a vertical line from x0,y0 to x0,y1.
|
|
|
|
|
|
void Draw_Rect(SDL_Surface *super,
|
|
Sint16 x,Sint16 y, Uint16 w,Uint16 h,
|
|
Uint32 color);
|
|
|
|
Draw a rectangle with upper left corner in x,y being w the width and h the
|
|
height.
|
|
|
|
|
|
void Draw_FillRect(SDL_Surface *super,
|
|
Sint16 x,Sint16 y, Uint16 w,Uint16 h,
|
|
Uint32 color);
|
|
|
|
The same as above but the rectangle is filled. This function is equivalent
|
|
to SDL_FillRect (is a MACRO).
|
|
|
|
|
|
void Draw_Ellipse(SDL_Surface *super,
|
|
Sint16 x0, Sint16 y0,
|
|
Uint16 Xradius, Uint16 Yradius,
|
|
Uint32 color);
|
|
|
|
Draw a ellipse with center in x0,y0. Xradius is the major axis and Yradius is
|
|
the minor axis.
|
|
|
|
|
|
void Draw_FillEllipse(SDL_Surface *super,
|
|
Sint16 x0, Sint16 y0,
|
|
Uint16 Xradius, Uint16 Yradius,
|
|
Uint32 color);
|
|
|
|
Draw a filled ellipse (same parameters as the above function).
|
|
|
|
|
|
void Draw_Round(SDL_Surface *super,
|
|
Sint16 x0,Sint16 y0, Uint16 w,Uint16 h,
|
|
Uint16 corner, Uint32 color);
|
|
|
|
Draw a rectangle with rounded corners. x0,y0 is the upper left corner of the
|
|
rectangle, w is the width and h is the height. corner is the radius of the
|
|
corner.
|
|
|
|
|
|
void Draw_Round(SDL_Surface *super,
|
|
Sint16 x0,Sint16 y0, Uint16 w,Uint16 h,
|
|
Uint16 corner, Uint32 color);
|
|
|
|
The same as above but the rounded rectangle is filled.
|
|
|
|
|
|
The file sdldrawtest.c is a example application for the library. You can
|
|
compile it using (for GNU Compiler):
|
|
|
|
$ export CFLAGS="`sdl-config --cflags` -I./include"
|
|
$ export LIBS="`sdl-config --libs` ./src/.libs/libSDL_draw.a"
|
|
$ gcc -o sdldrawtest sdldrawtest.c -Wall $CFLAGS $LIBS
|
|
|
|
This library is under the GNU Library General Public License, see the file
|
|
"COPYING" for details.
|
|
|