GRAFICAS DE FUNCIONES


En el estudio de las ciencias físico matemáticas, se requiere realizar diversas funciones, considerando como parte de ello sus gráficas cartesianas en la pantalla; obviamente, los valores máximo y mínimo de muchas funciones exceden los valores físicos de la pantalla. La manera de evitar este problema en las versiones más 5ecientes del lenguaje C, es asignar nuevas dimensiones o escala a la pantalla (mediante coordenadas lógicas que asignan coordenadas cartesianas y un nuevo tamaño), sin embargo en esta introducción al manejo de gráficas, exclusivamente se bosquejará el enfoque básico del factor de escala y el desplazamiento de ejes cartesianos.

Para dibujar los ejes coordenados en el centro de la pantalla, es conveniente usar las funciones:


 
getmaxx();
getmaxy();

 

que automáticamente determinan los valores máximos de resolución tanto horizontalmente (valores x) como verticalmente (valores y); obtenidos esos valores, el centro de la pantalla está a la mitad de ellos.

Se debe ajustar los valores de la función a una escala tal que los valores máximos de las gráficas no sobrepasen del 80 al 99% de los valores físicos de la pantalla, para asegurar que la pagina se aprecia perfectamente en la pantalla. Un método para graficar consiste en tabular la función primero en un intervalo predeterminado para obtener primero sus valores máximos (positivo y negativo) y con ellos determinar el factor de escala y desplazamiento de los ejes coordenados que se requiere.

Debe tenerse en cuenta que el número máximo de puntos de la función que se podrán iluminar corresponde al valor obtenido con getmaxx(); de tal manera que el incremento mínimo para tabular la función puede obtenerse con:

incremento=(valor_final_de_x - valor_inicial_de_x)/getmaxx();

con esa expresión se puede obtener para cualquier monitor el máximo de puntos a iluminar (por ejemplo en VGA un máximo de 640 puntos). Debe verificarse la congruencia del incremento que se emplea para tabular para que realmente se obtengan puntos representativos de la gráfica de la función y no valores aislados o muy separados que al unirse no corresponden al contorno continuo de la gráfica de la función.

Considere el siguiente ejemplo:



 
#include<graphics.h>

#include<stdio.h>

#include<conio.h>

#include<stdlib.h>

#include<math.h>
 
 
 
 

void main(void)

{

/* ACTIVA EL CONTROLADOR DE GRAFICOS */

int controlador,modo=1;

controlador=DETECT;

initgraph(&controlador,&modo,"");

int i;

/*-----------------------------------*/
 
 

setcolor(RED);

setbkcolor(WHITE);

line(0,275,639,275);

line(300,0,300,479);

rectangle(1,1,638,478);
 
 

gotoxy(10,5);

printf("Gr fica de (sen x)/x");
 
 

/* La siguiente gr fica se realiza iluminando puntos sobre la pantalla;

para ello se ha amplificado la gr fica de la funci¢n y dezpazado los

ejes para ajustarlos a los puntos f¡sicos de la pantalla */
 
 

for(i=1;i<=639;i+=1)

{

putpixel(i,275-200.0*sin((i-300.0)/10.0)/((i-300.000061)/10),BLUE);

}

getch();

closegraph();
 
 

}


Selecciona un tema