Zeichnungs-API

Verwenden Sie die Zeichnungs-API für eine schnellere Ausführung des Codes.

Flash Player 10 und AIR 1.5 haben eine neue Zeichnungs-API bereitgestellt, mit der eine bessere Leistung bei der Codeausführung erzielt wurde. Diese neue API führt zwar nicht zu einer höheren Leistung beim Rendern, kann jedoch die Anzahl der erforderlichen Codezeilen deutlich verringern. Weniger Codezeilen können wiederum zu einer höheren ActionScript-Ausführungsleistung führen.

Die neue Zeichnungs-API enthält die folgenden Methoden:

  • drawPath()

  • drawGraphicsData()

  • drawTriangles()

Hinweis: Dieses Thema befasst sich nicht mit der drawTriangles() -Methode, die sich auf 3D bezieht. Diese Methode kann jedoch die ActionScript-Leistung verbessern, da sie die native Texturzuordnung verarbeitet.

Mit dem folgenden Code wird die passende Methode für jede gezeichnete Linie explizit aufgerufen:

var container:Shape = new Shape(); 
container.graphics.beginFill(0x442299); 
 
var coords:Vector.<Number> = Vector.<Number>([132, 20, 46, 254, 244, 100, 20, 98, 218, 254]); 
 
container.graphics.moveTo ( coords[0], coords[1] ); 
container.graphics.lineTo ( coords[2], coords[3] ); 
container.graphics.lineTo ( coords[4], coords[5] ); 
container.graphics.lineTo ( coords[6], coords[7] ); 
container.graphics.lineTo ( coords[8], coords[9] ); 
 
addChild( container );

Der folgende Code wird schneller ausgeführt als das vorherige Beispiel, da weniger Codezeilen ausgeführt werden. Je komplexer der Pfad, desto höher die Leistungssteigerungen, die mit der drawPath() -Methode erzielt werden können:

var container:Shape = new Shape(); 
container.graphics.beginFill(0x442299); 
 
var commands:Vector.<int> = Vector.<int>([1,2,2,2,2]); 
var coords:Vector.<Number> = Vector.<Number>([132, 20, 46, 254, 244, 100, 20, 98, 218, 254]); 
 
container.graphics.drawPath(commands, coords); 
 
addChild( container );

Die drawGraphicsData() -Methode liefert vergleichbare Leistungssteigerungen.