I am trying to accomplish something similar to the map icons in Sims 3, where you have little clips that avoid each other but stay rotated around a static point.
I am trying to use atan2 to accomplish this but I don't think I have it correct.
Here is my current code (AS2 at the moment, until I get a chance to upgrade from F8):
Code:import flash.geom.Point; var tags:Array = [tag01, tag02, tag03]; _root.onMouseUp = function() { tag01._x = _xmouse; tag01._y = _ymouse; } this.onEnterFrame = function() { var clip1:MovieClip; var clip2:MovieClip; for(var i:Number = 0; i < tags.length; i++) { for(var j:Number = 0; j< tags.length; j++) { if(tags[j] != tags[i]) { clip1 = tags[i]; clip2 = tags[j]; var coord:Point = localToLocal(clip1, _root, {x:clip1.head._x, y: clip1.head._y}); var coord2:Point = localToLocal(clip2, _root, {x:clip2.head._x, y: clip2.head._y}); var rot:Number = Math.atan2(coord2.y-coord.y, coord2.x - coord.x)/Math.PI*180; clip1._rotation = rot; } } } } function localToLocal(containerFrom:MovieClip, containerTo:MovieClip, origin:Object):Point { var point:Object = origin == undefined ? {x: 0, y: 0} : origin; containerFrom.localToGlobal(point); containerTo.globalToLocal(point); return new Point(point.x, point.y); }




Reply With Quote