Охрана труда:
нормативно-правовые основы и особенности организации
Обучение по оказанию первой помощи пострадавшим
Аккредитация Минтруда (№ 10348)
Подготовьтесь к внеочередной проверке знаний по охране труда и оказанию первой помощи.
Допуск сотрудника к работе без обучения или нарушение порядка его проведения
грозит организации штрафом до 130 000 ₽ (ч. 3 статьи 5.27.1 КоАП РФ).

Свидетельство о регистрации
СМИ: ЭЛ № ФС 77-58841
от 28.07.2014

Почему стоит размещать разработки у нас?
  • Бесплатное свидетельство – подтверждайте авторство без лишних затрат.
  • Доверие профессионалов – нас выбирают тысячи педагогов и экспертов.
  • Подходит для аттестации – дополнительные баллы и документальное подтверждение вашей работы.
Свидетельство о публикации
в СМИ
свидетельство о публикации в СМИ
Дождитесь публикации материала и скачайте свидетельство о публикации в СМИ бесплатно.
Диплом за инновационную
профессиональную
деятельность
Диплом за инновационную профессиональную деятельность
Опубликует не менее 15 материалов в методической библиотеке портала и скачайте документ бесплатно.
06.11.2018

Программирование анимированных изображений

Кулакова Кристина Рафаиловна
Учитель математики и информатики
С целью освоения практических навыков программирования графики на языке Turbo Pascal рассмотрим задачу вывода на экран изображения звезды, перемещающейся по эллиптической траектории.

Содержимое разработки

Программирование анимированных изображений

Автор:

Кулакова Кристина Рафаиловна

Учитель информатики

МБОУ ОСОШ №11

Воронеж 2018 год

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

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

x=R*cos(i), y=R*sin(i), где 0<=i<2π.

В результате изменения величины угла получим изменение координат центра звезды (рис.1).


     Звезда состоит из полигональных фрагментов, образованных большими и малыми лучами. Координаты вершин большого (x1,y1) и малого (x2,y2) лучей фрагментов звезды вычисляются по формулам:

x1:=x+ r*cos(a),

y1:=y+ r*sin(a),

13

x2:=x+ rm*cos(a±da),

y2:=y+ rm*sin(a±da), где


x,y – координаты центра звезды, r – длина большого луча, rm – длина малого луча фрагмента (рис. 2, 3).

В зависимости от количества фрагментовN угол между большим и малыми лучами фрагмента вычисляется по формуле: da= 2π /(2N).

Алгоритм решения задачи

Алгоритм решения поставленной задачи представлен в виде блок-

схемы:

14



15

Листинг программы

Реализация алгоритма решения задачи на языке программирования Turbo Pascal:

program Zvezda;

uses graph,crt;

const

Xc=300;Yc=230; {координаты центра траектории звезд}

R_tr=180; {радиус центра траектории звезд}

r=50; {длина большого луча звезды}

n=5; {количество лучей}

var

gd,gm,rm,x,y,x1,y1,x2,y2,i,f:integer;

a,da:real;

Begin

gd:=detect;

initgraph(gd,gm,'c:\bp\bgi');

randomize;

rm:=r div 2; {rm - длина малого луча звезды}

{ a - угол наклона первого большого луча звезды}

a:=3*pi/2;

{da - угол между большим и малым лучами}

da:=2*pi/(2*n);

i:=0;

repeat

cleardevice;

{случайный выбор цвета рисования}

16

setcolor(random(15));

i:=i+1;

{x, y - координаты центра звезды}

x:=Xc+round(R_tr*cos(i));

y:=Yc+round(R_tr*sin(i));

for f:= 1 to n do

begin

{ x1, y1 - координаты вершины большого луча}

x1:=x+trunc(r*cos(a));

y1:=y+trunc(r*sin(a));

{ x2, y2 - координаты вершины правого малого луча}

x2:=x+trunc(rm*cos(a-da));

y2:=y+trunc(rm*sin(a-da));

line(x,y,x2,y2);

line(x,y,x1,y1);

line(x1,y1,x2,y2);

{ x2, y2 - координаты вершины левого малого луча}

x2:=x+trunc(rm*cos(a+da));

y2:=y+trunc(rm*sin(a+da));

line(x,y,x2,y2);

line(x1,y1,x2,y2);

{вычисление угла наклона следующего большого луча звезды}

a:=a+da*2;

end;

delay(50000);

until keypressed;

closegraph;

Свидетельство участника экспертной комиссии
Рецензия на методическую разработку
Опубликуйте материал и закажите рецензию на методическую разработку.
Также вас может заинтересовать
Свидетельство участника экспертной комиссии
Свидетельство участника экспертной комиссии
Оставляйте комментарии к работам коллег и получите документ
БЕСПЛАТНО!
У вас недостаточно прав для добавления комментариев.

Чтобы оставлять комментарии, вам необходимо авторизоваться на сайте. Если у вас еще нет учетной записи на нашем сайте, предлагаем зарегистрироваться. Это займет не более 5 минут.

 

Для скачивания материалов с сайта необходимо авторизоваться на сайте (войти под своим логином и паролем)

Если Вы не регистрировались ранее, Вы можете зарегистрироваться.
После авторизации/регистрации на сайте Вы сможете скачивать необходимый в работе материал.

Рекомендуем Вам курсы повышения квалификации и переподготовки