0
に(0,0)をデフォルト:スプライト(x、y)のコードを実行する場合AS3
var cont:Sprite = new Sprite();
var a:Vector.<int > = Vector.<int > ([1,2]);
var b:Vector.<Number > = Vector.<Number > ([0,0,40,40]);
cont.graphics.lineStyle(5, 0x442299);
cont.graphics.drawPath(a, b);
addChild(cont);
cont.x = 100;
cont.y = 100;
trace("X coordinate of purple line: ", cont.x);
I出力 "はX紫色のラインの座標:100" を取得する際、しかし
私はマウスでこのコードをテストし、(140、140)と(100、100)から線を引く:
var line:Sprite = new Sprite();
stage.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler);
stage.addEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
var startX:int = -1;
var startY:int = -1;
function mouseDownHandler(event:MouseEvent):void
{
startX = mouseX;
startY = mouseY;
}
function mouseUpHandler(event:MouseEvent):void
{
swype(Vector.<int> ([1,2]), Vector.<Number> ([startX,startY,mouseX,mouseY]));
}
function swype(commands:Vector.<int>, coords:Vector.<Number>):void
{
var container:Sprite = new Sprite();
container.graphics.lineStyle(5, 0x0066CC);
container.graphics.drawPath(commands, coords);
addChild(container);
container.x = 100;
container.y = 100;
trace("X coordinate of blue line: ", container.x);
}
Iが出力を得る: "Xは青線の座標:0"
画面上のマウスの位置から座標を取得してベクトルに追加すると、Spriteコンテナのx座標とy座標はデフォルトで0,0になります。