现在的位置: 首页 > 综合 > 正文

Windows中的坐标空间

2013年11月20日 ⁄ 综合 ⁄ 共 708字 ⁄ 字号 评论关闭

坐标空间的转换

 

 

一个坐标空间就是一个基于迪卡尔坐标系统的平面空间。这个系统提供了一个描述平面上每个点的方法。它要求两个正交的长度相等的轴,下图说明了一个坐标空间:

 

 

 

系统支持四种坐标空间,下表具体介绍:

 

 

坐标空间

 

 

描述

 

 

世界

 

 

为了图形转换而随意使用的起始空间,它允许缩放、转换、旋转、截取、映射。世界空间高2^32,宽2^32

 

 

页面

 

 

用做世界空间的下一个空间或图形转换的起始空间,它设置了映射模式,页面空间也被限定为2^32高和宽。

 

 

设备

 

 

用做页面空间之后的空间。它仅仅允许转换,它保证设备空间的原点映射到物理设备空间的适当位置。设备空间是2^27高和宽。

 

 

物理设备

 

 

最终的图形转换的输出空间。通常是用来指应用程序窗口的客户区,然而,它也能包含整个桌面或者打印机页面,这依赖于获得设备内容HANDLE的函数。物理设备大小根据显示器、打印机、扫描仪设置的大小来决定的。

 

 

页面空间和设备空间一起工作提供应用程序设备独立的单位,例如:毫米和英寸。这总的来说将世界空间和页面空间看作逻辑空间。

 

 

为了描述在物理设备上的输出,系统使用复制和映射将一个矩形从一个坐标空间转换到另一个坐标空间,直到这个输出完整的出现在物理设备上。如果应用程序调用SetWorldTransform,那么映射开始于应用程序的世界空间,否则映射在页面空间发生。当系统从一个空间复制矩形中的每个点到另一个空间的时候,它应用一个转换算法。一个转换算法可以改变或转换被复制对象的大小、方向、形状。尽管转换影响一个整个对象,但它也会对对象中的点和线产生作用。

 

 

下图描述了典型的转换,使用了SetWorldTransform函数:

抱歉!评论已关闭.