当前位置:   article > 正文

Qt 绘制中的视口(setViewport)和窗口(setWindow)_qt setviewport和setwindow

qt setviewport和setwindow

重点  :

1.绘制(QPainter)可以设置视口,视口下设置窗口,而绘制的构件是以窗口为坐标系进行绘画。

2.先根据绘图设备的物理坐标系的矩形位置,设置视图视口setViewport,然后在以视口为区域去设置窗口的左上角位置和长宽矩形区域,视口的左上角为0,0点,窗口根据计算将视口的左上角作为窗口坐标系左上角的位置。

  1. void Widget::myDrawWire()
  2. {
  3. QPainter painter(this);
  4. painter.setRenderHint(QPainter::Antialiasing);
  5. int W=width();
  6. int H=height();
  7. int side=qMin(W,H); //取长和宽的小值
  8. QRect rect((W-side)/2, (H-side)/2,side,side); //viewport矩形区
  9. painter.drawRect(rect); //绘制Viewport边界
  10. painter.setViewport(rect); //设置Viewport
  11. painter.setWindow(-100,-100,200,200); //设置窗口坐标系
  12. //设置画笔
  13. QPen pen;
  14. pen.setWidth(1); //线宽
  15. pen.setColor(Qt::red); //划线颜色
  16. pen.setStyle(Qt::SolidLine); //线的类型
  17. pen.setCapStyle(Qt::FlatCap); //线端点样式
  18. pen.setJoinStyle(Qt::BevelJoin);//线的连接点样式
  19. painter.setPen(pen);
  20. for(int i=0; i<36; i++)
  21. {
  22. painter.drawEllipse(QPoint(50,0),50,50);
  23. painter.rotate(10);
  24. }
  25. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/465497
推荐阅读
相关标签
  

闽ICP备14008679号