Qt QPainter中关于坐标的注意事项

一、QPainter需要注意的是有一个物理坐标,视口坐标,虚拟坐标。如果在都不设定的情况下,三者是一致的,大小一样。其中物理坐标为硬件设备所有,无法进行设置,setViewport(int x, int y, int w, int h)可以设置视口坐标,(x,y)表示视口坐标的起始坐标点,w、h表示视口坐标窗口的宽和高。setWindow可以设置虚拟坐标的其实坐标点和窗口大小,该函数的解释详见第三大点第一小点。

二、注意三个坐标系的关系,视口坐标系

三、setWindow和translate函数:

  a.QPainter类中的setWindow(int x, int y,int w, int h)函数是用来设置当前物理窗口映射后的虚拟窗口大小,最后的绘制会在该虚拟窗口的大小上进行。参数x、y表示虚拟窗口起始点的坐标,w、h表示映射后虚拟窗口的大小。

  b.translate(int x, int y)函数表示将setWindow函数设置的虚拟窗口的坐标原点(及(0,0)坐标点)移动到参数(x,y)表示的坐标;

  c.这两个函数无论调用顺序如何,translate函数都是在setWindow函数设置的虚拟窗口坐标上进行原点的移动。

转载于:https://www.cnblogs.com/leomoli/p/7406110.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值