Просмотр полной версии : Как имитировать движение синусоиды?
australian incognito
25.09.2005, 20:37
Может кто видел сайт Coca-Cola.
Там в прелоадере такая синусоида колеблется.
Мне нужно реализовать точно такой же её вариант для собственных целей. Важно, чтобы она изгибалась как на сайте, а не просто продвигалась слева - направо.
Может у кого исходничек есть?
ты про АС говорил?
тогда посмотри это: (исправил архиватор загубил:p)
australian incognito
25.09.2005, 21:19
Что-то файл не открывается во флеше! Говорит, что повреждён или что-то типа того.
а у тебя Флеш какой версии?
australian incognito
26.09.2005, 02:05
а у тебя Флеш какой версии?
MX 2004 Pro
australian incognito
26.09.2005, 04:22
Спасибо, но это не совсем то.
Смотри, что я имел в виду >>>
australian incognito
27.09.2005, 12:21
Ребята, помогите plz. Ну очень нужно.
Бармалей
27.09.2005, 14:41
Да нарисуй ее просто =)
Vitamin E
28.09.2005, 01:45
Типа того?
MovieClip.prototype.draw = function(xScale, yScale, dY) {
this.lineStyle(3, 0x000000, 100);
this.moveTo(0, 200-yScale*Math.sin(dY));
for (x=0; x<500; x += 1) {
this.lineTo(x, 200-yScale*Math.sin(x/xScale+dY));
}
};
//----------------------------------------------------------------
_root.onLoad = function() {
this.draw(79, 200, 0);
};
y0 = 0;
_root.onEnterFrame = function() {
y0 += 0.1;
this.clear();
this.draw(79, 200, y0);
};
australian incognito
29.09.2005, 02:59
Спасибо, дружище!
Это именно то, что мне и нужно, вот если бы ещё и с комментариями, а то методом тыка приходиться изменять какой-то параметр и смотреть, что меняется в ролике.
Vitamin E
29.09.2005, 10:58
Да там в принципе в названии параметров все есть:
xScale - коэффициент сжатия по оси X;
yScale - коэффициент сжатия по оси Y;
dY - смещение начальной точки (крайняя слева) по оси Y :)
australian incognito
29.09.2005, 11:12
Еще раз большое спасибо!
australian incognito
29.09.2005, 12:56
Может подскажешь ещё как мне , например, за 60 кадров плавно поднять её на 20 пикселей вверх, чтобы при этом она продолжала извиваться.
FreeLander
29.09.2005, 13:06
нарисовал бы ты её действительно и не парился бы
Vitamin E
29.09.2005, 14:39
Для этого просто надо создать пустой мув, в нем отрисовывать синусоиду и его же двигать (можно по Y, можно по X):
//----------------------------------------------------------------
_root.createEmptyMovieClip("holder_mc", 1);
y0 = 0;
delthaH=-20; //Величина смещения
speed=0.5; //Скорость смещения
_root.onEnterFrame = function() {
y0 += 0.1;
holder_mc.clear();
holder_mc.draw(90, 50, y0);
if (holder_mc._y>-delthaH) {
holder_mc._y -= speed;
}
};
australian incognito
30.09.2005, 00:11
нарисовал бы ты её действительно и не парился бы
Что значит нарисовал? Ты исходник видел? Если её просто нарисовать, то как заставить извиваться? Если отрисованная синусоида движется допустим слева направо, то эффект совсем не тот, что я хочу.
Между прочим это была моя первая мысля, но не прокатило, а так как я в AS не очень шарю, то пришлось к папам обратиться.
australian incognito
30.09.2005, 00:12
Vitamin E - отдельное спасибо. С пониманием подошёл к вопросу.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.