575

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

Курсовая

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

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

Русский

2013-01-06

63 KB

73 чел.

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

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

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

                                                                                            Кафедра

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

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

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

                                                                                            информатики

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

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


 

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

2244. Інженерний аналіз характеристик надійності машин та обладнання 1.04 MB
  Коротка характеристика і умови роботи агрегату (вузла) в цілому та основних видів сполучень. Характеристика конструктивно-технологічних особливостей зміцнювальної (відновлювальної) деталі. Аналіз причин, обґрунтування, визначення та описання провідного виду зношення сполученої поверхні деталі. Визначення статистичних характеристик повного ресурсу сполучення за вихідною масовою інформацією.
2245. Основы религиоведения 1.52 MB
  Религия как общественное явление. Происхождение религии и ее ранние формы. Социальное учение мировых религий. Государственно-церковные отношения. Эволюция религии в современном мире.
2246. Проектирование подстанции 1.29 MB
  Выбор аппаратуры и токоведущих частей подстанции. Расчет максимальных рабочих токов основных присоединений подстанции. Выбор и проверка аппаратуры и токоведущих частей. Расчетная схема подстанции. Проверка токоведущих частей, изоляторов и аппаратуры по результатам расчёта токов к.з.
2247. Расчет симметричных и несимметричных коротких замыканий в электроэнергетической системе 695.23 KB
  Расчет реактивных сопротивлений в именованных единицах приближенным методом. Расчет реактивных сопротивлений в относительных единицах точным методом. Построение векторных диаграмм токов и напряжений. Расчет симметричных КЗ в точке K4. Построение векторных диаграмм токов и напряжений
2248. Эффективность разработки электронного изделия 530.79 KB
  Определение затрат на материалы и комплектующие изделия. Определение основных показателей технологичности. Технико-экономические расчёты по определению ресурсов. Разработка сетевого графика технической подготовки производства нового изделия. Определение технико-экономических показателей производства.
2249. Разработка организационной структуры управления объектом сферы услуг, как целеустремленной системой на примере блинной Солнцепек 143.39 KB
  Теоретические основы методологии системного анализа. Системный анализ и моделирование объекта исследования. Предложения по совершенствованию устойчивости функционирования системы.
2250. Проектирование понизительной подстанции электроснабжения электрифицированной железной дороги. 1.13 MB
  Распределительное устройство 110 кВ промежуточной транзитной подстанции. Составление расчетной схемы и схемы замещения. Расчёт токов короткого замыкания. Выбор основного оборудования и токоведущих элементов подстанции. Выбор устройств защиты от перенапряжения.
2251. Сервисный центр по ремонту и обслуживанию офисной техники с использованием средств Microsoft Access 991.23 KB
  Описание бизнес-процесса при помощи методологии структурного анализа и проектирования (SADT). Создание форм с помощью конструктора. Структура таблицы и типы данных.
2252. Мероприятие: В стране невыученных уроков 19.84 KB
  Внеклассное мероприятие посвященное ко дню учителя, отображающее учеников которые не хотят учить уроки.