QT6 源,十章绘图(18)图形视图架构里的视图 QGraphicsView,篇二:本类的公共成员函数, protected 成员函数,以及信号与槽函数,

(16) 设置视图的场景

在这里插入图片描述

(17)对视图的坐标变换

在这里插入图片描述

++ 关于视图的坐标变换的再举例

在这里插入图片描述

(18) 作为对比,画家也可以进行坐标变换

在这里插入图片描述

(19)继续视图里的坐标变换

在这里插入图片描述

++以及

在这里插入图片描述

++矩阵变换是难点,结合了线性代数。 虽然任何坐标变换都可以用数学矩阵来准确描述

在这里插入图片描述

(20)挪场景中图形项到中间

在这里插入图片描述

++ 举例

在这里插入图片描述

(21) 滚动视图滚动条,使场景中某部分可见

在这里插入图片描述

++ 举例

在这里插入图片描述

(22) 调用视图的缩放与平移旋转成员函数,使场景中的某部分区域可见

在这里插入图片描述

++ 源码
在这里插入图片描述

(23) 从视图里拿到图案渲染到别的地方,由 painter 进行

在这里插入图片描述
在这里插入图片描述

++代码版举例

        QGraphicsScene scene;       //生成场景
        scene.addItem(...
        ...
    
        QGraphicsView view(&scene); //绑定到视图
        view.show();
        ...
    
        QPrinter printer(QPrinter::HighResolution);
        printer.setPageSize(QPrinter::A4);
        QPainter painter(&printer); //为打印机准备画家
    
        // print, fitting the viewport contents into a full page
        view.render(& painter);
    
        // print the upper half of the viewport into the lower half of the page.
        //QWidget * QAbstractScrollArea::viewport(); //继承于父类中的成员函数。
        QRect viewport = view.viewport()->rect();    //图形视图的内容窗体的大小
        view.render(& painter,
                    QRectF(0, printer.height() / 2, printer.width(), printer.height() / 2),
                    viewport.adjusted(0, 0, 0, - viewport.height() / 2)); //操作矩形

(24)以下开始 item 系列

在这里插入图片描述

++举例

在这里插入图片描述

(25)返回位于视图坐标系某点处的所有图形项

在这里插入图片描述

++测试

在这里插入图片描述

(26) 返回在矩形内,在多变形内,在绘图路径内的图形项 , 与在某点处的重载函数大同小异,不再举例了 :

在这里插入图片描述

(27)坐标映射

在这里插入图片描述

++以及

在这里插入图片描述

(28)本视图类的槽函数

在这里插入图片描述

(29)本类唯一的信号函数

在这里插入图片描述

++测试一下本信号函数里形参的含义

在这里插入图片描述

(30) 接着开始本类的 protected 成员函数,主要是一些事件处理函数

在这里插入图片描述

++以及

在这里插入图片描述

++以及

在这里插入图片描述

(31)

谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangzhangkeji

谢谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值