575

Программирование интерактивной графики на Action Script 2.0 Adobe Flash

Курсовая

Информатика, кибернетика и программирование

Среда Adobe Flash позволяет создавать графику, анимации и интерактивные проекты. Для того чтобы вызвать все функции одновременно можно использовать супер функцию. Создание интерактивности. Увеличение и уменьшение объекта по движении мыши.

Русский

2013-01-06

63 KB

70 чел.

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ

ОБЛАСТНОЙ УНИВИВЕРСИТЕТ

ФИЗИКО-МАТЕМАТИЧЕСКИЙ ФАКУЛЬТЕТ

                                                                                            Кафедра

                                                                                            вычислительной

                                                                                            математики и методики

                                                                                            преподавания

                                                                                            информатики

КУРСОВАЯ РАБОТА

Программирование интерактивной графики на Action Script 2.0 Adobe Flash

                                                                                  Подготовила студентка 31

                                                                                  Группы (специальность

                                                                                  «Информатика»)

                                                                                  Ковалева А.В.

                                                                                  Проверил:

 старший преподаватель

                                                                                  Птицын В.А.

МОСКВА  2011

Содержание

  1.  Теория.
  2.  Алгоритм действий
  3.  Программный код
  4.  Литература

Часть первая

Теория.

 Первоначально Flash было инструментом для быстрого создания векторной графики и анимации для сети Интернет. Именно благодаря возможности создания анимации без использования программного кода Flash завоевала большую популярность. В начале 2000-х годов в версии Macromedia Flash5 появился довольно развитый язык программирования, позволявший осуществлять некоторые из элементов интерактивного управления анимацией.

Кроме того, необходимо учитывать, что во Flash можно разрабатывать не только продукты, ориентированные на сеть Интернет: отдельные картинки, Интернет страницы, сайты, но и продукты, функционирующие на локальном компьютере под управлением операционной системы: например, игры, викторины, обучающие программы. Для преподавания программирования в среде Flash, впрочем, было и частично остается по сею пору и существенное препятствие: не обязательность указания типа переменных, малое количество типов числовых переменных. Если привыкнуть к таким вольностям, то трудно будет работать в других средах, где описание переменных является обязательным.  Поэтому Flash целесообразно преподавать как второй язык, показывая новые тенденции в программировании.

Необходимо понимать, что у Flash есть и свои ограничения, предопределяемые ее основным назначением: платформо-независимая программа, выполняемая на стороне клиента и обеспечивающая в случае необходимости взаимодействие с сервером. Например, никому не придет в голову пытаться выполнять во Flash инженерные расчеты или имитационное моделирование сложной системы. С одной стороны, не хватит быстродействия, а с другой стороны малый набор числовых типов данных не позволит написать эффективную программу.

Все вышесказанное говорит о том, что нынешним студентам физико-математического факультета МГОУ целесообразно знать Flash. А если посмотреть на возможности уже вышедшего и широко используемого языка Action Script 2.0 среды Adobe Flash, познакомиться с планами корпорации Adobe относительно Action Script 2.0, то становится очевидным, что студентам необходимо знать Flash, независимо от того собираются ли они стать учителями информатики или IT специалистами.

Среда Adobe Flash позволяет создавать графику, анимации и интерактивные проекты 3 способами:

1.Без использования программирования

2.Только с использованием программирования

3.В равных долях ручные методы и программирование

Третий способ самый популярный, так как в нем предоставлены самые большие возможности.

Adobe Flash в настоящие время самая популярная программа для создания приложений в интернете. Его большие можно возможности использовать для преподавания информатики в школе.

Часть вторая

Алгоритм действий

Постановка задач

Создать интерактивную фигуру

                                                                                                                                         

В данной работе создаются интерактивности:

•  увеличение и уменьшение объекта по движению мыши

•  движение объекта вправо влево по движению мыши

•  движение вверх вниз по движению мыши

Математическая модель

Разобьем нашу фигуру на отдельные элементы, которые будут вызываться по отдельным функциям

 • квадрат

• ромб

• крест

Квадрат

входными параметрами будут x0,y0,a.

            Для того чтобы нарисовать крест я

     использовала 2 команды: moveTO и lineTO

Function kvadrat1(my_mc:MovieClip,x0:Number,y0:Number,a:Number,

lColor:Number,fColor:Number,del:Number):Void

{

draw_mc.beginFill(fColor,50);

my_mc.lineStyle(del,lColor,100);

my_mc.moveTo(x0,y0);

my_mc.lineTo(x0,y0+a);

my_mc.lineTo(x0+a,y0+a);

my_mc.lineTo(x0+a,y0);

my_mc.lineTo(x0,y0);

 my_mc.endFill()

;                                           

Ромб

Входными параметрами будут  служить x0,y0,a.

            Для того чтобы нарисовать крест я

     использовала 2 команды: moveTO и lineTO

Function romb (my_mc: MovieClip, x0, y0, a: Number,

LColor: Number, fColor: Number, Del: Number): Void

{

draw_mc.beginFill(fColor,50);

my_mc.lineStyle(del,lColor,100);

my_mc.moveTo(x0+a/2,y0);

my_mc.lineTo(x0,y0+a/2);

my_mc.lineTo(x0+a/2,y0+a);

my_mc.lineTo(x0+a,y0+a/2);

my_mc.lineTo(x0+a/2,y0);

 my_mc.endFill();

Крест

Входными параметрами будет x0,y0,a.

            Для того чтобы нарисовать крест я

     использовала 2 команды: moveTO и lineTO

function krest(my_mc:MovieClip,x0:Number,y0:Number,a:Number,

lColor:Number, fColor:Number, del:Number):Void

{

draw_mc.beginFill(fColor,50);

my_mc.lineStyle(del,lColor,100);

my_mc.moveTo(x0+a/2,y0);

my_mc.lineTo(x0+a/2,y0+a);

my_mc.moveTo(x0,y0+a/2);

my_mc.lineTo(x0+a,y0+a/2);

 my_mc.endFill();

};

Для того чтобы вызвать все функции одновременно можно использовать супер функцию - она объединяет все функции в одну и по ней можно делать интерактивность.

Function superFun(my_mc:MovieClip,xSt:Number,ySt:Number,kx:Number,ky:Number,ka:Number):Void

{

lColor1=6736896;

fColor1=16724787;

del1=10;

kvadrat1(my_mc, kx*xSt, ky*ySt, ka*ySt,lColor1,fColor1,del1);

lColor2=13382604;

fColor2=13395660;

del2=10;

romb(my_mc, kx*xSt, ky*ySt,ka*ySt,lColor2,fColor2,del2);

lColor3=10027059;

fColor3=12547;

del3=10;

krest(my_mc, kx*xSt, ky*ySt, ka*ySt,lColor3,fColor3,del3);

 

Создание интерактивности

Как было, изложено выше я использовала интерактивности:

•  увеличение и уменьшение объекта по движению мыши

•  движение объекта вправо влево по движению мыши

•  движение вверх вниз по движению мыши

Увеличение и уменьшение объекта по движении мыши

Приведем пример кода

var mouseListener:Object=new Object(); //шаг первый создали объект - слущатель его имя: mouseListener

mouseListener.onMouseMove=function() //шаг второй создаем функцию которая задает что произойдет когда мы услышим движение мыши

{

   draw_mc.clear(); // очистка экрана

ka=_xmouse/xSt; // при изменении положения мыши меняется коэффициент КА

superFun(draw_mc,xSt,ySt,kx,ky,ka,lColor,fColor,del);//вызов функции с новым расчитанным значением КА

 

};

Mouse.addListener(mouseListener); // шаг три включаем слушателя

При помощи этой интерактивности я смогу отслеживать изменение коэффициента ка.

движение объекта вправо влево по движению мыши

приведем пример кода

var mouseListener:Object=new Object(); //шаг первый создали объект - слущатель его имя: mouseListener

mouseListener.onMouseMove=function() //шаг второй создаем функцию которая задает что произойдет когда мы услышим движение мыши

{

   draw_mc.clear(); // очистка экрана

 kx=_xmouse/xSt;

 superFun(draw_mc,xSt,ySt,kx,ky,ka,lColor,fColor,del);//вызов функции с новым расчитанным значением КА

 

};

Mouse.addListener(mouseListener); // шаг три включаем слушателя

движение вверх вниз по движению мыши

приведем пример кода

var mouseListener:Object=new Object(); //шаг первый создали объект - слущатель его имя: mouseListener

mouseListener.onMouseMove=function() //шаг второй создаем функцию которая задает что произойдет когда мы услышим движение мыши

{

              draw_mc.clear(); // очистка экрана

 //ky=_ymouse/ySt;

superFun(draw_mc,xSt,ySt,kx,ky,ka,lColor,fColor,del);//вызов функции с новым расчитанным значением КА

};

Mouse.addListener(mouseListener); // шаг три включаем слушателя

Часть третья

Программный код

Программный код

//функция квадрат

function kvadrat1(my_mc:MovieClip,x0:Number,y0:Number,a:Number,lColor:Number,fColor:Number,del:Number):Void

{

draw_mc.beginFill (fColor, 50);

my_mc.lineStyle (Del, lColor, 100);

my_mc.moveTo(x0, y0);

my_mc.lineTo(x0,y0+a);

my_mc.lineTo(x0+a,y0+a);

my_mc.lineTo(x0+a, y0);

my_mc.lineTo(x0, y0);

my_mc.endFill ();

};

//функция ромб

function romb(my_mc:MovieClip,x0,y0,a:Number,lColor:Number, fColor:Number, del:Number):Void

{

draw_mc.beginFill (fColor, 50);

my_mc.lineStyle(del,lColor,100);

my_mc.moveTo(x0+a/2,y0);

my_mc.lineTo(x0,y0+a/2);

my_mc.lineTo(x0+a/2,y0+a);

my_mc.lineTo(x0+a,y0+a/2);

my_mc.lineTo(x0+a/2,y0);

my_mc.endFill();

};

//функция крест

function krest(my_mc:MovieClip,x0:Number,y0:Number,a:Number,lColor:Number, fColor:Number, del:Number):Void

{

draw_mc.beginFill(fColor,50);

my_mc.lineStyle(del,lColor,100);

my_mc.moveTo(x0+a/2,y0);

my_mc.lineTo(x0+a/2,y0+a);

my_mc.moveTo(x0,y0+a/2);

my_mc.lineTo(x0+a,y0+a/2);

my_mc.endFill();

};

function superFun(my_mc:MovieClip,xSt:Number,ySt:Number,kx:Number,ky:Number,ka:Number):Void

{

lColor1=6736896;

fColor1=16724787;

del1=10;

kvadrat1(my_mc, kx*xSt, ky*ySt, ka*ySt,lColor1,fColor1,del1);

lColor2=13382604;

fColor2=13395660;

del2=10;

romb(my_mc, kx*xSt, ky*ySt,ka*ySt,lColor2,fColor2,del2);

lColor3=10027059;

fColor3=12547;

del3=10;

krest(my_mc, kx*xSt, ky*ySt, ka*ySt,lColor3,fColor3,del3);

};//закрываем superFun

//начинается исполняемый код

_root.createEmptyMovieClip("draw_mc",0);

ySt = Stage.height;

xSt = Stage.width;

kx=0.1;

ky=0.1;

ka=0.9;

//интерактивность

var mouseListener:Object=new Object(); //шаг первый создали объект - слущатель его имя: mouseListener

mouseListener.onMouseMove=function() //шаг второй создаем функцию которая задает что произойдет когда мы услышим движение мыши

{

   draw_mc.clear(); // очистка экрана

ka=_xmouse/xSt; // при изменении положения мыши меняется коэффициент КА

 kx=_xmouse/xSt;

ky=_ymouse/ySt;

superFun(draw_mc,xSt,ySt,kx,ky,ka,lColor,fColor,del);//вызов функции с новым расчитанным значением КА

 

};

Mouse.addListener(mouseListener); // шаг три включаем слушателя

Финальный рисунок

Часть четвертая

Литература

Литература

  1.  Официальный учебный курс. Adobe CS3 Professional. —

М: Триумф, 2008.

  1.  Бхангал Ш. — Flash. Трюки. 100 советов и рекомендаций профессионала. СПб: Питер, 2005.


 

А также другие работы, которые могут Вас заинтересовать

78390. Понятие о электрической схеме, условные обозначения схемы 32.24 KB
  Электрические схемы по ГОСТ. Структурные схемы используются для общего ознакомления с электропередачей тепловоза. Функциональные схемы представляют для объяснения принципов работы электрических машин аппаратов отдельных систем.
78393. Тепловоз 2ТЭ116 588.91 KB
  После этого от автоматического выключателя А В подается питание на контактор маслопрокачивающего насоса КМН и блок пуска дизеля БПД следующей цепи: плюс от АУ по проводам 16841685 через замкнутый блокировки крана машиниста БУ по проводам 1686 1687 через замкнутый контакт реверсивного механизма контроллера машиниста ВОН по провода 1696 через замкнутый на нулевой позиции контакт 4 контроллеры машиниста по провода 1699 через замкнутый контакт кнопки ПД1 по проводам 1702 1703 1704 через уравнительный резистор СУ по провода 1706 через...
78395. Электрическая цепь трогание с места 37.54 KB
  Для примера рассмотрим цепь второй группы тяговых электродвигателей: плюс главного генератора общая шина 1 замкнутые контакты и катушка дугогашения контактора КП2 S2 кабель 13 обмотка якоря и дополнительных полюсов тягового электродвигателя 3 кабель 14 обмотка якоря и дополнительных полюсов тягового электродвигателя 4 кабель 15 замкнуты пальцы и сегменты реверсора Р Р Z кабель 18 обмотка возбуждения электродвигателя 3 кабель 17 обмотка возбуждения электродвигателя 4 кабель 16 замкнуты пальцы и сегменты реверсора Р Р Z кабель...
78397. Цепи реверсирования и ослабление поля 2.36 MB
  Для расширения диапазона скоростей при которых мощность дизеля используется полностью применяется регулирование частоты вращения тяговых электродвигателей путем изменения их магнитного потока возбуждения ослабление магнитного поля. Если параллельно обмотке возбуждения подключить резистор зашунтировать обмотку через нее будет протекать только часть тока якоря и магнитный поток уменьшится. прямо пропорциональна частоте вращения якоря и магнитному потоку возбуждения. Так как скорость локомотива а значит и частота вращения якоря...
78398. Защита и сигнализация схемы при перегреве воды и масла 2.48 MB
  Электрическая схема вспомогательных цепей управления Недостаточное давление масла в системе дизеля Если при работающем дизеле давление масла становится меньше установленного для данной позиции контроллера контакты реле РДМ1 входящей в блок защиты встроенный в регулятор дизеля замыкают цепь сигнальной лампы ЛДМ. При недопустимом уменьшении давления масла контакты датчикареле давления РДМ4 разрывают цепь питания катушки реле РУ9. При пуске дизеля давление масла контролируется с помощью реле РДМЗ контакты которого включены в цепь...