Показать сообщение отдельно
Старый 18.02.2015, 20:44
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 2  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,922
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Если вы про линейное уравнение, то нет, здесь оно ни к месту =)
Для начала вот так

Код AS3:
var dir:Number = Math.atan2(mouseY-obj.y, mouseX-obj.x) / Math.PI * 180;
dir += 180;
var speed:Point = new Point(Math.cos(dir/180*Math.PI), Math.sin(dir/180*Math.PI));
На выходе получаем экземпляр Point со скоростями x и y, прибавляйте их при входе в кадр(ENTER_FRAME) к координатам объекта.
Чтобы увеличить скорость движения используйте speed.normalize(10); - где 10 - новая скорость для объекта.
Изначально скорость = 1, ибо на выходе после тригонометрических функций =)

На самом деле, код можно упростить, но я использовал такой вид для наглядности действий.

А это - элементарная тригонометрия и векторная алгебра.
__________________
There is no thing in this world that is not simple.


Последний раз редактировалось ZackMercury; 18.02.2015 в 21:11.