W języku ActionScript 3.0 udostępniono wygodne metody do rysowania typowych kształtów, takich jak koła, elipsy, prostokąty i prostokąty z zaokrąglonymi narożnikami. Są to odpowiednio metody
drawCircle()
,
drawEllipse()
,
drawRect()
oraz
drawRoundRect()
klasy Graphics. Można z nich korzystać zamiast metod
lineTo()
i
curveTo()
. Należy jednak zauważyć, że przed wywołaniem metod rysujących kształty również należy określić styl linii i wypełnienia.
Poniższy przykład jest nową wersją przykładu rysującego czerwony, zielony i niebieski kwadrat o boku 100 pikseli. Wykorzystano w nim metodę
drawRect()
i dodatkowo określono wartość alfa równą 50% (0,5) dla koloru wypełnienia:
var squareSize:uint = 100;
var square:Shape = new Shape();
square.graphics.beginFill(0xFF0000, 0.5);
square.graphics.drawRect(0, 0, squareSize, squareSize);
square.graphics.beginFill(0x00FF00, 0.5);
square.graphics.drawRect(200, 0, squareSize, squareSize);
square.graphics.beginFill(0x0000FF, 0.5);
square.graphics.drawRect(400, 0, squareSize, squareSize);
square.graphics.endFill();
this.addChild(square);
W obiekcie Sprite lub MovieClip grafika utworzona za pomocą właściwości
graphics
zawsze jest widoczna dopiero pod wszystkimi podrzędnymi obiektami wyświetlanymi zawartymi w obiekcie. Ponadto grafika we właściwości
graphics
nie jest odrębnym obiektem wyświetlanym, a zatem nie figuruje na liście obiektów podrzędnych obiektu Sprite lub MovieClip. Na przykład poniższy obiekt Sprite zawiera okrąg narysowany za pomocą właściwości
graphics
oraz obiekt pole tekstowe TextField znajdujący się na liście jego podrzędnych obiektów wyświetlanych:
var mySprite:Sprite = new Sprite();
mySprite.graphics.beginFill(0xFFCC00);
mySprite.graphics.drawCircle(30, 30, 30);
var label:TextField = new TextField();
label.width = 200;
label.text = "They call me mellow yellow...";
label.x = 20;
label.y = 20;
mySprite.addChild(label);
this.addChild(mySprite);
Pole tekstowe TextField jest widoczne na kole narysowanym za pomocą obiektu graphics.