Книга: Описание языка PascalABC.NET

Графика и анимация

Анимация без мерцания

Данная программа иллюстрирует применение процедур LockDrawing и Redraw для реализации анимации без мерцания:

uses GraphABC;
begin
LockDrawing;
for var i:=1 to 500 do
begin
Window.Clear;
Brush.Color := clGreen;
Ellipse(i,100,i+100,200);
Redraw;
Sleep(1);
end;
end.

Основная идея состоит в следующем: отключим рисование на экране, вызвав LockDrawing (рисование будет осуществляться только во внеэкранном буфере), после чего будем всякий раз формировать новый кадр изображения и выводить его целиком на экран, вызывая Redraw. При вызове Redraw перерисовывается все графическое окно, поэтому скорость анимации ограничена скоростью вывода внеэкранного буфера на экран.

Оглавление книги

Оглавление статьи/книги

Генерация: 0.074. Запросов К БД/Cache: 0 / 2
поделиться
Вверх Вниз