当前位置: 首页 > news >正文

我对于 setWindow, setViewPort 与 translate 的理解

当前在学习 Qt, 到了坐标系统这一块的时候, 有点凌乱, 在看了几个相关的博客后, 果然......更凌乱了, 直到看了 Qt 的帮助手册(不是应该第一个就看这个吗?) 才有了自己的领悟:

1. translate(), 这个其实挺好理解, 这个函数需要的是一个向量的信息,  承载这个信息的可能是:

    1.1 一个点: const QPoint &offset(浮点? const QPointF &offset) 向量由原点指向它;

    1.2两个实数, 即两个分向量, 合成的向量即为所需信息;

得到这个信息后, 原点会根据这个向量平移, 这就是 translate().

2. setWindow(), 建立一个映射,  它需要的是一个长方形的信息, 因为它将以这个长方形来映射当前的窗口, 你可以直接给它一个长方形 const QRect &rectangle, 或者给出它的左上角的点(int x, int y) 以及它的宽和高(int width, int heigh). 如 painter.setWindow(rectangle) 的意思就是用 rectangle 与 painter 当前的窗口进行映射. 当然这层意思仅限于只有这一个函数的情况, 因为如果有多个该函数, 则它的意思就是设置微软的系统(set Windows)......好吧我知道这个笑话很冷.

3. setViewPort(), 也是建立与当前窗口的一个映射, 需要的一样, 但是与 setWindow 相反, 它是建立一个 当前窗口与所给长方形的映射.

 

转载于:https://www.cnblogs.com/wuOverflow/p/4194639.html

相关文章:

  • DG_Oracle DataGuard Failover主备节点切换(案例)
  • 怎样设计接口?
  • 选择器,可选择通道和选择键类
  • Java中有关Null的9件事
  • 数据结构与算法JavaScript (二) 队列
  • JavaScript编写了一个计时器
  • 基于 jQuery 实现的精致作品集图片导航效果
  • 这两天自己模仿写的一个Asp.Net的显示分页方法 附加实体转换和存储过程
  • show processlist 执行状态分析
  • 登陆oracle慢原因分析和解决方案
  • 多线程和多进程的差别(小结)
  • 常见Exchange 邮件黑名单移除方法
  • jQuery滚动捕捉内容块
  • IOS版本更新判定(用以加载引导页)
  • 成为JavaGC专家Part I — 深入浅出Java垃圾回收机制
  • javascript面向对象之创建对象
  • js递归,无限分级树形折叠菜单
  • LeetCode29.两数相除 JavaScript
  • Linux CTF 逆向入门
  • magento2项目上线注意事项
  • SpingCloudBus整合RabbitMQ
  • Spring-boot 启动时碰到的错误
  • vuex 笔记整理
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 排序(1):冒泡排序
  • Java总结 - String - 这篇请使劲喷我
  • 国内开源镜像站点
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • #pragma预处理命令
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (3)选择元素——(17)练习(Exercises)
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (力扣)1314.矩阵区域和
  • (实战篇)如何缓存数据
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • .gitignore
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .NET的数据绑定
  • @Import注解详解
  • @KafkaListener注解详解(一)| 常用参数详解
  • [ 隧道技术 ] cpolar 工具详解之将内网端口映射到公网
  • [C++]打开新世界的大门之C++入门
  • [CTSC2014]企鹅QQ
  • [hadoop读书笔记] 第十五章 sqoop1.4.6小实验 - 将mysq数据导入HBASE
  • [LeetCode]Reverse Linked List II
  • [Linux基础开发工具---vim]关于vim的介绍、vim如何配置及vim的基本操作方法
  • [Tyvj1462]凸多边形
  • [USACO12DEC]逃跑的BarnRunning Away From…
  • [Vue 配置] Vite + Vue3 项目配置和使用 NProgress