SDL_draw Library
Mario Palomo, José de
la
Huerga, Pepe González
SDL_draw 1.2.1 Liberada (screenshots)
A última versão da biblioteca está disponível em:
http://sourceforge.net/projects/sdl-draw/
Esta biblioteca é distribuída sob a licença GNU LGPL (Library
General Public License), veja o arquivo "COPYING" distribuído com o
código fonte da biblioteca para obter mais detalhes.
SDL_draw é uma biblioteca simples para desenhar elementos
básicos,
como pontos, linhas e círculos, sobre uma superfície SDL. Se trata
da extensão que a biblioteca SDL
(Simple DirectMedia Layer) precisava!
Se encontrar algo errado na tradução, por favor avise-nos. Envie uma
mensagem a algum dos fóruns da página desta biblioteca no
SourceForge. Se encontrar erros no textos em inglês (ou mesmo
no
espanhol) avise-nos também.
Se utilizar a biblioteca, nós gostaríamos de saber. Envie-nos uma
mensagem a algum dos fóruns da página desta biblioteca no
SourceForge, e poremos um link de sua página neste sítio.
Projetos que utilizam SDL_draw
API da biblioteca
#include "SDL_draw.h"
void Draw_Pixel(SDL_Surface
*super,
Sint16 x,
Sint16 y,
Uint32
color);
Desenha um ponto colorido na coordenada x, y.
void Draw_Line(SDL_Surface
*super,
Sint16 x1,
Sint16
y1, Sint16 x2, Sint16 y2,
Uint32
color);
Desenha uma linha desde x1, y1 até x2, y2.
void Draw_Circle(SDL_Surface
*super,
Sint16 x0,
Sint16 y0, Uint16 r,
Uint32 color);
Desenha uma circunferência com centro em x0, y0 e com raio r.
void Draw_FillCircle(SDL_Surface
*super,
Sint16 x0, Sint16 y0, Uint16 r,
Uint32 color);
Desenha uma circunferência preenchida com a cor color, com centro
em x0, y0 e raio r.
void Draw_HLine(SDL_Surface
*super,
Sint16
x0,Sint16
y0, Sint16 x1,
Uint32
color);
Desenha uma linha horizontal desde x0, y0 até x1, y0.
void Draw_VLine(SDL_Surface
*super,
Sint16
x0,Sint16
y0, Sint16 y1,
Uint32
color);
Desenha uma linha vertical desde x0, y0 até x0, y1.
void Draw_Rect(SDL_Surface
*super,
Sint16
x,Sint16 y,
Uint16 w,Uint16 h,
Uint32
color);
Desenha um retângulo com o canto superior esquerdo em x, y
sendo w
a largura e h a altura.
void Draw_FillRect(SDL_Surface
*super,
Sint16
x,Sint16 y, Uint16 w,Uint16 h,
Uint32
color);
O mesmo que acima, porém o retângulo é preenchido com a cor
color. Esta função é equivalente à SDL_FillRect (é uma
MACRO).
void Draw_Ellipse(SDL_Surface
*super,
Sint16 x0,
Sint16 y0,
Uint16
Xradius, Uint16 Yradius,
Uint32
color);
Desenha uma elipse com centro em x0, y0. O eixo maior é Xradius e
o
eixo menor é Yradius.
void Draw_FillEllipse(SDL_Surface
*super,
Sint16 x0, Sint16 y0,
Uint16 Xradius, Uint16 Yradius,
Uint32 color);
Desenha uma elipse preenchida (os parâmetros são os mesmos
que os
da função acima).
void Draw_Round(SDL_Surface
*super,
Sint16
x0,Sint16
y0, Uint16 w,Uint16 h,
Uint16
corner,
Uint32 color);
Desenha um retângulo com os cantos arredondados. x0, y0 é o
canto
superior esquerdo, w é a largura e h é a altura. E corner é o raio
do arredondamento.
void Draw_FillRound(SDL_Surface
*super,
Sint16
x0,Sint16
y0, Uint16 w,Uint16 h,
Uint16
corner,
Uint32 color);
O mesmo que acima, porém o retângulo arredondado é preenchido
com a
cor color.
O arquivo sdldrawtest.c é um exemplo de uma aplicação que usa a
biblioteca. Para compilar escreva (para o compilador GNU):
$ 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
Traduzido por Breno Ramalho Lemes (svtvn at users.sourceforge.net)