![]() |
|
||||||||||
|
|||||
|
Регистрация: Aug 2001
Адрес: vg
Сообщений: 352
|
Этот скрипт генерирует молнии.
Дискретизированную кривую можно описать через приращение на угол к направлению последнего отрезка. На этом алгоритме можно строить криволинейные пути. Молния это один из вариантов применения. //собственно скрипт вставляется в 1 первый кадр и в перед. // инициализация rad = Math.PI/180; _root.createEmptyMovieClip("ligh", 3); lcol=new Color(_root.ligh); //--------------------- //функция генерирования молнии _root.gl = function () { angle=random(180); with (_root.ligh) { clear(); f=0; s=10; x=random(600)+100;y=random(60)+5; moveTo(x, y); f=0; n=0; do { f++; n++; if(s>0.1)s-=0.02; if(s>4) s-=0.05; // генерация очередного участка кривой // с - количество сегментов // da - приращение // z - показатель для приращения если 0 то прямая if (f>=c) { c = random(6)+1; da = random(12)+3; z = random(3)-1; f = 0; } angle += z*da; if(angle>180){z=(-1)*z;angle= 180;} if(angle<0){z=(-1)*z;angle=0;} x += 3*Math.cos(angle*rad); y += 3*Math.sin(angle*rad); lineStyle(s, 0xffffff); lineTo(x, y); cmp= y>550 || x>800 || x<0; } while (!cmp); } }; // -------- gl end ------------------ _root.onEnterFrame=function(){ cl++; // переменная для выбора цвета fr++; // длинна визуализации if(fr==23){_root.gl();fr=0;} if(cl==1){lcol.setRGB(0xffffff)}else{ lcol.setRGB(0xddccff);cl=0;} } stop(); best regards, Grey Последний раз редактировалось greyshaman; 20.05.2002 в 12:02. |
![]() |
Часовой пояс GMT +4, время: 19:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|