ベクトルのクロス積
♥0 |
Line 42 |
Modified 2010-02-06 17:20:58 |
MIT License
archived:2017-03-20 16:28:12
ActionScript3 source code
/**
* Copyright cpu_t ( http://wonderfl.net/user/cpu_t )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/jJqC
*/
package {
import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Point;
import flash.text.TextField;
public class FlashTest extends Sprite {
private var g:Graphics
private var t:TextField;
public function FlashTest() {
addChild(t = new TextField());
g = this.graphics;
g.lineStyle( -1, 0x000000);
g.moveTo(50, 100);
g.lineTo(200, 150);
g.lineTo(190, 150);
g.lineTo(200, 150);
g.lineTo(200, 140);
var sp:Sprite = new Sprite;
sp.x = 150;
sp.y = 50;
g = sp.graphics;
g.beginFill(0x000000);
g.drawCircle(0, 0, 5);
addChild(sp);
addEventListener(Event.ENTER_FRAME, function(e:Event):void {
sp.x = mouseX;
sp.y = mouseY;
t.text = fnc(new Point(sp.x, sp.y));
});
}
private function fnc(c:Point):String
{
var p1:Point = new Point(50, 100);
var p2:Point = new Point(200, 150);
var lv:Point = p2.subtract(p1);
var v:Point = c.subtract(p1);
var cross:Number = lv.x * v.y - lv.y * v.x;
return cross.toString();
}
}
}