メモメモ…
-------------------------------------------
1人でこつこつActionScript3.0アニメーションを読み進める会。。
2つの座標の距離を計測してテキストボックスに出力します。
なんてことのないプログラムです。
肝なのは、
var dx:Number = mouseX - sprite.x;
var dy:Number = mouseY - sprite.y;
var dist:Number = Math.sqrt(dx * dx + dy * dy);
ピタゴラスの定理。
まさか人生でまたこの名前を聞くとは。。算数役に立つやん。
ソース。
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.text.TextField;
public class MouseDistance extends Sprite
{
private var sprite:Sprite;
private var textField:TextField;
public function MouseDistance()
{
init();
}
public function init():void
{
sprite = new Sprite();
addChild(sprite);
sprite.graphics.beginFill(0x000000);
sprite.graphics.drawRect(-2, -2, 4, 4);
sprite.graphics.endFill();
sprite.x = 100;
sprite.y = 100;
textField = new TextField();
addChild(textField);
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove_stage);
}
private function onMouseMove_stage(evt:MouseEvent):void
{
graphics.clear();
graphics.lineStyle(1, 0, 1);
graphics.moveTo(sprite.x, sprite.y);
graphics.lineTo(mouseX, mouseY);
var dx:Number = mouseX - sprite.x;
var dy:Number = mouseY - sprite.y;
var dist:Number = Math.sqrt(dx * dx + dy * dy);
textField.text = dist.toString();
}
}
}
自己満足。
------------------------------------------
参照元:2点間の距離を計測するプログラム