var plane:Shape = Shape(addChild(new Shape()));
plane.x = plane.y = 50;
var verts:Vector.<Number> = new Vector.<Number>();
var indices:Vector.<int> = new Vector.<int>();
var rows:int = 20;
var size:Number = rows + 1;
var vertNum:Number = size * size;
var polySize:Number = 20;
var vIndex:int = 0;
for (var i:Number = 0; i<vertNum; i++){
verts[vIndex++] = i % size * polySize;
verts[vIndex++] = int(i / size) * polySize;
if (i % size != rows){
indices.push(i, i+1, i+size, i+size, i+size+1, i+1);
}
}
// render and show that the verts can be changed around
addEventListener(Event.ENTER_FRAME, onLoop);
function onLoop(evt:Event):void {
// shake the verts
for (var i:int = 0; i<verts.length; i++){
verts[i] += Math.random() - 0.5;
}
with(plane.graphics){
clear();
lineStyle(0,0);
drawTriangles(verts, indices);
}
}
This snippet shows a simple way to draw a 2D wireframe plane using drawTriangles(). To demonstrate the flexibility of the plane… the vertices are randomly shaken on enterframe.