Задать вопрос
@CosmoAriral

Как найти угол, для поворота башни, на цель?

Я в одной игре, хочу сделать механизм, который, поворачивает башню, на необходимые мне координаты, состоящие из Х и Y. Координаты что цели, что башни постоянно известны. Так же при необходимости может быть известен угол поворота башни. Который считывается от 0 до 360 (Так же можно и в минус от 0 до -360), так же и с координатами, они могут идти в минусовые значения.
Вот для примера:
Башня:
Х1- 1;
Y1- 3;
Поворот: 30 градусов;
Цель:
X2- 5
Y2- 9
Что мне поможет это решить?
В школе у меня была крайне отталкивающая учительница по геометрии, от чего мои познания геометрии, оканчиваются лишь тем, что Пифагор придумал теорему Пифагора. По этому, я буду крайне рад, если вы мне поможете решить мою проблему. Заранее спасибо!
  • Вопрос задан
  • 85 просмотров
Подписаться 1 Средний 3 комментария
Пригласить эксперта
Ответы на вопрос 1
wataru
@wataru
Разработчик на С++, экс-олимпиадник.
Угол 0 куда смотрит? Куда смотрит 90 градусов? Обычно считают, что 0 смотрит строго враво, а 90 - вверх.

Шаг 1. Вам неважно, где именно находятся башня и цель, важно их относительное положение, поэтому посчитайте dx=x2-x1, dy = y2-y1

Шаг 2. Подставьте в какую-нибудь обратную тригонометрическую функцию, например arctan(dy/dx). Тут правда незадача, если dx=0, то надо смотреть на знак dy и выдавать sign(dy)*90. Еще проблема, что arctan вам вернет значение от -90 до 90 всегда. Если dx отрицательно, то надо прибавить 180.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы