Анизотропный режим MM_ANIISOTROPIC

В изотропном режиме отображения Windows всегда преобразует протяженности области вывода и логического окна таким образом, чтобы они имели одинаковое выражение в физических единицах измерения. В анизотропном режиме Windows такого преобразования не выполняет. Другими словами, в режиме MM_ANIISOTROPIC операционная система не создает правильного коэффициента сжатия. Как следствие изменение протяженности области вывода приводит к сжатию или растяжению соответствующей стороны логического окна, что искажает изображение.

 

На рис. 10.16 приведены формы с изображенным на них эллипсом в режиме MM_ANISOTROPIC. Нетрудно заметить, что эллипс приобретает очертания правильного круга только в случае равенства сторон области вывода.

 

varDC : hDC;

Begin

DC:=Form1.Canvas.Handle;

SetMapMode(DC, MM_ANISOTROPIC);

{определяем логическое окно с протяженностью сторон по 11 единиц}

SetWindowExtEx(DC, 10, 10, nil);

{под область вывода отводим всю клиентскую часть формы}

SetViewportExtEx(DC, Form1.ClientWidth, –Form1.ClientHeight, nil);

{переносим начало координат в центр}

SetWindowOrgEx(DC,-5,5,nil);

Ellipse(DC,-4,-4,4,4); //эллипс

end;

 

Резюме

 

Мы познакомились с основными графическими объектами VCL Delphi, основу которых составляет класс TCanvas, инкапсулирующий практически все методы из состава GDI Windows. Богатые функциональные возможности холста позволяют программисту обеспечивать вывод текста, управлять шрифтами, цветом и палитрами, рисовать простейшие геометрические фигуры, отображать битовые образы и работать с метафайлами. Мы рассмотрели ряд компонентов Delphi, специализирующихся на обслуживании графики. В частности это элементы управления TPaintBox, TShape, TBevel, TImage и TAnimate.

В дополнение ко всему мы научились работать с графикой при помощи методов Win32 API, получили представление о дескрипторе контекста устройства и приобрели опыт настройки режимов отображения и систем координат.








Дата добавления: 2016-03-15; просмотров: 737;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.