575

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

Курсовая

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

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

Русский

2013-01-06

63 KB

68 чел.

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

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

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

                                                                                            Кафедра

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

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

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

                                                                                            информатики

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

Программирование интерактивной графики на 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.


 

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

10976. Проверка качества уравнения регрессии 80.42 KB
  Проверка качества уравнения регрессии Оценим насколько хорошо модель линейной регрессии описывает данную систему наблюдений. В качестве этой оценки воспользуемся коэффициентом детерминации. Составим следующие суммы квадратов отклонений: фактических значений от...
10977. Множественная линейная регрессия 39.67 KB
  Множественная линейная регрессия Обобщением линейной регрессионной модели с двумя переменными является многомерная регрессионная модель или модель множественной регрессии. Уравнение множественной регрессии может быть представлено в виде где вектор независим
10978. Выполнение многомерного регрессионного анализа в пакете STATISTICA 198.06 KB
  Выполнение многомерного регрессионного анализа в пакете STATISTICA Рассмотрим пример построения регрессионной модели в пакете Statistica 6.0. Для этих целей обычно используется модуль Multiple Regressions Множественная регрессия который позволяет предсказать зависимую переменную по н...
10979. Нелинейная регрессия 192.4 KB
  Нелинейная регрессия Связь между признаком и может быть нелинейной например в виде полинома: Здесь степень полинома случайная составляющая Для имеющихся данных можно записать По аналогии с 14.4 в матричной форме получим: где . Таким образом получ...
10980. Факторный анализ. Задача однофакторного анализа 89.48 KB
  Факторный анализ Ранее была рассмотрена проверка значимости различия выборочных средних двух совокупностей. На практике часто возникает необходимость обобщения задачи т.е. проверки существенности различия выборочных средних совокупностей . Например требуется оцен
10981. Однофакторный дисперсионный анализ 136.3 KB
  Однофакторный дисперсионный анализ Для описания данных в большинстве случаев оказывается приемлема аддитивная модель. Она предполагает что значение отклика можно представить в виде суммы вклада воздействия фактора и независимой от вкладов факторов случайной велич...
10982. Однофакторный анализ в системе statistica 6.0 168.06 KB
  Однофакторный анализ в системе statistica 6.0 Рассмотрим типичную задачу однофакторного анализа реально возникшую на производстве. Пример.На заводе разработаны две новые технологии Т1 и Т2. Чтобы оценить как изменится дневная производительность при переходе на новые техн...
10983. Однофакторный анализ в системе statistica 6.0. Критерий Кронкхиера 257.69 KB
  ОДНОФАКТОРНЫЙ АНАЛИЗ В СИСТЕМЕ Statistica 6.0 Критерий Кронкхиера Если известно что имеющиеся группы результатов упорядочены по возрастанию убыванию влияния фактора то в таких случаях можно использовать статистику Джонкхиера более чувствительную более мощную против...
10984. Двухфакторный анализ 146.5 KB
  Двухфакторный анализ Бывает что в рамках однофакторной модели влияние интересующего нас фактора не проявляется хотя логические соображения указывают что такое влияние должно быть. Иногда это влияние проявляется но точность выводов о количественной оценке этого вли...