Ускорение перерисовки графических объектов

Ускорение перерисовки графических объектов

Для обеспечения быстрой перерисовки используется следующий прием: в начале программы вызывается LockDrawingObjects, а при необходимости перерисовать весь экран – специальная процедура RedrawObjects. Отключается режим вызовом UnLockDrawingObjects.

При наличии большого количества объектов, каждый из которых движется, такой прием может ощутимо ускорить анимацию. Причина здесь кроется в следующем: по умолчанию при каждом движении объекта он перерисовывается в своем прямоугольнике, при этом в этом прямоугольнике перерисовываются все объекты. Если в графическом окне 100 объектов, и каждый из них переместился, то происходит 100*100=10000 перерисовок объектов. После вызова LockDrawingObjects перерисовки не происходит, а в результате вызова RedrawObjects каждый объект прорисовывается только один раз, то есть происходит всего 100 перерисовок объектов.

Следует обратить внимание, что в модуле GraphABC имеются родственные процедуры LockDrawing, UnLockDrawing, и Redraw. Однако, они отвечают за растровую перерисовку без мерцания, в то время как процедуры LockDrawingObjects, UnLockDrawingObjects, и RedrawObjects отвечают только за ускорение перерисовки векторной графики ABCObjects (отсутствие мерцания векторных объектов при их изменении обеспечивается автоматически).

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Вставка в веб-документ графических объектов

Из книги автора

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


Вставка графических объектов

Из книги автора

Вставка графических объектов В данном разделе мы рассмотрим, каким образом в веб-документ можно вставить изображение, картинку или иной графический объект. Отметим, что возможности программы предусматривают вставку графических объектов тремя способами. Первый


2.3. Ускорение загрузки Windows

Из книги автора

2.3. Ускорение загрузки Windows Основные методы повышения скорости загрузкиХотя Windows Vista имеет специальные средства для оптимизации и ускорения процесса загрузки, от момента включения компьютера и до появления Рабочего стола обычно проходит несколько десятков секунд. Как же


8.3. Ускорение работы Windows Vista

Из книги автора

8.3. Ускорение работы Windows Vista Отключение и настройка визуальных эффектовЕсли в работе компьютера для вас в первую очередь важна производительность, а внешний вид окон не имеет особого значения, тогда можно выбрать классическую тему рабочего стола и отключить все


9.5.2. Ускорение сайта

Из книги автора

9.5.2. Ускорение сайта Сервис squid может ускорить работу определенного сайта, функционируя как httpd-акселератор. Для этого необходимо указать, как минимум, три параметра: адрес форсируемого сервера, который надо кэшировать, его порт и атрибуты сервера, который надо ускорять.


Ускорение HTTP-обмена

Из книги автора

Ускорение HTTP-обмена Работа World Wide Web в основном базируется на использовании протокола HTTP (Hypertext Transfer Protocol — протокол передачи гипертекстовой информации). По сути, в ядре Linux реализован простой сервер HTTP, который включается при установке опции Kernel HTTPd Acceleration. Для настройки и


1.2.7. Ускорение запуска Fedora

Из книги автора

1.2.7. Ускорение запуска Fedora В подразделе 1.2.5 мы отключили ненужные программы, которые запускались автоматически при запуске оболочки GNOME. Понятно, что каждая такая программа замедляет вход в GNOME. Но такие программы - это еще не самое страшное. После установки Fedora в системе по


Ускорение файловой системы

Из книги автора

Ускорение файловой системы Можно ускорить действие файловой системы, (если позволяет оперативная память) увеличив параметр типа DWORD °IoPageLockLimit° от заданных по умолчанию 512 КБ до 4 МБ и более в разделе HKLMSYSTEMCurrentControlSetControlSession ManagerMemory ManagementЭтот параметр представляет


15.6. Существенное ускорение OpenOffice.org

Из книги автора

15.6. Существенное ускорение OpenOffice.org Этот совет пригодится владельцам не только слабых компьютеров, но и современных мощных ПК — OpenOffice.org будет запускаться так, что вы даже не успеете заметить индикатор запуска.Выполните команду Сервис | Параметры и перейдите в раздел


Массив всех графических объектов Objects

Из книги автора

Массив всех графических объектов Objects В модуле ABCObjects определен динамический массив Objects, который хранит все созданные графические объекты. Он принадлежит к типу ObjectsABCArray, определенному в ABCObjects. Для массива Objects определены всего 2 операции: Objects.Count возвращает количество


ABCObjects: контейнеры графических объектов

Из книги автора

ABCObjects: контейнеры графических объектов Класс ContainerABC представляет собой контейнер графических объектов. Он также является потомком ObjectABC, но при создании не содержит ни одного объекта. Он добавляет следующий интерфейс: procedure Add(g: ObjectABC); property Count: integer; // количество


Ускорение на твердой основе

Из книги автора

Ускорение на твердой основе Автор: Юрий РевичFlash-память - из тех самых инноваций, что вписались в нашу действительность легко и непринужденно, и при этом совершенно незаметно. Мобильная связь, КПК, MP3-плееры, цифровые камеры - каждый имел счастье почувствовать на


Ускорение отображения фрагментов фона

Из книги автора

Ускорение отображения фрагментов фона Как говорилось выше, фон может содержать векторную графику, нарисованную средствами самого Flash. Также фон может включать экземпляры — графические или клипы. Вот о клипах (в смысле, экземплярах образцов-клипов), используемых для


Урок 5.8. Вставка графических объектов в документ

Из книги автора

Урок 5.8. Вставка графических объектов в документ Кроме автофигур в документы Word 2007 можно вставлять и другие графические объекты: рисунки из файлов, картинки из коллекции, диаграммы, фигурный текст, формулы и т. д. Особенности работы с этими объектами мы рассмотрим в этом