滚动条移动是否改变股备坐标

 1.滚动条移动是视口移动了.变化的是视口的坐标原点(即视口矩形的中心点)相当于SetViewportOrg(10,0)函数的功能.
2.绘图中坐标涉汲几个概念,一看你的问题,你就没太明白.要加分给我呀,我送你我的心得:
1.逻辑环境(画布)、窗口、设备环境、视口(设备环境大中的一部分)、坐标系、坐标转换(映像)。
逻辑环境:位置在想象中的并不存在;使用逻辑坐标(映像模式全是指逻辑坐标)坐标Y轴方向由设置的逻辑坐标模式来决定坐标。原点位置在逻辑环境的中心点,不可改动!坐标值可以有负值的!
窗口:    逻辑环境中的一小部分,是一个矩形框;坐标系是逻辑坐标,SetWindowOrg( )设置窗口矩形框的中心点(即窗口的原点,不是窗口矩形的左上角)的坐标,默认值为逻辑坐标的原点。
设备环境:显示器、打印机等等。坐标系为设备坐标系,正Y轴向下,正X轴向右,原点在左上角,固定不变,不可修改,其X、Y的负半轴为虚设,无法显示或无法打印图形。
视口:    设备环境大中的一部分,一个矩形框;坐标系同设备环境。SetViewportOrg( )设置视口矩形框的中心点,默认值为坐标原点。视口是窗口的按比例的映像(投影),因设备环境的坐标系X、Y负半轴是虚设无法显示,故要常常平移视口。
//逻辑环境与窗口在一个平面上(联想:电影胶卷),设备环境与视口在一个平面上(联想:放映的屏幕)
//映像过程就是电影放映时图像的转换过程
坐标转换:编程时的“设备无关性”决定了绘图函数用的全是逻辑坐标,这就需要坐标转换语句来自动完成逻辑坐标单位向逻辑坐标单位的转换,因此要常常用到pDC->LPtoDP。坐标转换的过程是一个映像的过程,与坐标系方向无关,逻辑环境中画出的图与设备环境中显示的图形方向大小(各向同性和各向异性模式是按比例缩放;宽屏显示器横向自动放大比例)是一样的,画多大显示多大。

注意可以用SetViewportOrg( )和SetWindowOrg( )在任何绘图模式下进行平移,但是,
SetViewportExt( )和SetWindowExt( )是为各向同性和各向异性模式预留的,其它模式用不用没什么区别,可以省略!当SetViewportExt( ),SetWindowExt()中的参数出现负数,说明坐标轴方向反向。对于各向同性和各向异性模式使用SetViewportExt( )前先用SetWindowExt( ),然后用pDC->LPtoDP()映像,最后就可以选画笔绘图了
LPtoDP()只对各向同性与各向异性模式(自定义模式)起作用,其它模式自带这个功能。
其它模式不需要用LPtoDP(),自动含这个功能.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值