xadvance()

xadvance(<angulo>, <distancia>)

Descripción:

Avanza el proceso en el ángulo indicado tantos puntos como indique la distancia indicada como parámetro.

Esta función equivale a la función advance(), si se utiliza la variable angle como primer parámetro.

La distancia puede ser también un número negativo, con lo cual el gráfico del proceso avanzará (sus coordenadas x e y) en la dirección contraria a este ángulo.

Programa ejemplo:
PROGRAM ejemplo_xadvance;

PRIVATE
  angle2;

BEGIN
    load_fpg("help\help.fpg");
    put_screen(0, 1);
    graph=101;
    x=160;
    y=100;
    write(0, 0, 0, 0, "Use los cursores para cambiar la dirección.");
    LOOP
        angle+=5000;
        IF (key(_right)) angle2-=10000; END
        IF (key(_left)) angle2+=10000; END

        advance(angle2,4); // Avanzamos dos puntos el proceso

        FRAME;
    END
END


Este ejemplo dibujará un triángulo en pantalla que avanzará en la dirección seleccionada con los cursores, independiente en todo momento de la orientación del gráfico en pantalla (del ángulo de visualización del mismo).

Se recuerda que el ángulo se especifica en milésimas de grado.


Ver: Uso de ángulos en el lenguaje - advance() - get_distx() - get_disty()