![]() |
Как "толкнуть" мувик курсором мыши?
Доброе время суток, уважаемые флэшеры!
Как сделать так, чтоб при соприкосновении курсора с объектом, объект отталкивался от курсора и двигался в противоположном от курсора направлении. У самого меня получилось вот что: Код:
// определяем коэффициент замедленияКто нибудь, одскажите пожалуйста! Заранее благодарен. |
Доброе. Пользуйтесь тэгом code в следующий раз, в противном случае листинг будет стерт.
По теме: 1. Определять угол. Math.atan2( _ymouse, _xmouse ) вернет от -Пи до Пи, но не проблема возвращать от 0 до 360 градусов. 2. Умножив на синус и косинус угла модуль скорости получить нужные скорости по осям. |
А можно для простых случаев вроде этого применять метод проще - работать не с углами, а непосредственно с векторами. Ниже вариант изменения скорости в зависимости от растояния клика от "registration point" клипа. Следует только добавить проверку на столкновение. Если скорость при столкновении менятся не должна - просто использовать знак дельтаХ или У
Код:
var dX:Number = _x - _root._xmouse; |
решение с векторами гораздо более универсально на самом деле
|
Да нифига подобного.
с углами - стандартное решение физической задачи(нахождение проекций скоростей), а с векторами - изврат. |
Kyber Anton, в чем изврат?
векторные вычисления позволяют сделать намного больше (там, где дело касается движений и столкновений), чем рассчеты углов, почитай учебник по физике |
Цитата:
в первом случае ты 1 ищешь угол 2 рассчитываешь значение 3 раскладываешь получившееся значение на 2 оси (2х мерное пространство) 4 применяешь получившиеся значения для каждой оси. Во втором 1 рассчитываешь значение сразу для каждой оси. 2 Применяешь это для каждой оси осей. Второй способ где-то в 1.5 - 2 раза быстрее %)). Правда 1 й спосоп позволяет свободно поворачивать координаты, но это редко когда приходиться делать%)) |
__i, ты это мне разжевываешь?
|
обижаешь %))
естественно окружающим не понявшим тебя %)) |
Спасибо товарисчи! Этой ниформации больше, чем достаточно. Буду пробовать.
|
| Часовой пояс GMT +4, время: 15:34. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.