« назад «

Программное рисование во FLASH.

[ 03 / 05 / 04 ]





Скачать исходник: fgraf.zip [6 Kb] download


Программное рисование во FLASH можно реализовывать двумя методами. Первый - это копирование объектов Movie Clip в определенную позицию, а второй - использование методов класса того же Movie Clip, а именно:
· moveTo - установка курсора в новую позицию
· lineTo - прорисовка линии из текущей точки в новую
· curveTo - прорисовка кривой из текущей точки

Воспользуемся обоими методами для построения графика функции.

1. Как всегда сначала создадим новый документ во FLASH 320x260 - fgraf.fla.
2. Создадим в нем новый слой, как показано на рисунке.



3.Далее создадим объект MovieClip. А именно нарисуем маленький кружок, например желтого цвета, и предварительно выделив его, нажмем правую кнопку мыши, в появившемся меню выберем пункт Convert to Symbol.



4. В итоге в библиотеке элементов у нас появится объект dot. Выделите его и нажмите правую клавишу мыши, в появившемся меню выберите пункт Linkage… и установите птички в соответствии с рисунком.



5. Ну что же, почти вся подготовительная часть завершена, так что приступим к программированию на ActionScript. Создайте еще один слой и назовите его action. Выделите первый кадр и перейдите в панель Actions, где впишите следующий код.


// начальная координата откуда идет отсчет
var WAVEX0 = 12;
var WAVEY0 = 65;
//название само говорит за себя
var angle = 0;
// построение с помощью дублирования клипа "dot"
for (var i=0; i<180; i++) {
angle -= Math.PI/180*2;
this.attachMovie("dot", "dot"+i, i, {_x:WAVEX0+i, _y:WAVEY0 - Math.sin(angle)*50});
}



После чего полученное приложение можно тестировать.

6. С первым методом разобрались, остался второй. В нем тоже все предельно просто. Добавим к нашему проекту новый MovieClip как в пункте 3, но только пустой.



7. Еще необходимо присвоить имя нашему клипу в кладке Properties - mc, для того чтобы в скрипте можно было обратиться к нему.



8. Этот пункт заключительный. Нам осталось лишь дописать немножко кода в слое action. Добавьте следующее:


// построение с помощью методов класса MovieClip (moveTo,lineTo)
// в нашем случае классом типа MovieClip является объект _root - как видно
// из его названия он корневой элемент в иерархии всех MovieClip'ов нашей сцены
var xtemp = 0;
var ytemp = 0;
// устанавливаем стиль линии
mc.lineStyle(2, 0x000000, 100);

for (var i=0; i<180; i++) {
angle -= Math.PI/180*2;
mc.moveTo(xtemp,ytemp);
xtemp = xtemp + 1;
ytemp = ytemp + Math.sin(angle)*0.5;
mc.lineTo(xtemp,ytemp);
}
stop();




Все… the end.



© 2004 by MAX фотогалерея :: программирование :: flash :: о проекте    
Сайт создан в системе uCoz