La librería winbgim.h a sido creada originalmente
por Konstantin
Knizhnik's winbgi shareware y posteriormente modificada por Mark
Richardson y Michael Main, esta librería tiene como objetivo emular la
librería graphics.h de Borland C++ y facilitar algunas funciones del Mouse. La
ventaja de esta librería es que nos permite crear aplicaciones gráficas con
compiladores GNU tales como el ambiente de desarrollo Dev C++ de la misma
manera como se crean en el compilador comercial Borland C++.
Originalmente el autor nos ofrecía una colección de archivos que se
debían ubicar en carpetas especiales e incluir ciertos comandos al la
configuración del linker y del compilador, esta operación tenia cierta
complejidad y para muchos se convirtió en un dolor de cabeza.
Con el fin de facilitar el uso de esta librería me tome la libertad de
realizar un instalador para la versión 4.9.9.2 del Dev C++ que realiza todas las configuraciones
necesarias.
Ahora cada ves que queramos realizar un programa con soporte para
gráficos solo es necesario seguir los siguientes pasos:
1 - Crear un nuevo proyecto
2 - Seleccionar una aplicación de consola con gráficos
Y listo!
Esta librería no solo soporta los 16 colores de la
librería graphics.h de Borland mediante las constantes BLACK BLUE GREEN
CYAN RED MAGENTA BROWN LIGHTGRAY DARKGRAY LIGHTBLUE LIGHTGREEN LIGHTCYAN
LIGHTRED LIGHTMAGENTA YELLOW WHITE
sino que es posible usar colores rgb, lo cual nos
da al rededor de 16 millones de colores incrustando el macro
“COLOR(r,g,b)” en donde originalmente estaría el indicado el color.
El resto de las funciones gráficas funcionan igual
que en la librería original graphics.h y pueden encontrarse en la ayuda
del Turbo C++ de Borland o e cualquier manual de este mismo.
Funciones principales de la librería winbgim.h
Función
|
Tarea
|
void circle (int x, int y, int radius);
|
Dibuja un circulo en x,y de radio radius
|
void cleardevice (void);
|
Borra la pantalla
|
void line (int x1, int y1, int x2, int y2);
|
Traza una línea desde x1,y1 hasta x2,y2
|
void lineto (int x, int y)
|
Traza una línea desde la posición actual de
cursor hasta x,y
|
void putpixel (int x, int y, int color);
|
Dibuja un pixel en x,y de color color
|
void rectangle (int left, int top, int right, int bottom);
|
Dibuja un rectangulo de esquenas top,left y
right,bottom
|
void setcolor (int color);
|
Establece el color actual.
|
int mousex(void)
|
Retorna la coordenada x del Mouse relativa a
la esquina superior izquierda
|
int mousey(void)
|
Retorna la coordenada y del Mouse relativa a
la esquina superior izquierda
|
EN
ESTA OCACION PRETENDO ESPLICAR LO QUE ES EL MODO GRAFICO DE DEV C++ ,
CON ALGUNAS FUNCIONES BASICAS, TENEMOS QUE TENER INSTALADO WINBGIM, QUE
ES EL MODO GRAFICO QUE USAREMOS PARA DEV C++.
BUENO PRIMERO QUE NADA ABRIMOS DEV C++.
NOS DIRIJIMOS A FILE /New/Project.
SELECCIONAMOS PROJECT , AL MISMO TIEMPO NOS ABRIRA UNA VENTANA DE NEW PROJECT , SELECCIONAMOS CONSOLEGRAFICS Y DAMOS OK
ESCRIBIMOS EL NOMBRE DEL ARCHIVO Y SELECCIONAMOS LA UBICACION. Y DAMOS EN GUARDAR.
BORRAMOS EL CODIGO QUE NOS APARECE MENOS LA LIBRERIA DE winbgim.h
oprimimos
la tecla F9 para copilarlo nos aparece una ventanapara guardar el main
en este caso yo eh elegido nombrarlo main2 , pero pueden poner el main
1 , por defecto o cualquier nombre.
BUENO AHORA EMPEZAREMOS A PROGRAMAR.
int main() CON ESTO HACEMOS QUE INICIE NUESTRO PROGRAMA EN EL MODO GRAFICO ABRIMOS LLAVES Y ESCRIBIREMOS LO SIGUIENTE.
con initwindow(600,800); // Abre una ventana gráfica de 600x800 pixeles
con el while(!kbhit()); hacemos que la pantalla se mantenga abierta hasta que el usuario presione una tecla.
cerramos llaves del programa.
acontinuacion escribimos entre el initwindow y el while .
outtextxy(12,300,"QUE ONDA "); esta funcion nos permite ingresar texto
su sintaxis es esta. outtextxy(int x,int
y,"QUE ONDA "); int x , es el valor de la cordenada x , int y es el
valor de la cordenada y.
ejecutamos el programa y quedara de la siguiente manera.
acontinuacion haremos que esa palabra tenga un tamaño , un tipo de letra y una posicion (orientacion.) con esta funcion
settextstyle(8,0,1);
settextstyle(LETRA,ORIENTACION,TAMAÑO DE LETRA);
EJECUTAMOS EL PROGRAMA Y QUEDARA ASI.
EN NUETRO CASO EL TAMAÑO A SIDO 8 POR LO QUE LA SINTAXIS ES ESTA.
settextstyle(8,0,8);
ACONTINUACION LE DAREMOS COLOR CON LA
FUNCION setcolor(3); (puede ser uno de los numeros permitidos , puede
ser tambien con la palabra en ingles).
la sintaxis quedaria ahora asi
setcolor(3);
settextstyle(8,0,8);
outtextxy(12,300,"QUE ONDA ");
settextstyle(8,0,8);
outtextxy(12,300,"QUE ONDA ");
ejemplo de programa funcionando
ACONTINUACION INICIAREMOS CON LA CREACION DE ALGUNAS FIGURAS
lineto (int x, int y) Traza una línea desde la posición actual de cursor
hasta x,y EJEMPLO:
lineto(100,100); // Dibuja una línea desde 0,0 hasta 100,100
lineto(200,100);
lineto(300,200);
lineto(200,3);
lineto(200,100);
lineto(300,200);
lineto(200,3);
en este caso inicia en la cordenada 0,0, ya
que no hemos ubicado al cursor, ahora explicare primero el ejemplo con
la localidad por default 0,0
ahora con la funcion:
moveto(60,60); // Pone el cursor en 60,60 cordenadas x,y
queda la sintaxys asi
moveto(60,60); // Pone el cursor en 60,60
lineto(100,100); // Dibuja una línea desde 0,0 hasta 100,100
lineto(200,100);
lineto(300,200);
lineto(200,3);
lineto(100,100); // Dibuja una línea desde 0,0 hasta 100,100
lineto(200,100);
lineto(300,200);
lineto(200,3);
ejemplo del programa funcionando .
BUENO AHORA LES DEJO UN EJEMPLO DE UN ARCHIVO HECHO POR MI , ME DESPIDO .
FUENTE DE CONSULTA:
- http://leviatan.blogcindario.com/2011/04/00003-dev-c-modo-grafico.html
- http://appletenhtml.blogspot.com/2013/04/programacion-grafica-en-dev-c.html
No hay comentarios:
Publicar un comentario