Немного геометрии
Автор: Daddy
WEB-сайт: http://daddy.mirgames.ru
- Прилежащий катет = B.X-A.X = 89
- Противолежащий катет = B.Y-A.Y = 78
- TAN a = Противолежащий катет / Прилежащий катет = 78 / 89 =0.876
- a = ATAN Противолежащий катет / Прилежащий катет = ASIN 78 / 89 = 41.23 градуса
- SIN a = Противолежащий катет / Гипотенуза = SIN 41.23 = 0.659
- Гипотенуза = Противолежащий катет / SIN a = 78 / 0.659 = 118.3
А теперь зачем оно надо. Ну например делаете вы танковые бои с видом сверху и нужно, что бы танк поворачивался в ту сторону, куда вы ткнули мышкой. Так вот определить на какой угол повернуть спрайт и помогут эти формулы.
ATAN=1/TAN. Все градусы нужно переводить в радианы: функция DegToRad (uses Math)
или Радиана = Градус*(pi/180). Pi=3.14.
В DelphiX круг=256 градусов, соответственно Угол Отображения=360/256*Реальный угол. А как вывести спрайт можно почитать в статье о методах вывода спрайтов.
|