Sei sulla pagina 1di 1

acceder

página discusión ver código historial

Gráficos Usando graphics.h


Contenido [ocultar]
1 Activando el Modo Gráfico
2 Iniciando el Modo Gráfico
navegación
3 Conociendo algunas funciones gráficas
Chuwiki
4 Haciendo un Programa Sencillo
Portal de la
comunidad
Cambios recientes
Ayuda Activando el Modo Gráfico
enlaces
Antes que nada debemos activar el modo gráfico. De acuerdo al compilador que usemos tendremos maneras distintas de hacerlo. Si se trata de Borland C++ 3.1 debemos dirijirnos a Options->Linker->Libraries y allí tildar la opción "Graphics library". En el caso de
Foro de tratarse de Borland C++ 4.5 ó superior deberemos hacer un click con el botón derecho del mouse sobre algún lugar desocupado de la pantalla y al aparecer el menú contextual, tenemos que hacer un click sobre "TargetExpert", con lo cual aparecerá una ventana en la
Programación
que seleccionaremos "Application [.exe]" en la sección "Target Type"; luego de esto debemos seleccionar "DOS (Standard)" en la sección "Platform" y finalmente debemos marcar el casillero correspondiente a "BGI" en la sección "Standard Libraries".
Blog de
Programación
Apuntes de Iniciando el Modo Gráfico
Programación
Proyectos Java Para inciar el Modo Gráfico debemos escribir las siguientes sentencias:

redes sociales
@Chuidiang en int gdriver=DETECT, gmode;
initgraph(&gdriver,&gmode,"C:\\BORLANDC\\BGI"); //Inicia el Modo Gráfico.
Twitter
Facebook
Linkedin 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:
repositorios código
Github
closegraph();
Google Code en
Github

buscar
Conociendo algunas funciones gráficas
Buscar
Ir Buscar 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:
herramientas
Lo que enlaza aquí
Dibujar un Circulo
Cambios
relacionados
Páginas especiales circle(x, y, angulo_inicial, angulo_final, radio);
Versión para imprimir
Enlace permanente 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:
Información de la
página
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.

Haciendo un Programa Sencillo


Vamos a hacer un pequeño programa que nos permita crear algo así como un salvapantallas. Utilizaremos entre otras, las funciones random(int valor), que devuelve un entero aleatorio que va desde 0 hasta el valor que especifiquemos y la función kbhit(), que detecta la
pulsación de una tecla. A esta última función la utilizaremos como condición para salir del programa.

#include <conio.h> //De aquí utilizaremos la función kbhit()


#include <stdlib.h> //De aquí sacaremos la función random()
#include <dos.h> //Usaremos esta librería por la función delay(int valor) que nos permite
//establecer un retardo en milisegundos.
#include <graphics.h> //Esta es la librería que nos permite usar gráficos.

void main()
{
int gdriver=DETECT, gmode, contador=0;
initgraph(&gdriver,&gmode,"C:\\BORLANDC\\BGI"); //Iniciamos el modo gráfico.
do
{
setcolor(random(15)); //Establecemos un color aleatorio
line(random(640),random(480),random(640),random(480)); //Establecemos coordenadas aleatorias.
setcolor(random(15));
rectangle(random(640),random(480),random(640),random(480));
setcolor(random(15));
ellipse(random(640),random(480),0,360,random(100),random(100));
contador+=1; //Por cada vuelta incrementamos contador en 1.
if(contador%100==0) { cleardevice(); } //Si contador es múltiplo de 100, limpia la pantalla.
delay(100); //Establecemos un retardo de 100 milisegundos al dibujar las figuras.
}
while(!kbhit()); //Si se pulsa alguna tecla, salimos del programa.
closegraph(); //Cerramos el modo gráfico.
}

Espero que haya sido de utilidad este "Mini-Manual", y debo aclarar que sólo es un esbozo. A mí me hubiera servido algo así hace unos meses. Intentaré mejorarlo en cuanto pueda.

Categoría: CPP

Esta página fue modificada por última vez el 7 mar 2016 a las 09:42. Política de privacidad Acerca de ChuWiki Aviso legal Versión para móviles

Potrebbero piacerti anche