ACTIVACIÓN DEL CONTROLADOR GRÁFICO


Para emplear las funciones gráficas se debe preferentemente utilizar computadora con monitor a color; indicar en los prototipos de las funciones la directiva #include<graphics.h>, y dentro del programa fuente agregar lo siguiente:

int controlador,modo;

initgraph(&controlador,&modo,"vía_de_acceso");

Para que la función initgraph(); cargue el controlador de gráficos en memoria, el argumento &controlador se reemplaza con el nombre que corresponde al tipo de monitor, por ejemplo CGA, EGA, VGA, etc. ..., el argumento &modo se reemplaza con el nombre del tipo de resolución del monitor y en la "vía_de_acceso" se indica el directorio y subdirectorios donde se encuentran los archivos de extensión BGI; normalmente se acostumbra únicamente indicar las comillas (""), para que de esa forma se busque directamente en el directorio o subdirectorio en uso (obviamente el programa se debe ejecutar encontrándose en el subdirectorio que contiene dichos archivos) "DIRECTORIO BGI".

La alternativa que simplifica lo anterior consiste en indicar para el controlador la macro DETECT que automáticamente identifica o detecta el controlador que corresponde a nuestro equipo y selecciona la mayor resolución posible en el vídeo, estableciendo el valor correspondiente al modo;, esto es:

int controlador = DETECT, modo;

initgraph(&controlador,&modo,"C:\TC\BGI");

A continuación se da una tabla que indica los controladores más comúnmente utilizados, sus modos y valores típicos:
 

controlador
modo
valor equivalente
resolución
CGA
CGAC0
0
320x200
CGAC1
1
320x200
CGAC2
2
320x200
CGAC3
3
320x200
CGAHI
4
640x200
EGA
EGALO
0
640x200
EGAHI
1
640x350
VGA
VGALO
0
640x200
VGAMED
1
640x350
GVGAHI
2
640x480

En algunas versiones de C, como la 2.0, es necesario activar la modalidad gráfica oprimiendo la tecla ALT y sin soltar la letra O; del submenú que aparece, la opción Linker que al seleccionarla nos permite colocar en ON la opción Graphics library.

Al final del programa para restablecer el modo texto debe emplearse alguna de las funciones:

closegraph();

o

restorecrtmode();



Selecciona un tema