# Help please with circular positioning

**URL:** <https://forum.kirupa.com/t/help-please-with-circular-positioning/235517>\
**Category:** Uncategorized\
**Created:** [August 12, 2007, 4:51am UTC](https://forum.kirupa.com/t/help-please-with-circular-positioning/235517 "2007-08-12T04:51:10Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![tckober](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/tckober/32/3687_2.png) [@tckober](https://forum.kirupa.com/u/tckober)\
**Post date:** [August 12, 2007, 4:51am UTC](https://forum.kirupa.com/t/help-please-with-circular-positioning/235517/1 "2007-08-12T04:51:10Z")

</div>

I am trying to create a “circular” menu, where you can click on the menu buttons and a “pointer” moves to that menu button on a circle path.  
i can’t figure out how to calculate the movement from one button to the next.  
I know, i have to calculate the distance between the angles and i would like to “ease” pointer to that new target point.

Help would be really appreciated.

here is the code i have so far:

var angle:Number = new Number();  
var centerX:Number = Stage.width/2;  
var centerY:Number = Stage.height/2;  
var radius:Number = 125;  
var speed:Number = new Number();

var tx:Number = button1.\_x - centerX;  
var ty:Number = button1.\_y - centerY;

onEnterFrame = function(){  
angle = Math.atan2(ty, tx);  
box.\_x = centerX + Math.cos(angle) \* radius;  
box.\_y = centerY + Math.sin(angle) \* radius;  
angle += speed;  
ang = angle \* 180/Math.PI;  
trace(ang);  
var dx:Number = centerX - box.\_x;  
var dy:Number = centerY - box.\_y;  
var dist:Number = Math.sqrt(dx_dx + dy_dy);  
var rot:Number = Math.atan2(dy,dx);  
rot \*= 180/Math.PI;  
box.\_rotation = rot;  
}

button1.onRelease = function(){  
speed = -0.1;  
tx = button1.\_x - centerX;  
ty = button1.\_y - centerY;  
trace(angle);  
}

button2.onRelease = function(){  
speed = -0.1;  
tx = button2.\_x - centerX;  
ty = button2.\_y - centerY;  
trace(angle);  
}

button3.onRelease = function(){  
speed = -0.1;  
tx = button3.\_x - centerX;  
ty = button3.\_y - centerY;  
trace(angle);  
}

button4.onRelease = function(){  
speed = -0.1;  
tx = button4.\_x - centerX;  
ty = button4.\_y - centerY;  
trace(angle);  
}

button5.onRelease = function(){  
speed = -0.1;  
tx = button5.\_x - centerX;  
ty = button5.\_y - centerY;  
trace(angle);  
}

fla is attached as well as a screenshot.
