[记录]学习<<QT学习之路2>>第五天
来源:互联网 发布:攻城掠地控号手软件 编辑:程序博客网 时间:2024/06/06 01:42
今天的内容是有关于QT绘制系统的,对应于<<QT学习之路2>>第24到30部分
先放出思维导图先.
一,Qt绘制系统
二,QT画刷画笔
三,QT绘制设备
四,QTGraphics View Framework
五,个人理解
根据我的理解,QT绘制系统应该是处理有关图像的.其中,QPainter是画笔,QPainterDevice是画布,QPaintEngine就是两者用来通讯的工具.引用豆子的话来说就是,Qt 的绘图系统实际上是,使用QPainter
在QPainterDevice
上进行绘制,它们之间使用QPaintEngine
进行通讯(也就是翻译QPainter
的指令)。
QPainter
对于QPainter,我们主要用到的是QBrush,用于填充和QPen,用于绘制轮廓线.
填充包括填充的样式和填充的颜色,分别用style()和color()实现.
绘制轮廓线则包括轮廓线的颜色,长度,宽度等.
在进行绘制过程中,要注意的有渐变和反走样了.
QPainterDevice
QPainterDevice就是绘制设备.QPainterDevice类下有数个子类.一般我们都是调用子类来实现自己所需的功能的.
上面的是关于绘制系统的.
另外为了描述图像的点,长度,大小等信息,QT中还有坐标系统.
这是一个"半像素坐标系".对点的描述方式分为走样和反走样两类.在走样中还有对像素是奇偶数的分析.
坐标系统自然要涉及坐标变换.Qt 提供了四种坐标变换:平移 translate,旋转 rotate,缩放 scale 和扭曲 shear.
对于不同的变换方式,我们可以调用不同的函数.
坐标分类:物理坐标和逻辑坐标 表示这里没怎么看懂
什么是物理坐标?什么是逻辑坐标?这两者有什么联系?
最后是关于Graphics View Framework
这部分内容更是看着云里雾里的.
Graphics View 提供了一种接口,用于管理大量自定义的 2D 图形元素,并与之进行交互;还提供了用于将这些元素进行可视化显示的观察组件,并支持缩放和旋转。
为什么需要Graphics View类呢?它和绘制系统是什么关系呢?有了Graphics View还需要调用QPainter吗?
=_=好多好复杂的...算了,慢慢来,加油!^_^
明天有事,后天开始看贪吃蛇^_^
- [记录]学习<<QT学习之路2>>第五天
- C#学习记录之第五天
- [记录]<<QT学习之路2>>学习第三天
- 第五天git学习记录
- Java学习之路(第五天)
- php培训学习记录 第五天
- Linux第五天的学习记录
- c++ 学习之路 第五天 const理解
- 我的caffe学习之路<第五天>
- GIT学习之路第五天 分支管理
- MFC学习之第五天 异形窗口
- COBOL学习第五天
- 学习JAVA第五天
- 程序学习第五天
- QTP第五天学习
- 学习的第五天
- Java学习第五天
- C#学习第五天
- 剑指Offer面试题17(Java版):合并两个排序的链表
- HDU 2017-字符串统计
- priority_queue使用
- 【数论】poj1811Prime Test
- Java学习之路:不走弯路,就是捷径
- [记录]学习<<QT学习之路2>>第五天
- Swift对于可选类型(Optionals)讲解不错的文章
- 黑马程序员------OC block(代码块)和protocol(协议)
- 每天一个小知识点20(面试可能问到的兼容问题)
- 测试连接MySQL数据库时遇到的一些问题
- HDU 4115 Eliminate the Conflict(2-SAT)
- Best Time to Buy and Sell Stock III
- 3Sum
- What does => and () => mean in Scala