窗口 视口概念详解
窗口视口概念详解 窗口和视口是两种不同的坐标系统,它们之间的转换是图形编程中的关键概念。 窗口是基于逻辑坐标的,坐标原点在客户区的左上角。窗口坐标是与设备无关的,使用逻辑单位,如厘米、毫米等。窗口坐标的原点与视口坐标的原点始终对应于同一点。 视口是基于设备坐标的,坐标原点也在客户区的左上角。视口坐标是与设备相关的,使用像素为单位。视口坐标的原点也与窗口坐标的原点对应于同一点。 在图形编程中,需要将窗口坐标转换为视口坐标,以便正确地输出图形。这个转换过程涉及到逻辑坐标到设备坐标的转换。 SetWindowOrg 函数用于设置窗口坐标的原点,SetViewportOrg 函数用于设置视口坐标的原点。 在使用 MoveTo 和 LineTo 函数画图时,需要将窗口坐标转换为视口坐标。这个转换过程包括两个步骤:首先将窗口坐标转换为逻辑坐标,然后将逻辑坐标转换为视口坐标。在这个过程中,需要使用 SetMapMode 函数设置映射模式,如 MM_LOMETRIC。 在 MM_LOMETRIC 映射模式下,设备坐标的单位长度为 0.1 毫米,Y 轴的正方向为向上。这样,在输出图形时,需要将视口坐标转换为设备坐标,以便正确地显示图形。 在编写图形程序时,需要注意窗口坐标和视口坐标的区别,并正确地进行坐标转换,以便正确地输出图形。否则,将导致图形显示不正确。 此外,需要注意设备坐标的单位长度也可能不同,例如打印机设备的水平和垂直分辨率不同,需要根据实际设备进行坐标转换。 在实际编程中,需要使用 SetWindowExt 和 SetViewportExt 函数来设置窗口和视口的坐标范围,并使用 SetMapMode 函数设置映射模式,以便正确地进行坐标转换。 需要注意在不同的设备上,坐标系统可能不同,需要根据实际设备进行坐标转换,以便正确地输出图形。
- y4997530022014-03-30多下载点资源,一起总结,
- 粉丝: 0
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助