void draw_in_map( int file, graph, tipo_grafico, color, modo, region, x0, y0, x1, y1 )
Descripción:
Se trata de una función genérica capaz de representar varias primitivas gráficas en un gráfico (como líneas, cajas y círculos). Se deben indicar los siguientes parámetros:
file - Fichero FPG contenedor de imágenes.
graph - Gráfico en el que se va ha dibujar la primitiva gráfica
tipo_grafico - Tipo de primitiva, dentro de los siguientes:
d_line // Línea recta d_rectangle // Rectángulo d_fill_rectangle // Rectángulo relleno d_ellipse // Elipse d_fill_ellipse // Elipse rellena
color - Color de tinta para la primitiva (de 0 a 255, como un color de la paleta).
modo - Modo de dibujado: 0 opaco y 1 transparente.
región - Número de región (ventana dentro de la pantalla) en la que se debe pintar la primitiva; normalmente este valor será 0 para poder imprimir la primitiva en cualquier posición de la pantalla. Para definir una región se debe utilizar la función define_region().
x0, y0 - Punto inicial de la recta, o la esquina superior izquierda de la caja que contiene al rectángulo o elipse.
x1, y1 - Punto final de la recta, o la esquina inferior derecha de la caja que contiene al rectángulo o elipse.
int contador,
tipo,
color,
opacidad, x, y, x2, y2;
MAIN_PROGRAM_CDIV
BEGIN_PROGRAM
//Definimos el modo grafico
set_gfx(GFX_AUTODETECT_WINDOWED);
//Definimos la resolución
set_mode(m320x200);
write(0,0,0,0,"Pulse ESC para terminar ...");
x = 160;
y = 100;
graph = new_map(320, 200, 160, 100, 0);
do{
clear_map_color(0, graph, 0);
for( contador = 0; contador < 10; contador++){
tipo = rand(1,5);
color = rand(0,255);
opacidad = rand(0,1);
x = rand(0,319);
y = rand(0,199);
x2 = rand(0,319);
y2 = rand(0,199);
// Pinta una primitiva gráfica
draw_in_map(0, graph, tipo, color, opacidad, 0, x, y, x2, y2);
}
FRAME;
}LOOP;
END_PROGRAMEste programa ejemplo representa en pantalla 10 primitivas gráficas cuyas características son seleccionadas al azar mediante la función rand(), y tras dar una imagen con FRAME.
El proceso se repite hasta que se detecta la tecla ESC.
Ver: draw() - move_draw() - delete_draw() - draw_z