Приложения Windows могут использовать одну из нескольких логических координат, устанавливая соответствующий режим отображения в контексте отображения. При этом можно использовать любое направление координатных осей и любое расположение начала координат. Например, возможна система координат, в которой задаются положительные и отрицательные координаты по любой оси (рис. 2).
Рис.6.2
Для установки режима отображения, непосредственно определяющего направление осей и размер логической единицы системы координат, используется функция SetMapMode:
int dc. SetMapMode (int nMapMode) // MFC
Параметр nMapMode может принимать одно из следующих значений.
Режим отображения | Направление оси X | Направление оси Y | Размер одной логической единицы |
MM_TEXT | Вправо | Вниз | 1 пиксел |
MM_LOMETRIC | Вправо | Вверх | 0,1 мм |
MM_HIMETRIC | Вправо | Вверх | 0,01 мм |
MM_LOENGLISH | Вправо | Вверх | 0,01 дюйм |
MM_HIENGLISH | Вправо | Вверх | 0,001 дюйм |
MM_TWIPS | Вправо | Вверх | 1/1440 дюйма |
MM_ISOTROPIC | Можно выбирать | Можно выбирать | Произвольный, одинаковый для осей X и Y |
MM_ANISOTROPIC | Можно выбирать | Можно выбирать | Произвольный, может быть разный для осей X и Y |
В любой момент времени приложение может определить номер режима отображения, выбранный в контекст отображения, используя функцию GetMapMode:
|
|
int dc .GetMapMode() // MFC