2012-02-02 4 views
0

Может кто-нибудь сказать мне, как я могу подсчитать координаты точки B (см. Прикрепленное изображение ... или нет, поскольку я новый пользователь ... pf!). Я знаю, что вращение стрелки - так что угол (скажем, -120), координаты А (0, 0) - А - средняя точка стрелки, а расстояние между А и В - 50 пикселей. Спасибо большое!Как подсчитать координаты X и Y точки от поворота (угла) объекта и длины ноги?

.B 
\ 
    \ 50 px 
    \ 
    \ 
    .A 
+0

Nice diagram :) –

ответ

0

Похож на какую-то обычную тригонометрию для меня. Помните, что в математике вы вычисляете в радианах против часовой стрелки справа. С другой стороны, настройка свойства вращения DisplayObjects во Flash, измеряется в градусах по часовой стрелке сверху. Таким образом, всегда есть интересное преобразование, если вы делаете эту математику, чтобы повернуть DisplayObject. В примере, хотя я предполагаю, что вам просто нужно найти координаты B относительно A, учитывая известное вращение и абсолютное расстояние между ними.

import flash.geom.Point; 

var angle:Number = -120; 
var radian:Number = angle * Math.PI/180; 
var length:Number = 50; 
var aCoords:Point = new Point(100, 20); //example values for known coords of point A 
var bCoords:Point = new Point(Math.cos(radian) * length + aCoords.x, Math.sin(radian) * length + aCoords.y); 

trace(bCoords); 
Смежные вопросы