Iniciando el Modo Gráfico Conociendo algunas funciones

Anuncio
Iniciando el Modo Gráfico
Para inciar el Modo Gráfico debemos escribir las siguientes sentencias:
int pantalla=DETECT,modo,error;
printf("presione una tecla iniciar el modo grafico!");
_getch();
initgraph(&pantalla,&modo,"");
error=graphresult();
if(error!=grOk)
{
printf("error al iniciar el modo grafico!");
_getch();
exit(0);
}
Con esto estamos diciéndole al compilador que autodetecte el driver correspondiente a
nuestra tarjeta gráfica, que el modo gráfico sea el predeterminado, y que el path hacia la
carpeta "BGI" (donde se encuentran entre otras cosas los drivers de video y las fuentes) es
"C:\BORLANDC\BGI". Con esto tenemos nuestro modo gráfico iniciado. La manera de
terminar el modo gráfico es escribir la sentencia siguiente:
closegraph();
Conociendo algunas funciones gráficas
Es conocida la pobreza de las funciones gráficas incluidas en "graphics.h". A pesar de esto,
vale la pena conocerlas y manejarlas correctamente. Para describirlas, es necesario aclarar
que en su mayoría tratan con coordenadas (iniciales y finales) compuestas por un par
ordenado al estilo (eje_x , eje_y). Conveniremos en que las coordenadas iniciales serán x e
y, y las coordenadas finales serán x2 e y2. De esta manera describiremos la función y a
continuación haremos un ejemplo sencillo. Comencemos:
Dibujar un Circulo
circle(x, y, angulo_inicial, angulo_final, radio);
Aquí tenemos que para hacer el círculo completo necesitamos que el ángulo inicial sea
igual a 0 y el ángulo final a 360. Creo que no hace falta describir para qué se utiliza el
radio. A modo de ejemplo tendremos:
circle(320, 240, 0, 360, 100);
En este ejemplo dibujamos un círculo en el centro de la pantalla (considerando una
resolución de 640x480) con un radio igual a 100.
Dibujar una Elipse
ellipse(x, y, angulo_inicial, angulo_final, radio_en_x, radio_en_y);
Al dibujar la elipse, necesitamos diferir entre radio en x y radio en y, ya que si fuesen
iguales sería un círculo. Ejemplo:
ellipse(320, 240, 0, 360, 50, 100);
En este ejemplo dibujamos la elipse en el centro de la pantalla con un radio en x igual a 50
y un radio en y igual a 100.
Dibujar una Línea
line(x, y, x2, y2);
La línea sólo necesita especificar las coordenadas iniciales y las finales. Como ejemplo:
line(300, 200, 400, 300);
Entonces dibujamos nuestra línea entre las coordenadas iniciales (300,200) y (400,300).
Dibujar un Rectángulo
rectangle(x, y, x2, y2);
Al igual que la línea sólo necesitamos las coordenadas iniciales y las finales. Como
ejemplo:
rectangle(0, 0, 100, 200);
Es necesario aclarar que con este comando es posible crear cuadrados tomando como base
que las distancias numéricas entre x y x2 y entre y e y2 deben ser iguales.
Setear el Color de Línea
setcolor(color_elegido);
El color elegido debe encontrarse entre 0 y 15 en una paleta de 16 colores. Por ejemplo, 0
es negro, 1 es azul, 2 es verde claro, 4 es rojo, 9 es celeste, 15 es blanco, etc. Como
ejemplo:
setcolor(4);
rectangle(100, 100, 200, 200);
En este ejemplo hicimos un cuadrado de color rojo.
Dibujar una Barra
bar(x, y, x2, y2);
Aquí sencillamente dibujamos un rectángulo relleno, ya que la sintaxis de bar es idéntica a
la de rectangle y funciona de igual manera.
setcolor(2);
bar(0, 0, 200, 20);
En el ejemplo dibujamos una barra de 200 de largo y 20 de ancho partiendo de (0,0). La
barra es de color verde claro.
Escribir un Texto posicionado según Coordenadas
outtextxy(x, y, "Este es un texto cualquiera.");
Al escribir este comando sólo debemos dar las coordenadas iniciales a partir de las cuales
se escribirá el texto, y el texto propiamente dicho. A modo de ejemplo:
outtextxy(200, 200, "Texto de Prueba");
Así, escribimos el texto "Texto de Prueba" a partir de las coordenadas (200,200).
Setear Características del Texto
settextstyle(fuente, direccion, tamaño);
La fuente que acepta va desde 0 a 4, donde 0 es la letra por defecto y 4 es gótica. La
dirección puede ser 0 ó 1. 0 es texto con dirección horizontal y 1 con dirección vertical. El
tamaño varía desde 1 a 15. Como ejemplo:
settextstyle(4,0,6);
outtextxy(200, 100, "Texto de Prueba");
En el ejemplo escribimos el texto "Texto de Prueba" en la posición (200,100) con una
fuente gótica, dirección horizontal y tamaño 6.
Limpiar Pantalla
cleardevice();
Aquí cleardevice() se utiliza en forma análoga a clrscr().
Obtener Coordenadas Máximas
int maxx=getmaxx();
int maxy=getmaxy();
En la sintaxis y a su vez ejemplo, lo que estamos haciendo es obtener las coordenadas
máximas sobre el eje x y el eje y. Asignamos estos valores a maxx y a maxy para utilizarlos
luego.
Descargar