我从我的实体的中心点有一个圆形(边界圆)偏移,我正在寻找如何在实体旋转时移动该圆形以便始终位于同一位置的角色。例如,假设我在汽车前部有一个边界圆,当汽车转向时,该边界圆也需要转向。围绕一个点移动一个圆圈
所以我有两点:position
这是实体的中心点的位置和offset
这是从该位置的圆的偏移量。如果我的车面临0度这假定为0
因此,一个角度: position
(150,150)和offset
(50,0),那么外接圆将是在200和150
现在如果我转动车90度,外接圆应在150位,200
这是我现在有:
var differenceX : Number = _centre.x - _offset.x;
var differenceY : Number = _centre.y - _offset.y;
var rotatedX : Number = differenceX * Math.cos(_angle);
var rotatedY : Number = differenceY * Math.sin(_angle);
var currentOffset : Point = new Point(_centre.x + rotatedX, _centre.y + rotatedY);
但它给了我这些长椭圆形,现在一个完美的圆。
想法?