Animazione mediante l'API di disegno

Flash Player 9 e versioni successive, Adobe AIR 1.0 e versioni successive

Un vantaggio offerto dalla creazione di contenuti con l'API di disegno consiste nel fatto che non si è limitati dal fatto di dover posizionare i contenuti una sola volta. Ciò che si disegna può essere cambiato mantenendo o modificando le variabili utilizzate per il disegno. Potete trasmettere l'effetto dell'animazione modificando le variabili e ridisegnando, sia rispetto a un intervallo di fotogrammi sia utilizzando un timer.

Ad esempio, il codice seguente modifica la visualizzazione a ogni fotogramma (ascoltando l'evento Event.ENTER_FRAME), incrementando il conteggio dei gradi corrente, e specifica all'oggetto Graphics di cancellare e ridisegnare con la posizione aggiornata.

stage.frameRate = 31; 
 
var currentDegrees:Number = 0; 
var radius:Number = 40; 
var satelliteRadius:Number = 6; 
 
var container:Sprite = new Sprite(); 
container.x = stage.stageWidth / 2; 
container.y = stage.stageHeight / 2; 
addChild(container); 
var satellite:Shape = new Shape(); 
container.addChild(satellite); 
 
addEventListener(Event.ENTER_FRAME, doEveryFrame); 
 
function doEveryFrame(event:Event):void 
{ 
    currentDegrees += 4; 
    var radians:Number = getRadians(currentDegrees); 
    var posX:Number = Math.sin(radians) * radius; 
    var posY:Number = Math.cos(radians) * radius; 
    satellite.graphics.clear(); 
    satellite.graphics.beginFill(0); 
    satellite.graphics.drawCircle(posX, posY, satelliteRadius); 
} 
function getRadians(degrees:Number):Number 
{ 
return degrees * Math.PI / 180; 
}

Per produrre un risultato significativamente diverso, potete sperimentare modificando le variabili seed iniziali all'inizio del codice, currentDegrees, radius e satelliteRadius. Ad esempio, provate a ridurre la variabile radius e/o a incrementare la variabile totalSatellites. Si tratta solo di un esempio di come l'API di disegno è in grado di creare una visualizzazione la cui complessità nasconde in realtà una semplicità di creazione.