Анимирование с помощью API рисования

Flash Player 9 и более поздних версий, Adobe AIR 1.0 и более поздних версий

Одним из преимуществ создания содержимого с помощью API рисования является возможность неоднократного размещения содержимого. Создаваемые рисунки могут изменяться путем ввода и изменения переменных, используемых для рисования. Анимация может создаваться посредством изменения переменных и обновления рисунка либо через несколько кадров, либо с помощью таймера.

Например, следующий код изменяет отображение в каждом передаваемом кадре (посредством прослушивания события Event.ENTER_FRAME ) с помощью увеличения текущего счета и направляет графический объект на очистку и перерисовку в обновленной позиции.

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

Для получения существенно отличающихся результатов можно поэкспериментировать, изменяя исходные переменные в начале кода: currentDegrees , radius и satelliteRadius . Например, попробуйте уменьшить переменную radius и/или увеличить переменную totalSatellites. Это только один из примеров, демонстрирующий, как API рисования упрощает процесс создания сложных визуальных объектов отображения.