Qt学习笔记:QTransform

来源:互联网 发布:淘宝羊皮女背包 编辑:程序博客网 时间:2024/06/15 16:37

QTransform类

QTransform类用于控制二维坐标系之间的转换

包含:位移、缩放、扭曲、旋转还有映射

首先看它的核心内容:


qtransform-representation.png


这是一个仿射变换矩阵(affine transformation),它包含了坐标系转换所需要的所有信息

element description m11 水平缩放 m22 垂直缩放 m21 水平扭曲 m12 垂直扭曲 m31(dx) 水平位移 m32(dy) 垂直位移 m13 水平映射 m23 垂直映射 m33 额外的映射因子

他们具体的功能可以看下图:


这里写图片描述


你可以直接使用

void setMatrix(qreal m11, qreal m12, qreal m13, qreal m21, qreal m22, qreal m23, qreal m31, qreal m32, qreal m33)

来设置这些元素

当然,QTransform也提供了很多方法来方便你使用

method descripiton QTransform.translate(qreal dx, qreal dy) dx,dy为任意大小的实数,保存到m31(dx)和m32(dy)中 QTransform.scale(qreal sx, qreal sy) sx,sy为任意大小的实数,保存到m11和m22中 QTransform.rotate(qreal angle) angle为任意大小的实数,不过为了便于阅读,最好是0到360之间 QTransform.shear(qreal sh, qreal sv) sh,sv为任意大小的实数,保存到m12和m21中
1 0
原创粉丝点击