Animação com a API de desenho

Flash Player 9 e posterior, Adobe AIR 1.0 e posterior

Uma vantagem da criação de conteúdo com a API de desenho é que você não está limitado a posicionar o conteúdo apenas uma vez. O que você desenha pode ser modificado pela manutenção e modificação das variáveis que usa ao desenhar. Você pode transmitir a animação alterando as variáveis e redesenhando, em um período de quadros ou com um temporizador.

Por exemplo, o código a seguir altera a exibição com cada quadro transmitido (atendendo ao evento Event.ENTER_FRAME ), incrementando a contagem de graus atual, direciona o objeto graphics para limpar e redesenhar na posição atualizada.

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; 
}

Para produzir um resultado significativamente diferente, você pode modificar as variáveis base iniciais no início do código, currentDegrees , radius e satelliteRadius . Por exemplo, tente reduzir a variável radius e/ou aumentar a variável totalSatellites. Esse é apenas um exemplo de como a API de desenho pode criar uma exibição visual cuja complexidade oculta a simplicidade de sua criação.