Manejo de graficos

Solo disponible en BuenasTareas
  • Páginas : 6 (1291 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de mayo de 2011
Leer documento completo
Vista previa del texto
Tarea de investigación #4
Manejo de gráficos

El estándar de ‘C’ no define ninguna función grafica debido a las grandes diferencias entre las interfaces de los distintos tipos de hardware. Nosotros veremos el conjunto de funciones que utiliza Turbo C. La resolución más habitual del modo grafico en Turbo C es de 640X480X16.

Manejo de gráficos en C
Las funciones que llevan a cabo losgráficos en C es permitir generar dibujos y presentaciones de los programas en general (es decir, la forma en que lucen al usuario). Las funciones de salida dependen del adaptador y del monitor que se esté utilizando. El controlador seleccionado se carga desde el disco durante la inicialización de la biblioteca de gráficos llamado initgraph(), y se necesita incluir la librería #include.

Uso decolores
En el modo grafico se pueden realizar diferentes funciones como: dibujar una línea, un rectángulo, un círculo, una elipse, un punto, poner un texto, cambiar color a todos los objetos anteriormente mencionados. Antes de continuar debes saber cuales es la tabla de correspondencia de colores que maneja Turbo C.
setcolor(color);
Donde color es el color que deseamos utilizar, el cual se indica eningles con letras mayúsculas, o igualmente podemos utilizar el código de colores indicado en la tabla anterior.

Inicialización del modo grafico
Para llevar a cabo el adaptador a un modo grafico se utiliza la función initgraph() que inicializa el paquete de gráficos bgi. Su prototipo es el que se muestra a continuación:
_void initgraph(int controlador, int modo, char viadeacceso_

Se cargaen la memoria el controlador de gráficos correspondiente al número determinado por el controlador. El parámetro modo apunta a un entero que especifica el modo de vídeo que van a usar las funciones de gráficos. El parámetro viadeacceso especifica el directorio donde se encuentra el controlador. Si no se especifica se busca en el directorio actual. Los archivos BGI deben de estar disponibles en elsistema ya que contienen los controladores gráficos, sin embargo no es necesario preocuparse por el nombre real del archivo, ya que el controlador queda especificado solamente con su número, para ello graphics.h tiene varias macros.

Para poder trabajar en modo grafico primero deberemos inicializarlo, Las funciones son estas.
detectgraph(int*tarjeta,int*modo);

Detecta el tipo de tarjeta quetenemos instalado. Si en el primer argumento retorna -2 indica que no tenemos ninguna tarjeta gráfica instalada (cosa bastante improbable).
initgraph(int *tarjeta, int *modo, “path”);

Inicializa el modo gráfico (primero hay que usar detectgraph). En path deberemos indicar el directorio donde se encuentra el archivo EGAVGA.BGI.
int graphresult( );

Retorna el estado del modo gráfico. Si nose produce ningún error devuelve 0, de lo contrario devuelve un valor entre -1 y -16.
char grapherrormsg(int error);

Retorna un puntero al mensaje de error indicado por graphresult.

Finalización del modo grafico

Closegraph();
Cierra el modo gráfico y nos devuelve al modo texto.

Restorecrtmode();
Reestablece el modo de video original (anterior a initgraph).

/*Inicializacion delmodo grafico.*/
#include
Main() /*Inicializa y finaliza el modo grafico*/
{
Int tarjeta, modo, error;
Detectgraph(&tarjeta,&modo);
Initgraph(&tarjeta,&modo,”C:\ \TC\BGI);
Error=graphresult();
If(error)
{
Printf(“%s,grapherrormsg(error));
}
Else
{
Getch();
Closegraph();
}
}

Funciones
int getmaxx( );
Retorna la coordenada máxima horizontal, probablemente 639. Ej:hm=getmaxx( );

int getmaxy( );
Retorna la coordenada máxima vertical, probablemente 479. Ej: vm=getmaxy( );

int getx( );
Retorna la coordenada actual horizontal. Ej: hact=getx( );

int gety( );
Retorna la coordenada actual vertical. Ej: vact=gety( );

moveto(intx, int y);
Se mueve a las coordenadas indicadas. Ej: moveto(320,240);

setcolor(color);
Selecciona el color de dibujo y texto...
tracking img