
09.10.2008, 19:43
|
|
Регистрация: Jul 2008
Адрес: Рига
Сообщений: 176
|
Цитата:
При тестировании обнаружилась проблема, связанная с углом поворота. Rotation измеряется в градусах от -180 до 180. И если, к примеру, цель находится в -175 градусов, а мы повернуты на 175, то в результате angle будет равен —350 градусов! Турель вместо того, чтобы повернуться на -10 градусов, начнет разворачиваться в другую сторону.
Решается это просто, если результат поворота получился по модулю больше 180 градусов, что не возможно, то отнимаем один оборот (360 градусов):
(из http://www.flasher.ru/forum/showthread.php?t=83431)
|
 Код:
// проблема с переходом -180...180
if (angle>180){
angle-=360;
} else if (angle<-180){
angle+=360;
}
|