Преобразование координатных пространств


Координатное пространство (coordinate space) - плоское пространство, базирующееся на системе декартовых (прямоугольных) координатах. Эта система обеспечивает способ определения местоположения каждой точки на плоскости. Она требует двух осей, которые являются перпендикулярными и равными по длине. Нижеследующая иллюстрация показывает координатное пространство.

Оси координатного пространства

Система поддерживает четыре координатных пространства, как описано в нижеследующей таблице.

Координатное пространство Описание
общее (мировое) Используется произвольно как начальное координатное пространство для графических преобразований. Оно позволяет масштабировать, перенос, вращение, сдвиг и отражение. Мировое пространство имеет размеры 232 единиц в высоту на 232 единиц в ширину.
страничное Используется, или как следующее пространство после мирового пространства, или как начальное пространство для графических преобразований. Оно устанавливает режим отображения. Пространство страницы также имеет размеры 232 единиц в высоту на 232 единиц в ширину.
устройства Используется как следующее пространство после пространства страницы. Оно позволяет только те преобразования, которые гарантируют, что начало координат пространства устройства отображает правильно местоположение в пространстве физического устройства. Пространство устройства имеет размеры 227 единиц в высоту на 227 единиц в ширину.
физического устройства Конечное (вывод) пространство для графических преобразований. Оно обычно обращается к рабочей области окна приложения; однако, оно может также включить и весь рабочий стол, полностью окно (включая рамку, область заголовка и строку меню), или страницу бумаги принтера или плоттера, в зависимости от функции, которая получила дескриптор для контекста устройства. Размеры физического устройства изменяются согласно размерам, установленным технологией в дисплее, принтере или плоттере.
 

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

Чтобы вывести изображение на физическом устройстве, система копирует (или отображает) прямоугольную область из одного координатного пространства в следующее, используя преобразования до тех пор, пока вывод не появляется полностью на физическом устройстве. Отображение начинается в мировом пространстве приложения, если приложение вызвало функцию SetWorldTransform; иначе, отображение происходит в пространстве страницы. Поскольку система копирует каждую точку в пределах прямоугольной области из одного пространства в другое, она применяет алгоритм, названный преобразованием. Преобразование (transformation) изменяет (или преобразует), размер, ориентацию и форму объектов, которые скопированы из одного координатного пространства в другое. Хотя преобразование затрагивает объект в целом, оно применяется к каждой точке, или к каждой линии в объекте.

Нижеследующая иллюстрация показывает типичное преобразование, выполненное при использовании функции SetWorldTransform.

Преобразование с использованием функции SetWorldTransform

Назад в оглавление
На главную страницу

Hosted by uCoz