- Home
- Tutorials
- Flash
- Intermediate
- inverse kinematics - reaching and dragging with a single element - AS3
inverse kinematics - reaching and dragging with a single element - AS3

reach
the target will be the mouse. You need the distance between x and y axes. Use Math.atan2 for the angle between in radians. Convert to degrees and voila!
package {
import flash.display.Sprite;
import flash.events.Event;
public class UnoSegment extends Sprite
{
private var segmentU:Segment;
public function UnoSegment ()
{
init();
}
private function init():void
{
segmentU = new Segment(200, 30)
addChild(segmentU);
segmentU.x = stage.stageWidth / 2;
segmentU.y = stage.stageHeight / 2;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
private function onEnterFrame(event:Event):void
{
var dx:Number = mouseX - segmentU.x;
var dy:Number = mouseY - segmentU.y;
var angle:Number = Math.atan2(dy, dx);
segmentU.rotation = angle * 180 / Math.PI;
}
}
}

