Просмотр полной версии : вопрос по траектории движения
Люди как программно прописать траекторию движения "по дуге" (полоинка параболы)?
dee_lapochka
05.11.2003, 18:52
y=a*x*x+b*x+c
var t=0;
mc.onEnterFrame=function(){
this._x=t;
this._y=t*t;
t++;
}
// коэфициэнты a и b сами подставите
_1_Maxim
05.11.2003, 23:03
Можно сделать и не интегрируя.
a= const;// ускорение
vx=const;// скорость x
vy=const;// скорость y
mc.onEnterFrame=function()
{
this._x+=vx;
this._y+=vy;
vy+=a;
}
Как видно всё линейно. Никаких умножений. Оптимизация!
В результате-движение в однородном поле(тяжести).
большое спасибо как сделаю скину ссылочку оцените:)
еще вопрос ... хочу сделать чтоб например 30 мувиков дублировалось....и летало по параболе с разным отклонением....может кто подскажет как...вот на чем я остановился:
_root._x = 150;
_root._y = 150;
x = -150;
if (Math.random()*8<6){
i=random(50);
i++;
if (i>50) i=1;
duplicateMovieClip ("muv", "muv"+i, i)
setProperty ("muv"+i, _x, x);
setProperty ("muv"+i, _y, y);}
_root.onEnterFrame = function() {
x++;
y = ((Math.pow(x, 2))*-0.02)+130;
_root.muv._x = x;
_root.muv._y = y;
if (_root.muv._x>150) {
x = -150;
}
};
еще вопрос ... хочу сделать чтоб например 30 мувиков дублировалось....и летало по параболе с разным отклонением....может кто подскажет как...вот на чем я остановился:
_root._x = 150;
_root._y = 150;
x = -150;
if (Math.random()*8<6){
i=random(50);
i++;
if (i>50) i=1;
duplicateMovieClip ("muv", "muv"+i, i)
setProperty ("muv"+i, _x, x);
setProperty ("muv"+i, _y, y);}
_root.onEnterFrame = function() {
x++;
y = ((Math.pow(x, 2))*-0.02)+130;
_root.muv._x = x;
_root.muv._y = y;
if (_root.muv._x>150) {
x = -150;
}
};
то есть .... понимаю что нужно нужн написать два обработчика..... : процедуру расчета случайной точки (конечной точки параболы) - каждый фар летит по своей параболе
и процедуру движения фара по параболе.....
и как их совместить грамотно что б фары вылетали из одной точки НО по разным траекториям....(параболам и исчезали)...
Заранее спасибо...:)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.