Урок информатики в 10-м классе "Создание компьютерной модели физического процесса или явления средствами среды программирования Borland Delphi"

Разделы: Информатика


Урок с электронной презентацией

Цель урока: научить создавать компьютерные модели физических процессов и явлений, используя компоненты среды программирования Borland Delphi.

Задачи:

  • Рассмотреть возможности среды программирования для создания моделей физических процессов и явлений.
  • Изучить принципы организации программы с использованием компонента TTimer для реализации эффектов движения.

Тип урока: усвоение новых знаний.

Ход урока

Сообщение темы и цели урока.

Учитель: Все процессы и явления вокруг нас могут быть описаны с помощью законов и формул. Мы уже знаем с вами, что физический процесс или явление может описать математическая модель. Как вы думаете, как бы вы еще смогли описать, например, равномерное движение?

Возможные варианты ответа: рисунок, чертеж, схема, видеоролик, анимация.

Учитель: А какие из вами перечисленных вариантов наиболее полно представят процесс движения?

Варианты ответа: Анимация, видеоролик.

Учитель: Действительно, с помощью анимации и видеоролика мы сможем увидеть сам процесс движения объекта. И компьютер, позволяет нам сделать и то, и другое.

Тема нашего сегодняшнего урока “Создание компьютерной модели физического процесса или явления средствами среды программирования Borland Delphi”.

Решение задачи.

Учитель: Рассмотрим самую простейшую физическую задачу: Тело движется по прямой равномерно со скоростью v . Необходимо найти путь, пройденный телом за t секунд.

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

Ученики: Математическая модель решения задачи: S=vt

Действительно, это так. А как Вы бы сделали анимацию к этому процессу?

Ученики предлагают свои варианты.

Учитель: Для реализации эффекта движения необходимо воспользоваться теми же методами, что использовали когда-то создатели мультфильмов. Кто знает какой?

Ученики: Они рисовали свой персонаж в одном месте, снимали кадр, затем смещали персонаж на небольшое расстояние и снова снимали кадр. При быстрой смене этих кадров получается эффект движения.

Учитель: Да это так, а нам нужно в данном случае привязать смещение объекта ко времени и стоящая перед нами задача иллюстрации процесса движения будет решена.

В среде программирования Borland Delphi для этой цели используется компонент TTimer. Этот компонент находится на страничке System палитры компонентов среды программирования Delphi. Интервал задержки изображения на экране задается с помощью свойства компонента Interval. Чем больше значение свойства Interval, тем медленнее происходит изменение объекта.

Еще одно свойство компонента TTimer, которое понадобится для работы с ним - Enabled. Это свойство может принимать значения “истина” и “ложь”. Данное свойство указывает, включен ли в настоящий момент TTimer или нет. По умолчанию TTimer является включенным. Поэтому, если условием задачи определено, чтобы движение производилось после какого-либо события, то необходимо в обработчике этого события “включить” это свойство, предварительно задав этому свойству значение false (ложь) в Инспекторе объектов.

Обработчик события для компонента TTimer по умолчанию - Timer1Timer. В отличие от других компонентов таймер обладает уникальным обработчиком событий, отличающимся от обработчиков других компонентов – OnTimer. Описанные в этом обработчике событий действия будут повторяться с частотой тика до тех пор, пока таймер не будет отключен.

Как будет выглядеть тело, которое перемещается, Вы можете выбрать сами. В качестве тела можно использовать любую геометрическую фигуру, например шар. Зададим ему размер - 20 (диаметр).

Какой метод используется для рисования окружности?

Ученики: Ellipse.

Учитель: Какие параметры имеет данный метод?

Ученики: Координаты левого верхнего и правого нижнего углов.

Учитель: С помощью каких методов изображаются другие объекты на рисунке (прямоугольник, точка, линия)?

Ученики: Rectangle, Pixels, Lineto.

Учитель: С помощью какого метода производится стирание изображения в компоненте?

Ученики:Refresh.

Учитель: Давайте, вспомним, как расположена система координат в окне формы?

Ученики: Ось y направлена вниз.

Учитель: Поэтому нам с Вами необходимо преобразовать реальные координаты движения в компьютерные.

х1=х+х0 у10-у , где x1,y1 – координаты точки, получаемой на экране,

x0,y0 – координаты в обычной системе координат

При реализации данной задачи мы будем использовать компоненты: Button – кнопка начала движения, PaintBox - компонент для рисования и Timer.

Объявим переменные:

Var s,v,t,x0,y0,x:integer;

Напишем обработчики событий:

Обработчик событий для кнопки

х0:=20; // установили новые координаты

х0:=PaintBox1.Height-20; // начала координат

v:=StrToInt(Edit1.Text);

t:= StrToInt (Edit2.Text);

s:=v*t;

x:=x0;

Timer1.Enabled:=True;//включили таймер

Обработчик событий для таймера

if x-x0<=s then

begin

PaintBox1.Refresh;

PaintBox1.Canvas. Ellipse(x,y0,x+20,y0+20);

x:=x+1

end

else timer1.Enabled:=false;

Давайте запустим программу и посмотрим, как перемещается наш объект.

Таким образом, на уроке мы составили с Вами программу, иллюстрирующую процесс равномерного движения объекта, а также рассмотрели свойства и методы компонента TTimer, способы и методы работы с ним для реализации эффекта движения в программе.

Задание на практику: Составить программу, иллюстрирующую полет ядра, вылетевшего из пушки с начальной скоростью v0 под углом a.