Biblioteca gráfica de C++

C ++ Proporciona una biblioteca de funciones graficas (GRAFHISCS.H) como suplemento alas bibliotecas de los modelos de memoria estándar, incorporado bibliotecas que son especificas del modelo de memoria. Al utilizar el entorno de desarrollo integrado de c++.se produce la carga automática del modelo de memoria adecuado, que con incide con el modelo de memoria seleccionado (consulte el menú que se abre abajo optians/copiler/Medel). La biblioteca grafica, sin embargo, esta separada y no queda incluida automáticamente en tiempo de coplilacion. Por este motivo existen otras dos opciones de utilización de las funciones graficas con c++; la utilización de los archivos .prj o la incorporación de GRAFHICS.LIB e una o mas de las biblioteca estándar.

Recuerde que el archivo de cabecera para gráficos debe ser referido en cada uno de los códigos fuentes antes de utilizar cualquier función grafica. En ese caso. La línea fuente #include<graphics.h> debería aprender en todo los módulos del código. Además, las funciones graficas no funcionaria sise utiliza el modelo de memoria TINY, dada su limitación de memoria. Los modelos con más memoria dejan mayor Cantidad de esta para los programas del usuario


FUNCIONES DE LA LIBRERÍA GRAFICA DE TURBO C++
arc : Dibuja un arco.
Sintaxis: arc (int x, int y, int ang_comienzo, int ang_final, int radio); (x,y) es el punto central; ang_comienzo y ang_final son los ángulos de comienzo y final en grados; radio es el radio.
bar : Dibuja una barra.
Sintaxis: bar (int izq, int ar, int der, int ab);

bar3d : Dibuja una barra en 3-D.
Sintaxis: bar3d (int izq, int ar, int der, int ab, int profundidad, int flag_de_encima);
Si flag_de_encima es 0 no se dibuja la cara superior de la barra.

circle : Dibuja un círculo en (x,y) con el radio dado.
Sintaxis: circle (int x, int y, int radio);

cleardevice : Borra la pantalla gráfica.
Sintaxis: cleardevice (void);

clearviewport : Borra el viewport corriente.
Sintaxis: clearviewport (void);

closegraph : Cierra el sistema gráfico.
Sintaxis: closegraph (void);

detectgraph : Determina el controlador y el modo gráfico a usar chequeando el hardware.
Sintaxis: detectgraph (int far *graphdriver, int far *graphmode);

drawpoly : Dibuja un polígono.
Sintaxis: drawpoly (int numero_de_puntos, int far
*puntos_de_poligono);
*puntos_de_poligono apunta a numero_de_puntos pares de valores. Cada par
da los valores de x e y para un punto del polígono.

ellipse : Dibuja un arco elíptico.
Sintaxis: ellipse (int x, int y, int ang_comienzo, int ang_final, int radiox, int radioy);
(x,y) es el punto central; ang_comienzo y ang_final son los ángulos de comienzo y final en grados; radiox y radioy son los radios horizontal y vertical.

fillellipse : Dibuja y rellena una elipse.
Sintaxis: fillellipse (int x, int y, int radiox, int radioy);
Usa (x,y) como el punto central y rellena el arco usando el patrón de relleno actual; radiox y radioy son los radios horizontal y vertical.

fillpoly : Dibuja y rellena un polígono.
Sintaxis: fillpoly(int numpoints, int far *polypoints[]);
*puntos_de_poligono apunta a numero_de_puntos pares de valores. Cada par da los valores de x e y para un punto del polígono.

floodfill : Rellena una región definida.
Sintaxis: floodfill (int x, int y, int color_borde);
(x,y) es un punto que reside dentro de la región a rellenar.


EJEMPLOS DE ALGUNAS LIBRERIAS PARA GRAFICAR (GRAFHISCS.H)

ARCO
Sintaxis
#include <graphics.h>
void arc(int x, int y, int stangle, int endangle, int radius);

arco dibuja un arco circular en el color de dibujo actual centrada en (x, y) con un radio determinado por radio. Los viajes de arco de Stangle a endangle. Si Stangle es igual a 0 y endangle es igual a 360, la llamada al arco dibuja un círculo completo.
El ángulo de arco se calcula la izquierda, con 0 grados a las 3 horas, 90 grados a las 12en punto, y así sucesivamente.
El parámetro linestyle no afecta a los arcos, círculos, elipses, o rebanadas de pastel. Sólo el espesor parámetro se utiliza.
Si estás utilizando un CGA en el modo de alta resolución o un adaptador de gráficos monocromáticos, el ejemplos en la Ayuda en línea que muestran cómo utilizar las funciones de gráficos no podría producir el los resultados esperados. Si el sistema funciona con un adaptador CGA o blanco y negro, pasar el valor 1 a las funciones que alteran el color de relleno o de dibujo (setcolor, setfillstyle y setlinestyle, por ejemplo), en lugar de un color constante simbólica (definido en graphics.h).

Ejemplo de Arco
/* arc example */
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
/* request autodetection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy;
int stangle = 45, endangle = 135;
int radius = 100;
/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) { /* an error occurred */
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
setcolor(getmaxcolor());
/* draw arc */
arc(midx, midy, stangle, endangle, radius);
/* clean up */
getch();
closegraph();
return 0;
}
Bar
Sintaxis:
#include <graphics.h>
void bar(int left, int top, int right, int bottom);

dibuja unabarra delleno-en, barrarectangular, de dosdimensiones. Labarrasellenaconelactualrelleno
modeloyel color de relleno. barrano se ofreceel bar, paradibujarunabarrase indicaen dos dimensiones,
usobar3dconla profundidadigual a 0.
La parte superior izquierdae inferiorderechadelrectánguloestán dados por(arriba a la izquierda), y(a la derecha, abajo), respectivamente. Lascoordenadasse refierena lospíxeles

Valor de Retorno
Ninguno.
Véasetambién
bar3d
rectangle
setcolor
setfillstyle
setlinestyle
Ejemplo
/* bar example */
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
/* request autodetection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy, i;
/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) { /* an error occurred */
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
/* loop through the fill patterns */
for (i=SOLID_FILL; i<USER_FILL; i++) {
/* set the fill style */
setfillstyle(i, getmaxcolor());
/* draw the bar */
bar(midx-50, midy-50, midx+50, midy+50);
getch();
}
/* clean up */
closegraph();
return 0;}
Círculo
Sintaxis
#include <graphics.h>
void circle(int x, int y, int radius);

Círculo dibuja un círculo en el color de dibujo actual con su centro en (x, y) y teniendo en cuenta el radio
por radio.
El parámetro linestyle no afecta a los arcos, círculos, elipses, o rebanadas de pastel. Sólo el espesor
parámetro se utiliza.
Si los círculos no son perfectamente redondas, modifica la relación de aspecto.

Valor de Retorno
Ninguno.
Véasetambién
arc
ellipse
fillellipse
getaspectratio
sector
setaspectratio
Ejemplo
/* circle example */
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
/* request autodetection */
int gdriver = DETECT, gmode, errorcode;
int midx, midy, radius = 100;
/* initialize graphics and local variables */
initgraph(&gdriver, &gmode, "");
/* read result of initialization */
errorcode = graphresult();
if (errorcode != grOk) { /* an error occurred */
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
setcolor(getmaxcolor());
/* draw the circle */
circle(midx, midy, radius);
/* clean up */
getch();
closegraph();
return 0;}

PEQUEÑO TUTORIAL DE COMO USAR GRAPHICS.H
http://www.youtube.com/watch?v=OUKDLlpBb5o&feature=related