![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2004
Адрес: macromedia—adobe Любит: Flash MX
Сообщений: 2,860
|
Рабочая версия кода выше
![]() interval = 20; // интервал, в милисекундах
time = 2; // длительность анимации, в секундах
xy = [0, 0, //начальное положение
150, 0,
150, 150,
0, 180,
0,0 //конечное положение
];
function draw1 (what,x0,y0,x1,y1){
if (f > 1/k) return nextXY(); else { x1 = (x1-x0)*k*f; y1 = (y1-y0)*k*f; }
what.clear();
what.lineStyle(5, 0xff00ff, 100, true, "none", "round", "miter", 1);
what.moveTo(x0,y0);
what.lineTo(x0+x1,y0+y1);
f++;
}
function nextXY(){
pos +=2;
ho = this.createEmptyMovieClip("line"+pos, pos);
clearInterval(myInt);
if(pos < xy.length)
{
myInt = setInterval(draw1, interval, ho, xy[pos-2], xy[pos-1], xy[pos], xy[pos+1]);
}
f=1;
}
pos = 0; f = 1; k = interval/time/1000;
nextXY();
//UPDATE: draw => draw1 x => x1 y => y1
__________________
маска лошади и коня в россии и снг с бесплатной доставкой gimmethevape вейпы и поды доставка |
|
|||||
|
? в смысле рабочая?
__________________
Глупости какие-то говорите. |
|
|||||
|
Ostgur согласен с Твоими предложениями... Последнее показалось наиболее удачным... есть над чем подумать... Только "думалка" пока еще в Action Script не въехала...) Много непонятного...((
1. Как мне сделать (использую Твой последний пример со своими координатами), чтобы у меня из одной точки выходило несколько линий одновременно... попытался доп. переменные ввести... не получилось... (линии двигаются с разной скоростью) 2. Линия получается поверх всех мувиков... а мне надо чтобы она только на фоне была... чтобы остальные объекты ей не перекрывались... |
|
|||||
|
Регистрация: Apr 2004
Адрес: macromedia—adobe Любит: Flash MX
Сообщений: 2,860
|
Fl00r, у меня твоя версия не пашет чёт, ты используешь draw, x, y, а они оказываются зарезервированы флэш под что-то там.
Disney75, последний код не мой, а Fl00r, я просто его подправил ![]()
__________________
маска лошади и коня в россии и снг с бесплатной доставкой gimmethevape вейпы и поды доставка |
|
|||||
|
Да... спасибо... хорошо поправил..., а то и у меня его код не стал работать))
Тогда, Fl00r к тебе аналогичный вопрос... 1. Как мне сделать (использую Твой последний пример со своими координатами), чтобы у меня из одной точки выходило несколько линий одновременно... попытался доп. переменные ввести... не получилось... (линии должны двигаться с разной скоростью) Создал еще один массив, добавил в функции nextXY доп. параметры... блин линия перерисовывается с др. координатами (из второго массива) 2. Линия получается поверх всех мувиков... а мне надо чтобы она только на фоне была... чтобы остальные объекты ей не перекрывались... Последний раз редактировалось screamge; 01.11.2007 в 17:25. |
|
|||||
|
ошибки от отсутствия флеша.
сейчас скачаю триал, а то FLex на AS 2.0 не пишет =)
__________________
Глупости какие-то говорите. |
|
|||||
|
Господа.... посмотрите, вот во что превратился код Fl00r'а...)
Но мне кажется я далек от истины...Fl00r, у тебя когда линия доходила до конечных координат... она не исчезала... а мои исчезают... Как это поправить...interval = 20; // интервал, в милисекундах
time = 2; // длительность анимации, в секундах
xy3 = [491.4, 473.5, //начальное положение
418.6,633.6,
479.4,660.3,
558.3,478.5,
466.9,429.1,
570.6,622.4,
668.4,619.1,
736.1,436.1,
507.3,409.3,
547.9,289.4,
304.3,360.3,
273.4,214.3,
267.3,61.4 //конечное положение
]
function draw1 (w){
if (f > 1/k) return nextXY();
else
{
x1 = (w[2]-w[0])*k*f;
y1 = (w[3]-w[1])*k*f;
x2 = (w[4]-w[0])*k*f;
y2 = (w[5]-w[1])*k*f;
x3 = (w[6]-w[0])*k*f;
y3 = (w[7]-w[1])*k*f;
x4 = (w[8]-w[0])*k*f;
y4 = (w[9]-w[1])*k*f;
x5 = (w[10]-w[0])*k*f;
y5 = (w[11]-w[1])*k*f;
x6 = (w[12]-w[0])*k*f;
y6 = (w[13]-w[1])*k*f;
x7 = (w[14]-w[0])*k*f;
y7 = (w[15]-w[1])*k*f;
x8 = (w[16]-w[0])*k*f;
y8 = (w[17]-w[1])*k*f;
x9 = (w[18]-w[0])*k*f;
y9 = (w[19]-w[1])*k*f;
x10 = (w[20]-w[0])*k*f;
y10 = (w[21]-w[1])*k*f;
x11 = (w[22]-w[0])*k*f;
y11 = (w[23]-w[1])*k*f;
x12 = (w[24]-w[0])*k*f;
y12 = (w[25]-w[1])*k*f;
ho1.clear();
ho1.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho1.moveTo(w[0],w[1]);
ho1.lineTo(w[0]+x1,w[1]+y1);
ho2.clear();
ho2.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho2.moveTo(w[0],w[1]);
ho2.lineTo(w[0]+x2,w[1]+y2);
ho3.clear();
ho3.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho3.moveTo(w[0],w[1]);
ho3.lineTo(w[0]+x3,w[1]+y3);
ho4.clear();
ho4.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho4.moveTo(w[0],w[1]);
ho4.lineTo(w[0]+x4,w[1]+y4);
ho5.clear();
ho5.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho5.moveTo(w[0],w[1]);
ho5.lineTo(w[0]+x5,w[1]+y5);
ho6.clear();
ho6.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho6.moveTo(w[0],w[1]);
ho6.lineTo(w[0]+x6,w[1]+y6);
ho7.clear();
ho7.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho7.moveTo(w[0],w[1]);
ho7.lineTo(w[0]+x7,w[1]+y7);
ho8.clear();
ho8.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho8.moveTo(w[0],w[1]);
ho8.lineTo(w[0]+x8,w[1]+y8);
ho9.clear();
ho9.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho9.moveTo(w[0],w[1]);
ho9.lineTo(w[0]+x9,w[1]+y9);
ho10.clear();
ho10.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho10.moveTo(w[0],w[1]);
ho10.lineTo(w[0]+x10,w[1]+y10);
ho11.clear();
ho11.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho11.moveTo(w[0],w[1]);
ho11.lineTo(w[0]+x11,w[1]+y11);
ho12.clear();
ho12.lineStyle(2, 0xFFFF33, 100, true, "none", "round", "miter", 1);
ho12.moveTo(w[0],w[1]);
ho12.lineTo(w[0]+x12,w[1]+y12);
}
f++;
}
function nextXY(what){
ho1 = this.createEmptyMovieClip("line"+1, 1);
ho2 = this.createEmptyMovieClip("line"+2, 2);
ho3 = this.createEmptyMovieClip("line"+3, 3);
ho4 = this.createEmptyMovieClip("line"+4, 4);
ho5 = this.createEmptyMovieClip("line"+5, 5);
ho6 = this.createEmptyMovieClip("line"+6, 6);
ho7 = this.createEmptyMovieClip("line"+7, 7);
ho8 = this.createEmptyMovieClip("line"+8, 8);
ho9 = this.createEmptyMovieClip("line"+9, 9);
ho10 = this.createEmptyMovieClip("line"+10, 10);
ho11 = this.createEmptyMovieClip("line"+11, 11);
ho12 = this.createEmptyMovieClip("line"+12, 12);
clearInterval(myInt);
if(pos < what.length)
{
//myInt = setInterval(draw1, interval, what[pos-2], what[pos-1], what[pos], what[pos+1]);
myInt = setInterval(draw1, interval, what);
}
f=1;
}
pos = 0; f = 1; k = interval/time/1000;
nextXY(xy3);
//UPDATE: draw => draw1 x => x1 y => y1
Последний раз редактировалось Disney75; 03.11.2007 в 13:24. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Disney75, отредактируйте свой пост и оформите код тегами [code][/code].
|
![]() |
![]() |
Часовой пояс GMT +4, время: 13:28. |
|
|
« Предыдущая тема | Следующая тема » |
|
|