参考博客:
https://blog.csdn.net/weixin_39583140/article/details/92798127
https://blog.csdn.net/u012442719/article/details/50923012
QT坐标系方向不是标准的笛卡尔坐标方向,x轴向右为正,y轴是向下才为正!
QPainter p(this);
通俗点讲,setViewport就是移动图形在页面的显示位置
p.setViewport(x,y,w,h); //将图形显示区域移动到(x,y)处,显示区域面积为w*h
而window则是放大缩小图形!但其放大缩小的比例是和window成反比的,即window设置的越大,图形显示会越小,window设置的越小,图形显示会越大!(但是视口的大小没变,相当于放大了图形,放太大只能看到图形的一部分,不在窗口范围内图形就看不见了)
p.setWindow(x1,y1,w1,h1); //将图形放缩,w1是横向放缩,w1越大横向显示越小,h1是纵向放缩,h1越大纵向显示越小
以下两个就是圈出一块图形显示的范围
p.setClipRect(x2,y2,w2,h2); p.fillRect(x2,y2,w2,h2, qRgb(255,255,255));