Презентація на тему Створення анімації серед Turbo Pascal на прикладі анімованої моделі

Подібні презентації

Презентація 10 класу на тему: "Створення анімації в середовищі Turbo Pascal на прикладі анімованої моделі стрілочних годинників Дослідницька робота учениці 10 "Б" класу Андрук Олени Науковий.". Завантажити безкоштовно та без реєстрації. - Транскрипт:

1 Створення анімації в середовищі Turbo Pascal на прикладі анімованої моделі стрілочного годинника Дослідницька робота Учениці 10 «Б» класу Андрук Олени Науковий керівник: Баскакова Н.В. Санкт - Петербург 2009

2 Метою даної є моделювання об'єкта «годинник» серед програмування Turbo Pascal. Для реалізації головної мети необхідно було освоїти поза навчальною програмою графічні оператори та технології створення рухомих зображень у середовищі Turbo Pascal, тому при виконанні цієї роботи розглядалися й такі цілі, як розширення знань з курсу програмування на Паскалі та вдосконалення навичок написання та налагодження програм. Мета роботи

3 ЕТАПИ МОДЕЛЮВАННЯ III етап: Комп'ютерний експеримент 1. Опис задачі 2. Мета моделювання 3. Опис об'єкта чи процесу 4. Аналіз об'єкта II етап: Розробка моделі 5. Розробка інформаційної моделі 6. Розробка математичної моделі 7. Розробка комп'ютерної моделі IV етап: Аналіз результатів моделювання

4 Постановка задачі Завдання: Програма «Годинник» повинна виводити зображення циферблата з стрілками, що рухаються (годинної, хвилинної, секундної).

5 Вибір вхідних та вихідних даних Вхідні дані: R радіус циферблата; X0, Y0 координати центру циферблату; d розмір тимчасової затримки для демонстрації моделі вреальний час d=1000 ms = 1 сек., для демонстрації моделі в прискореному режимі d=10000 ms; t час показу анімації; hour, min, sec кути, що визначають положення годинної, хвилинної, секундної стрілок. h, m, s значення, що характеризують поточний час (кількість годин, хвилин, секунд). Вихідні дані: Анімоване зображення.

6 Математична модель 1.Визначення положення стрілок Положення стрілок на циферблаті визначається такими формулами: Крок хвилинної та секундної стрілок дорівнює 6 0, тому: Кут положення хвилинної та секундної стрілок визначається за формулами: Min: = 90 - m * 6; Sec:=90 - s*6; Кут положення годинникової стрілки визначається кількістю годин і хвилин: Hour: = 90 - h * 30 - (mdiv12) * 6, де (h * 30)-кут визначається кількома годинами. (mdiv12)*6 – кут між сусідніми значеннями годинника

7 2. Малювання циферблату. Для створення зображення циферблата необхідно намалювати: 1.Біле зафарбоване коло радіусом R+40; 2.Синє коло радіусом R, вздовж якого буде розміщуватися шкала поділів; 3.Маленьку синю зафарбовану коло радіусом R=5 у центрі циферблата; 4.Лінії шкали поділів – 60 поділів для відліку хвилин (секунд), причому кожен п'ятий відрізок має більшу довжину та товщину, ніж основні поділки; 5. Вивести цифри годинника навпроти кожного п'ятого поділу шкали. Математична модель

8 Координати початку та кінця кожного відрізка лінії шкали поділів визначаються за формулами: x1:=x0+0.96*r*cos(sec); y1:=y0-0.96*r*sin(sec); x:=x0+r*cos(sec); y:=y0-r*sin(sec); Для кожного п'ятого поділу координати початку відрізка лінії визначаються за формулами: x1: = x0 + 0.93 * r * cos (sec); y1:= y0-0.93*r*sin(sec); Координати початку поля виведення цифр годинника визначаються за формулами: x2:= x0+1.1*r*cos(sec)-11; y2:= y0-1.1*r*sin(sec)-14; Математична модель

9 3. Малювання стрілок Довжина годинної стрілки: Lh:=0,6*R Довжина хвилинної стрілки: Lm:=0,8*R Довжина секундної стрілки: Ls:=0,8*R Координати кінців ліній-стрілок X та Y визначаються координатами центру циферблата X0,Y0, довжиною стрілки та кутом її нахилу: X:=Round(X0+L*cos (UGOL*2*Pi/360)); Y:=Round(Y0-L*sin (UGOL*2*Pi/360)); Де: L – довжина стрілки UGOL – кут положення стрілки (підставляються значення кутів годинної, хвилинної або секундної стрілки – hour, min, sec) Математична модель

10 4. Реалізація анімованого зображення. 1. Спочатку малюється циферблат, який надалі залишається незмінним. 2. Створення ефекту руху в Паскалі реалізується наступним чином: У кожен поточний момент (крок = 1 сек) малюються чорним кольором секундна, хвилинна та годинна стрілки. Після тимчасової затримки, 1000 мілісекунд = 1 секунда, стрілки малюються ще раз, але колір лінії білий. Тим самим вихідне зображення стирається. Малюється нове положення стрілок. Математична модель

12 Procedure strelka (ugol, dlina: real); Var x,y:integer; begin x:=Round(x0+dlina*cos(ugol*pi/180)); y:=Round(y0-dlina*sin(ugol*pi/180)); Line(x, y, x0, y0); end; begin writeln('vvedite chas: h='); readln(h); writeln('vvedite minuty: m='); readln(m); writeln('vvedite secundy: ss='); readln(ss); writeln('введіть время задержкі (1000) d='); readln(d); writeln('введіть время поkaza (1800,3600 або 7200) tmax='); readln(tmax); r:=180; x0:=320; y0:=240; driver:=0; mode:=0; initgraph(driver,mode,'c:/bp/bgi'); cleardevice;

15 delay(d); setcolor(white); setlinestyle(0,0,3); strelka (min, lm); strelka(hour,lh); setlinestyle(0,0,1); strelka (ssec, ls); setfillstyle(sol >

16 Аналіз результатів моделювання Написана програма виводить на екран комп'ютера стрілочний годинник. Але щобці годинники йшли точно, показували реальний час, необхідно зробити їх калібрування. Насправді часові інтервали при демонстрації анімації залежить від тактової частоти роботи комп'ютера, тому калібрування даної моделі кожному комп'ютері доводиться здійснювати вручну. У Delphi існує спеціальна функція «Timer», що зчитує поточне значення часу з таймера комп'ютера, що дає можливість створення моделі годинника з точною відповідністю реальному часу.

17 1.Культін Н.Б Turbo Pascal у завданнях та прикладах. СПб.: BHV, Культін Н.Б Delphi у завданнях та прикладах. СПб.: BHV, Макарова Н.В. Інформатики. Підручник для 7-9 кл. СПб .: Пітер, Меженний О.А. Turbo Pascal. M., СПб., Київ: Діалектика, все, що пов'язано з комп'ютерною графікою, обробкою зображень та мультимедіа Список літератури