Académique Documents
Professionnel Documents
Culture Documents
Tal como un artista selecciona diversos medios para representar sus pinturas,
los
programadores, escogen un modo y formato especial para habilitar el
monitor para
graficar. Cada modo proporciona ciertas caractersticas como la resolucin,
nmero
posible de colores, modo texto o modo grfico y otros elementos donde cada
modo
requiere de cierto equipo (hardware).
Resolucin-Las imgenes grficas mostradas en un monitor de computadora
se componen depequeos puntos llamados pxeles, los cuales estn
distribuidos en la pantalla en filas; existe unacantidad especfica de filas y
cada fila tiene una cantidad especfica de pxeles. La cantidad depxeles
usada en la pantalla se conoce como resolucin. Cada modo grfico tiene una
resolucinparticular.
Inicializar el monitor en modo grfico-Para habilitar el monitor en modo
grfico y utilizar sus pxelesy funciones de grficos, es necesario incluir el
encabezado #include <graphics.h> que contiene lasdeclaraciones y
funciones relacionadas con graficacin e inicializar el monitor en modo
grfico yutilizar sus pxeles con la funcin initgraph().
La funcin initgraph()-Una vez declaradas las variables monitor y modo que
controlarn laresolucin identificando el tipo de pantalla o monitor y su modo
de operacin respectivamente, seutiliza la funcin initgraph() para habilitar el
monitor seleccionado en modo grfico. La funcininitgraph() tiene 3
parmetros o argumentos:
1) La variable que identifica el monitor.
2) El modo de operacin grfico.
3) Subdirectorio que contiene los controladores de los monitores (archivos
con extensin BGI) y losarchivos con los tipos de letra.
Uso de coordenadas-Una vez que se inicializa el monitor en modo grfico, las
coordenadas tienenal pxel como unidad de medida. La funcin getmaxx()
calcula la cantidad de pxeles por rengln yla funcin getmaxy() calcula la
cantidad de renglones de la pantalla. Las funciones de grficostienen como
estndar el orden de manejo de coordenadas como columna, rengln; es
decir,primero se anota la columna y despus el rengln para posicionarse en
closegraph( );
restorecrtmode( );
#include <graphics.h>
grphics.h son:
Line(); circle(); arc(); elipse();rectangle(); ottextxy(); putpixel();
Para saber mas de las funciones de la librera de grficos lo pueden buscar en
el ndice de turbo c
double fx;
int graphdriver=DETECT,graphmode;
initgraph(&graphdriver,&graphmode,"..\\bgi");
outtextxy(30,30,GRAFICACION DE SENO );
setbkcolor(RED);
for (int x=0;x<=90;x++)
{
fx=(1+sin(x))*40+200;
putpixel(x*15,fx,YELLOW);
}
setcolor(BLUE);
line(310,100,310,400);
line(100,240,500,240);
getch();
closegraph();
return 0;
}
Graficado de puntos
PutPixel(X,Y,CdigoDeColor);
Grafica, coloca un pixel en las coordenadas (X,Y) especificadas con el color
indicado por el cdigo.
Las coordenadas debern estar dentro del intervalo de coordenadas
mnimas y mximas correspondientes al plano seleccionado.
Graficado de Lneas
Line(X1,Y1,X2,Y2);
Traza una lnea de las coordenadas (X1,Y1) a las coordenadas (X2,Y2).
Utilizando el color y el estilo que estn activos. As como puede modificar el
color, tambin puede modificar el estilo de trazado de lneas.
LineRel(DeltaX,DeltaY);
Traza una lnea desde la posicin actual del cursor hasta las coordenadas
resultantes de incrementar X en DeltaX y Y en DeltaY.
LineTo(X,Y);
Traza una lnea desde la posicin actual del cursor hasta las coordenadas
(x,Y);
En los tres casos X y Y son datos o variables de tipo entero.
Graficacin de funciones matemticas.
La graficacin de funciones matemticas implica generalmente dos
problemas:
- La existencia explcita de ejes de graficacin diferentes de los propios de
pant.
- La necesidad de una escala para compatibilizar las medidas.
Adems al ser los ejes simples lneas horizontales o verticales, si bien
podemos graficarlo
MAGENTA 5 SI SI
BROWN 6 SI SI
LIGHTGRAY 7 SI SI
DARKGRAY 8 NO SI
LIGHTBLUE 9 NO SI
LIGHTGREEN 10 NO SI
LIGHTCYAN 11 NO SI
LIGHTRED 12 NO SI
LIGHTMAGENTA 13 NO SI
YELLOW 14 NO SI
WHITE 15 NO SI
Si no se establece un color para el fondo, el compilador adopta el Black por
defecto.
Los colores pueden escribirse directamente, lo cual resulta muy prctico, por
ejemplo:
setcolor(LIGHTGREEN)
setcolor(YELLOW)
ejemplo:
Dibujar un par de ejes coordenados.
----------------------------------------------------------------- */
#include<conio.h>
#include<stdlib.h>
#include<dos.h>
#include<process.h>
#include<stdio.h>
#include<graphics.h>
void ModoGrafico ( );
void ModoTexto ( );
// ----------------------------------------------------------------void main()
{
int XizqEjeH = 50;
int XderEjeH = 550;
int YEjeH = 300;
int XEjeV = 50;
int YinfEjeV = 50;
int YsupEjeV = 300;
int ColorEjes = LIGHTCYAN;
ModoGrafico();
setcolor(ColorEjes);
line(XizqEjeH,YEjeH,XderEjeH,YEjeH);
line(XEjeV,YinfEjeV,XEjeV,YsupEjeV);
getch();
ModoTexto();
}
interese.
Por supuesto todo debe ajustarse automticamente para que no ocurran
distorsiones.
Por ejemplo:
double EscGrafH = (double)(XderEjeH-XizqEjeH)/(double)(Tfin-Tini);
double EscGrafV = (double)(YsupEjeV-YinfEjeV)/(double)(Vfin-Vini);
Ajustan automticamente las escalas al modificar los valores de cada
extreme.
El lazo de graficacin en s:
for(t =Tini; t<=Tfin; t+=Paso_t) {
Xp=XizqEjeH+EscGrafH*(t-Tini);
Yp=YEjeH-EscGrafV*(Vini+(Vfin-Vini)*(1-exp(-t/To)));
putpixel(Xp,Yp,ColorFn);
}
tambin tiene en cuenta los cambios de valores iniciales y finales de los
parmetros de graficacin. Comprenderemos mejor esto luego de tipear y
hacer correr el programa