AS3
De inmiddels volwassen scriptingtaal ActionScript 3, gebaseerd op ECMAscript, maakt het mogelijk zeer interactieve en complexe interfaces te programmeren. Gebruikmakend van diverse betrouwbare Actionscript frameworks worden interfaces gerealiseerd met een hoge performance.
Dynamische en interactieve componenten kunnen gevuld worden uit een database via XML. Communicatie tussen gebruiker en het acherliggende CMS en integratie in de website kunnen gerealiseerd worden.
Easing in visuele tweens worden veel toegepast om extra dynamiek toe te voegen aan een anders lineaire transitie.
Voorbeeld public function in Actionscript 3
public function setProjector(_Issue:Issue):MovieClip
{
trace('Setting Projection for '+_Issue._screenName);
_activeIssue = _Issue;
var issueProjection:MovieClip = new MovieClip();
issueProjection.graphics.lineStyle(1);
issueProjection.graphics.beginFill(0xFF0000);
var projectionX:Number = _Issue._projection[0];
var projectionY:Number = _Issue._projection[1];
var _projectionCoords:Point = new Point(projectionX, projectionY);
trace ('x='+_projectionCoords.x+' y='+_projectionCoords.y);
issueProjection.graphics.drawCircle(_projectionCoords.x, _projectionCoords.y, 7)
issueProjection.graphics.endFill();
issueProjection.id = _Issue._id;
issueProjection.buttonMode = true;
issueProjection.addEventListener(MouseEvent.MOUSE_OVER, onIssueHover, false, 0);
return issueProjection;
}
Frameworks en uitbreidingen
De volgende uitbreidingen en frameworks vormen vaak een solide basis voor de meer geavanceerde Actionscript 3 toepassingen:
- Tweener
- Papervision3D
- gTween
- SimpleZSorter
Easing
Met behulp van het externe framework Tweener kunnen bijzondere transitie-effecten toegevoegd worden. In onderstaand voorbeeld worden breedte en hoogte van 0 naar oorspronkelijke waarde geanimeerd, met het easeOutElastic effect. Bij elke update van de waarden worden ook de x en y positie aangepast, zodat het object vanuit het onderste middenpunt wordt vergroot.
Tweener.addTween(_labelBox, {
width: initWidth,
height: initHeight,
time: .9,
transition: 'easeOutElastic',
onUpdate: function():void
{
this.x = issuePos.x - _labelBox.width/2;
this.y = issuePos.y - (_labelBox.height+5);
}
});
Actionscript 3 Display Objecten














