Тема: атан2
Показать сообщение отдельно
Старый 31.10.2010, 12:20   #5
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

не знаю уже блин) никак не получается рассчитать угол поворта перса при движении его

Добавлено через 15 часов 32 минуты
нашел

атан2:
delphi Код:
function sgn (a : real) : real; begin   if a < 0  then  result := -1             else  result :=  1; end; function atan2(y, x : real) : real; begin   if x > 0       then  result := arctan (y/x)   else if x < 0  then  result := arctan (y/x) + pi   else                 result := pi/2 * sgn (y); end;

а вот функция которая вернет ваш угол поворота в л2 по начальным и конечным координатам движения:
delphi Код:
function GetDegreeFromMoveToLolation(x1,y1,x2,y2:integer) : real; var x,y:integer; begin x:=x1-x2; y:=y1-y2; result:=atan2(y,x); result:=result+(pi/2); result:=(result/pi)*180+90; if result>360 then result:=result-360; if result<0 then result:=result+360; end;
__________________
Начало.

Последний раз редактировалось supernewbie, 31.10.2010 в 12:20. Причина: Добавлено сообщение
supernewbie вне форума   Ответить с цитированием