move_draw()

move_draw(<identificador de la primitiva>, <color>, <opacidad>, <x0>, <y0>, <x1>, <y1>)

Descripción:

Modifica una primitiva gráfica que se ha pintado con la función draw(), para ello se requieren los siguientes parámetros:

<identificador de la primitiva> - Es el código numérico que devolvió la función draw() cuando se pintó la primitiva que ahora se prentende modificar.

<color> - Color de tinta para la primitiva (de 0 a 255, como un color de la paleta).

<opacidad> - Nivel de opacidad de la primitiva, de 0 a 15 (para permitir efectos de transparencia).

<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. y las coordenadas (x, y) de pantalla a las que se debe mover.


Programa ejemplo:
PROGRAM ejemplo_move_draw;

PRIVATE
    id_draw;
    color;
    opacidad;

BEGIN
    write(0, 0, 0, 0, "Mueva el ratón ...");
    id_draw=draw(4, 127, 15, 0, 0, 0, 32, 32);
    LOOP
        color=rand(0,255);
        opacidad=rand(0,15);

        // Se mueve la primitiva gráfica a las coordenadas del ratón

        move_draw(id_draw, color, opacidad, mouse.x-16, mouse.y-16, mouse.x+16, mouse.y+16);

        FRAME;
    END
END


En el ejemplo se pinta, con la función draw(), una primitiva gráfica circular, y se guarda su identificador de primitiva gráfica en la variable global id_draw.

Entonces es cuando, dentro de un bucle, se utilizará la función move_draw() para situar dicho círculo en las coordenadas del ratón, y asignarle un color y opacidad escogidos al azar en cada imagen.


Nota: Para eliminar (borrar) una primitiva gráfica se utiliza la función delete_draw(), y con la variable global predefinida draw_z se puede controlar la prioridad de impresión de las mismas.


Ver: draw() - delete_draw() - draw_z