Показать сообщение отдельно
  #6 (permalink)  
Старый 10.01.2013, 23:53
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

l-liava-l,
у тебя есть точка х, у на окружности, которая изменяется?
x1,y1,x2,y2;
// С окржностью все не так просто
// Нужно узнать в какой четверти ты находишься (просто нельзя написать atan(x1/y1) и при это, учитывая, что к этому надо прибавить нужно колчиство Math.PI * 90 / 180)

Я четверти так преставляю:
1 2
3 4

0;0 у нас между 3 и 4 ой снизу
Если тело находиться в 1, то угол равен: Math.atan(x1/y1)  + Math.PI * 90 / 180
Если тело находиться в 4, то угол равен:- Math.atan(x1/y1) // Уго получится отрицательный (на твое усмтрение, можешь сделать 300 градусов, или -60)
в 3ей: Math.atan(x1/y1)
и во 2ой: - Math.PI * 90 / 180 + Math.atan(x1/y1)


Короче находишь угол, и сравниваешь значения) Надеюсь понятно обхяснил)

хз поможет или нет, но вот я на канвасе пишу, посомтри функцию rot(x,y) Она поворачивает дуло на указанные координаты
(там смотри только как angleвычисляется)

http://gmoryes.bplaced.net/shoot.html
__________________
оляля, ололо

Последний раз редактировалось 9xakep, 11.01.2013 в 00:01.
Ответить с цитированием