Научная статья на тему 'Создание простой мультипликации'

Создание простой мультипликации Текст научной статьи по специальности «Науки об образовании»

CC BY
154
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МУЛЬТИПЛИКАЦИЯ / ANIMATION / УСЛОВНОЕ ИЗОБРАЖЕНИЕ / CONDITIONAL IMAGE

Аннотация научной статьи по наукам об образовании, автор научной работы — Ананьева Марина Алексеевна

В данной статье рассматривается создание собственной мультипликации условного изображения клоуна. Пример простой мультипликации приводится в [1]. Простые анимации можно использовать при создании какой-нибудь обучающей программы, чтобы описывать какие-то схемы или условные изображения механизмов, чтобы показать в движении взаимодействие их отдельных составляющих.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Создание простой мультипликации»

3. Уваров В.К. Точное компандирование частотного и 5. Светозарова Н.Д. Интонационная система русского

динамического диапазонов звуковых сигналов. СПб.: СПб-ГУКиТ, 2001. - 326 с.

4. Экман П. Психология эмоций / пер. с англ. В. Кузин. - СПб.: Питер, 2010. - 336 с.

языка. Л.: Изд-во Ленинградского ун-та, 1982. - 176 с.

6. Ишуткин Ю.М. Разработка теории модуляционного анализа-синтеза звуковых сигналов и ее практическое применение в технике записи звука кинофильмов: Автореф. дис док. тех. наук. - М.:1. НИКФИ, 1985. 48с.

СОЗДАНИЕ ПРОСТОИ МУЛЬТИПЛИКАЦИИ

Ананьева Марина Алексеевна

старший преподаватель Московский Государственный Университет информационных технологий, радиотехники и электроники МИРЭА

г. Москва

INSTANTIATE THE SIMPLE ANIMATION

Ananieva Marina Alekseevna

older teacher of Moskow State University information technology, radio-technology and electronics MIREA, MOSCOW

АННОТАЦИЯ

В данной статье рассматривается создание собственной мультипликации - условного изображения клоуна. Пример простой мультипликации приводится в [1]. Простые анимации можно использовать при создании какой-нибудь обучающей программы, чтобы описывать какие-то схемы или условные изображения механизмов, чтобы показать в движении взаимодействие их отдельных составляющих.

ABSTRACT

In this article considers the instantiate eigenanimation - of conditional image clown. The example of simple animation result in [1]. The simple animation one can use by instantiate some teach program, in order to revive some schemes or conditional image of mechanism, in order to show in movement interaction them separate structures.

Ключевые слова: мультипликация, условное изображение.

Keywords: animation, conditional image.

//программа написана на языке C++Builder 6 #include <vcl.h> #pragma hdrstop

#define IC_M Image1->Canvas->MoveTo #define IC_L Image1->Canvas->LineTo #define IC_B_C Image1->Canvas->Brush->Color #define IC_P_C Image1->Canvas->Pen->Color #define IC_P_W Image1->Canvas->Pen->Width #define IC_F Image1->Canvas->FloodFill #define IC_E Image1->Canvas->Ellipse #define IC_P Image1->Canvas->Pixels #define cW clWhite #define cG clGreen #define cR clRed #include «Article_13_Lh» //-----------------------------------------------------------

#pragma package(smart_init) #pragma resource «*.dfm» TForml *Form1;

short num=0;short H=90; short revers=1; short Xpos=7*H/3;short Ypos=540;

//------------------------------------------------

: TForm(Owner)

{ }

//------

_fastcall TForm1::TForm1(TComponent* Owner)

//рисует на поверхности формы клоуна

void_fastcall TForm1::Draw()

{Color=(TColor)cW; switch(num) {case 0: //клоун

IC_P_C=(TColor)RGB(254,97,29);IC_B_C=(TColor) RGB(254,97,29);

IC_E(Xpos-2*H,Ypos-4*H,Xpos+2*H,Ypos); //левый глаз

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW; IC_E(Xpos-H,Ypos-11*H/3,Xpos-H/6,Ypos-13*H/6); //зрачок

IC_P_C=(TColor)0; IC_B_C=(TColor)0;

IC_E(Xpos-7*H/10,Ypos-3*H,Xpos-7*H/30,Ypos-7*H/3);

//блик

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW; IC_E(Xpos-H/2,Ypos-83*H/30,Xpos-2*H/5,Ypos-79*H/30);

//правый глаз

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW;

ГС_E(Xpos+H/6,Ypos-11*H/3,Xpos+H,Ypos-13*H/6); //зрачок

IC_P_C=(TColor)0; IC_B_C=(TColor)0;

ГС_E(Xpos+7*H/30,Ypos-3*H,Xpos+7*H/m,Ypos-7*H/3);

//блик

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW; IC_E(Xpos+2*H/5,Ypos-83*H/30,Xpos+H/2,Ypos-79*H/30); //нос

IC_P_C=(TColor)cR; IC_B_C=(TColor)cR; ГС_E(Xpos-2*H/3,Ypos-7*H/3,Xpos+2*H/3,Ypos-H); //рот, правая сторона

IC_P_C=(TColor)RGB(60,0,30); IC_B_C=(TColor)

RGB(60,0,30);

Bezier(Xpos, Yp os-H/3,Xpos + H/ 3, Yp os-H/2,Xpos+H/6,Ypos-П*H/30);

Bezier(Xpos+H/3,Ypos-H/2,Xpos + 5*H/6,Ypos-H,Xpos+17*H/30,Ypos-32*H/45);

Bezier(Xpos + 5*H/6,Ypos-H,Xpos+7*H/6,Ypos-3*H/2,Xpos+16*H/15,Ypos-4*H/3);

Bezier(Xpos+7*H/6,Ypos-3*H/2,Xpos+H/3,Ypos-H,Xpos+23*H/30,Ypos-7*H/6);

Bezier(Xpos+H/3,Ypos-H,Xpos,Ypos-41*H/45,Xpos+H/6,Ypos-14*H/15); //рот, левая сторона

Bezier(Xpos,Ypos-41*H/45,Xpos-H/3,Ypos-H,Xpos-H/6,Ypos-14*H/15);

Bezier(Xpos-H/3,Ypos-H,Xpos-7*H/6,Ypos-3*H/2,Xpos-23*H/30,Ypos-7*H/6);

Bezier(Xpos-7*H/6,Ypos-3*H/2,Xpos-5*H/6,Ypos-H,Xpos-16*H/15,Ypos-4*H/3);

Bezier(Xpos-5*H/6,Ypos-H,Xpos-H/3,Ypos-H/2,Xpos-17*H/30,Ypos-32*H/45);

Bezier(Xpos-H/3,Ypos-H/2,Xpos,Ypos-H/3,Xpos-H/6,Ypos-11*И/30);

IC_F(Xpos,Ypos-2*H/3,IC_P[Xpos] [Ypos-2*H/3],fsSuIface); //цилиндр

//нижняя часть, правая сторона

IC_P_C=(TColor)RGB(19,11,34); IC_B_C=(TColor) RGB(19,11,34);

Bezier(Xpos,Ypos-5 8*H/15,Xpos + 5*H/6,Ypos-37*H/10,Xpos+2*H/5, Ypos-23*H/6);

Bezier(Xpos+5*H/6,Ypos-37*H/10,Xpos+H,Ypos-41*H/10,Xpos+31*H/30, Ypos-39*H/10);

Bezier(Xpos + H,Ypos-41*H/10,Xpos,Ypos-131*H/30,Xpos+5*H/6,Ypos-43*H/10); //нижняя часть, левая сторона

Bezier(Xpos,Ypos-131*H/30,Xpos-H,Ypos-41*H/10,Xpos-5*H/6,Ypos-43*H/10);

Bezier(Xpos-H,Ypos-41*H/10,Xpos-5*H/6,Ypos-37*H/10,Xpos-31*H/30, Ypos-39*H/10);

Bezier(Xpos-5*H/6,Ypos-3 7*H/10,Xpos,Ypos-58*H/15,Xpos-2*H/5,Ypos-23*H/6);

IC_F(Xpos,Ypos-2 5*H/6,IC_P[Xpos] [Ypos-25*H/6],fsSurface);

IC_F(Xpos,Ypos-119*H/30,IC_P[Xpos][Ypos-119*H/30],fsSurface);

//верхняя часть, правая сторона

Bezier(Xpos,Ypos-13 9*H/30,Xpos + 2*H/3,Ypos-68*H/15,Xpos+H/3,Ypos-23*H/5);

Bezier(Xpos+2*H/3,Ypos-68*H/15,Xpos+11*H/15,Ypos-76*H/15,

Xpos+2*H/3,Ypos-29*H/6);

Bezier(Xpos+11*H/15,Ypos-76*H/15,Xpos+5*H/6,Ypos-16*H/3,

Xpos+4*H/5,Ypos-26*H/5);

Bezier(Xpos + 5*H/6,Ypos-16*H/3,Xpos,Ypos-35*H/6,Xpos+H/2,Ypos-17*H/3); //верхняя часть,левая сторона

Bezier(Xpos,Ypos-35*H/6,Xpos-5*H/6,Ypos-16*H/3,Xpos-H/2,Ypos-17*H/3);

Bezier(Xpos-5*H/6,Ypos-16*H/3,Xpos-11*H/15,Ypos-76*H/15,Xpos-4*H/5, Ypos-26*H/5);

Bezier(Xpos-11*H/15,Ypos-76*H/15,Xpos-2*H/3,Ypos-68*H/15,Xpos-2*H/3,Ypos-29*H/6);

Bezier(Xpos-2*H/3,Ypos-68*H/15,Xpos,Ypos-139*H/30,Xpos-H/3,Ypos-23*H/5);

IC_F(Xpos,Ypos-5*H,IC_P[Xpos][Ypos-5*H],fsSurface); IC_P_C=(TColor)RGB(84,37,84); IC_B_C=(TColor)RGB(84,37,84); //лента,правая сторона

Bezier(Xpos,Ypos-131*H/30,Xpos+7*H/10,Ypos-127*H/30,Xpos+H/3, Ypos-13*H/3);

Bezier(Xpos+7*H/10,Ypos-127*H/30,Xpos+2*H/3,Ypos-68*H/15,

Xpos+2*H/3,Ypos-22*H/5);

Bezier(Xpos + 2*H/3,Ypos-68*H/15,Xpos,Ypos-139*H/30,Xpos+H/3,Ypos-23*H/5); //лента, левая сторона

Bezier(Xpos,Ypos-139*H/30,Xpos-2*H/3,Ypos-68*H/15,Xpos-H/3,Ypos-23*H/5);

Bezier(Xpos-2*H/3,Ypos-68*H/15,Xpos-7*H/10,Ypos-127*H/30,

Xpos-2*H/3,Ypos-22*H/5);

Bezier(Xpos-7*H/10,Ypos-127*H/30,Xpos,Ypos-131*H/30,Xpos-H/3, Ypos-13*H/3);

IC_F (Xpo s, Ypo s-2 2 *H/5 ,IC_P [Xpo s] [ Ypo s-22*H/5],fsSurface); break; case 1:

IC_P_C=(TColor)RGB(254,97,29); IC_B_C=(TColor)RGB(254,97,29); IC_E(Xpos-2*H,Ypos-4*H,Xpos+2*H,Ypos); //левый глаз

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW; IC_E(Xpos-H,Ypos-11*H/3,Xpos-H/6,Ypos-13*H/6); //зрачок

IC_P_C=(TColor)0; IC_B_C=(TColor)0;

IC_E(Xpos-7*H/10,Ypos-3*H,Xpos-7*H/30,Ypos-7*H/3);

//блик

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW; IC_E(Xpos-H/2,Ypos-83*H/30,Xpos-2*H/5,Ypos-79*H/30);

//правый глаз

IC_P_C=(TColor)cW; IC_B_C=(TColor)cW; IC_E(Xpos+H/6,Ypos-11*H/3,Xpos+H,Ypos-13*H/6); //зрачок

1С_Р_С=(ТСо1ог)0; 1С_В_С=(ТСо1ог)0; IC_E(Xpos+7*H/30,Ypos-3*H,Xpos+7*H/10,Ypos-7*H/3);

//блик

IC_P_C=(TColor)cW ; IC_B_C=(TColor)cW; IC_E(Xpos+2*H/5,Ypos-83*H/30,Xpos+H/2,Ypos-79*Н/30); //нос

!С_Р_С=(ТШог)с^ IC_B_C=(TColor)cR; ГС_E(Xpos-2*H/3,Ypos-7*H/3,Xpos+2*H/3,Ypos-H); //рот, правая сторона

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

IC_P_C=(TColor)RGB(60,0,30);IC_B_C=(TColor) RGB(60,0,30);

Bezier(Xpos, Yp os-H/3,Xpos + H/ 3, Yp os-H/2,Xpos+H/6,Ypos-П*H/30);

Bezier(Xpos+H/3,Ypos-H/2,Xpos + 5*H/6,Ypos-H,Xpos+17*H/30,Ypos-32*H/45);

Bezier(Xpos + 5*H/6,Ypos-H,Xpos+7*H/6,Ypos-3*H/2,Xpos+16*H/15,Ypos-4*H/3);

Bezier(Xpos+7*H/6,Ypos-3*H/2,Xpos+H/3,Ypos-H,Xpos+23*H/30,Ypos-7*H/6);

Bezier(Xpos+H/3,Ypos-H,Xpos,Ypos-41*H/45,Xpos+H/6,Ypos-14*H/15); //рот, левая сторона

Bezier(Xpos,Ypos-41*H/45,Xpos-H/3,Ypos-H,Xpos-H/6,Ypos-14*H/15);

Bezier(Xpos-H/3,Ypos-H,Xpos-7*H/6,Ypos-3*H/2,Xpos-23*H/30,Ypos-7*H/6);

Bezier(Xpos-7*H/6,Ypos-3*H/2,Xpos-5*H/6,Ypos-H,Xpos-16*H/15,Ypos-4*H/3);

Bezier(Xpos-5*H/6,Ypos-H,Xpos-H/3,Ypos-H/2,Xpos-17*H/30,Ypos-32*H/45);

Bezier(Xpos-H/3,Ypos-H/2,Xpos,Ypos-H/3,Xpos-H/6,Ypos-11*Н/30);

IC_F(Xpos,Ypos-2*H/3,IC_P[Xpos] [Ypos-2*Н/З]^ийасе); //шляпа

//нижняя часть, правая сторона

IC_P_C=(TColor)RGB(2,20,104);IC_B_C=(TColor) RGB(2,20,104);

Bezier(Xpos,Ypos-3 9*H/10,Xpos + H/2,Ypos-58*H/15,Xpos+7*H/30, Ypos-39*H/10);

Bezier(Xpos+H/2,Ypos-58*H/15,Xpos+5*H/6,Ypos-23*H/6,Xpos+2*H/3, Ypos-58*H/15);

Bezier(Xpos+5*H/6,Ypos-23*H/6,Xpos+16*H/15,Ypos-41*Н/10,

Xpos+14*H/15,Ypos-39*H/10);

Bezier(Xpos+16*H/15,Ypos-41*H/10,Xpos+17*H/15,Ypos-13*Н/3,

Xpos+11*H/10,Ypos-61*H/15);

Bezier(Xpos+17*H/15,Ypos-13*H/3,Xpos+H,Ypos-67*H/15,Xpos+16*H/15, Ypos-22*H/5);

Bezier(Xpos+H,Ypos-67*H/15,Xpos+2*H/3,Ypos-64*H/15,Xpos+5*H/6, Ypos-13*H/3);

Bezier(Xpos + 2*H/3,Ypos-64*H/15,Xpos,Ypos-25*H/6,Xpos+H/3,Ypos-21*H/5); //нижняя часть, левая сторона

Bezier(Xpos,Ypos-2 5*H/6,Xpos-2*H/3,Ypos-64*H/15,Xpos-H/3,Ypos-21*H/5);

Bezier(Xpos-2*H/3,Ypos-64*H/15,Xpos-H,Ypos-67*H/15,Xpos-5*H/6, Ypos-13*H/3);

Bezier(Xpos-H,Ypos-67*H/15,Xpos-17*H/15,Ypos-13*H/3,Xpos-16*H/15, Ypos-22*H/5);

Bezier(Xpos-17*H/15,Ypos-13*H/3,Xpos-16*H/15,Ypos-41*Н/10,

Xpos-11*H/10,Ypos-61*H/15);

Bezier(Xpos-16*H/15,Ypos-41*H/10,Xpos-5*H/6,Ypos-23*Н/6,

Xpos-14*H/15,Ypos-39*H/10);

Bezier(Xpos-5*H/6,Ypos-23*H/6,Xpos-H/2,Ypos-58*H/15,Xpos-2*H/3, Ypos-58*H/15);

Bezier(Xpos-H/2,Ypos-58*H/15,Xpos,Ypos-39*H/10,Xpos-7*H/30,Ypos-39*H/10);

IC_F(Xpos,Ypos-41*H/10,IC_P[Xpos][Ypos-41*H/10],fsSurface);

IC_F(Xpos,Ypos-5 9*H/15,IC_P[Xpos][Ypos-59*Н/15]^ийасе);

//верх шляпы, правая часть

Bezier(Xpos,Ypos-13 3*H/30,Xpos + 3*H/5,Ypos-137*H/30,Xpos+H/3, Ypos-67*H/15);

Bezier(Xpos+3*H/5,Ypos-137*H/30,Xpos+3*H/5,Ypos-5*H,Xpos+3*H/5, Ypos-143*H/30);

Bezier(Xpos + 3*H/5,Ypos-5*H,Xpos+H/2,Ypos-77*H/15,Xpos+17*H/30, Ypos-76*H/15);

Bezier(Xpos + H/2,Ypos-7 7*H/15,Xpos,Ypos-5*H,Xpos+7*H/30,Ypos-151*H/30); //верх шляпы, левая часть

Bezier(Xpos,Ypos-5*H,Xpos-H/2,Ypos-77*H/15,Xpos-7*H/30,Ypos-151*H/30);

Bezier(Xpos-H/2,Ypos-77*H/15,Xpos-3*H/5,Ypos-5*H,Xpos-17*H/30, Ypos-76*H/15);

Bezier(Xpos-3*H/5,Ypos-5*H,Xpos-3*H/5,Ypos-137*H/30,Xpos-3*H/5, Ypos-143*H/30);

Bezier(Xpos-3*H/5,Ypos-137*H/30,Xpos,Ypos-133*H/30,Xpos-H/3, Ypos-67*H/15);

IC_F(Xpos,Ypos-14*H/3 ЛC_P[XposПYpos-14*H/3],fsSшface);

//лента, правая сторона

IC_P_C=(TColor)RGB(100,45,100);IC_B_C=(TColor) RGB(100,45,100);

Bezier(Xpos,Ypos-2 5*H/6,Xpos + 3*H/5,Ypos-127*H/30,Xpos+H/3,Ypos-21*H/5);

Bezier(Xpos+3*H/5,Ypos-127*H/30,Xpos+3*H/5,Ypos-137*Н/30,

Xpos+3*H/5,Ypos-22*H/5);

Bezier(Xpos + 3*H/5,Ypos-137*H/3 0,Xpos,Ypos-133*H/30,Xpos+H/3, Ypos-67*H/15); //лента, левая сторона

Bezier(Xpos,Ypos-133*H/30,Xpos-3*H/5,Ypos-137*H/30,Xpos-H/3, Ypos-67*H/15);

Bezier(Xpos-3*H/5,Ypos-137*H/30,Xpos-3*H/5,Ypos-127*H/30,Xpos-3*H/5, Ypos-22*H/5);

Bezier(Xpos-3*H/5,Ypos-127*H/3 0,Xpos,Ypos-25*H/6,Xpos-H/3,Ypos-21*H/5);

IC_F(Xpos,Ypos-13*H/3,IC_P[Xpos] [Ypos-13*H/3],fsSurface);}}

//-----------------------------------------------------------------------

//рисует кривые линии

void_fastcall TForm1::Bezier(short StartX, short StartY,

short EndX,

short EndY, short CenterX, short CenterY)

{ TPoint points[4];

points[0]=Point(StartX,StartY);

points[1]=Point(CenterX,CenterY);

points[2]=Point(EndX,EndY);

points[3]=Point(EndX,EndY);

Image1->Canvas->PolyBezier(points,3);}

//----------------------------------------------------------------------

//обработка события OnTimer

void_fastcall TForm1::Timer1Timer(TObject *Sender)

{Clear();Draw();

if ((Xpos>=Image1->Picture->Width-H) || (Xpos<=H)) revers=-revers; Xpos+=revers*H; num=1-num; Clear();Draw();} //----------------------------------------------------------------------

//обработка события OnCreate для формы

void_fastcall TForm1::FormCreate(TObject *Sender)

{DoubleBuffered=trae;

TRect aRect;

//закрашивание верхней части окна

aRect=Rect(0,0,Image1->Width,Ypos);

IC_B_C=(TColor)RGB(220,242,248);

Image1->Canvas->FillRect(aRect);

//закрашивание нижней части окна

aRect=Rect(0,Ypos,Image1->Width,Ypos+100);

IC_B_C=(TColor)cG;

Image1->Canvas->FillRect(aRect);

Draw0;}

//--------------------------------------------------------

//Запуск, останов

void_fastcall TForm1::BRunClick(TObject *Sender)

{Timer1->Enabled=!Timer1->Enabled;}

//----------------------------------------------------------------

//закрытие формы

void_fastcall TForm1::BCloseClick(TObject *Sender)

{Close();}

//------------------------------------------------------------------

//очистка экрана

void_fastcall TForm1::Clear()

{

IC_B_C=(TColor)RGB(220,242,248); TRect rct=Rect(0,0,Image1->Width,Ypos);

Image1->Canvas->FillRect(rct); }

//--------------------------------------------------

Рисунок 1. Клоун(case 0)

Рисунок 2.Клоун (case 1)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Список литературы: 1. Архангельский А.Я. , Тагин М.А.

Программирование в C++Builder 6 и 2006.-М.: ООО «Бином-Пресс», 2007г.-1184с.: ил.

ИЗУЧЕНИЕ НЕЛИНЕИНОИ ЕМКОСТИ ВАРИКАПОВ ДЛЯ ЭЛЕКТРОМАГНИТНЫХ ЛИНИЙ ПЕРЕДАЧИ

Андросов Айсен Егорович

Студент 3 курса, Политехнический институт (филиал) ФГАОУ ВПО

«СВФУ им. М.К. Аммосова» в г. Мирном

Татаринов Павел Семенович

Старший преподаватель кафедры Общепрофессиональных дисциплин Политехнический институт (филиал) ФГАОУ ВПО «СВФУ им. М.К. Аммосова» в г. Мирном

АННОТАЦИЯ

Целью работы является изучение нелинейной емкости варикапов. В исследовании использован метод натурного эксперимента на разработанной для этих целей установке. В результате выполнения работы измерена вольт-амперная характеристика учитывающая индивидуальные особенности варикапов.

ABSTRACT

The aim is to study the nonlinear capacitance varactors. The study used the method of field experiment on developed for these purposes plant. As a result, performance is measured current-voltage characteristic which takes into account the individual characteristics of varactors.

Ключевые слова: p-n переход, варикап, солитоны, вольт-фарадная характеристика (ВФХ). Keywords: p-n junction, varicap, solitons, the capacitance-voltage characteristics (CVQ.

i Надоели баннеры? Вы всегда можете отключить рекламу.