- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Linux图形编程—QT
QT编程—第9章2D绘图
目标:
本章旨在向学员介绍各种窗口部件:
掌握2D绘图的基本原理
掌握2D绘图的方法
学时:3学时
教学方法:讲授ppt+上机操作+实例演示
基本图形的绘制和填充
QPainter:
执行绘图操作。
QPaintEngine:
提供绘图接口。
QPaintDevice:
提供绘图设备。
基本图形的绘制和填充
drawArc()
弧
drawPixmap()
QPixmap表示的图像
drawChord()
弦
drawPoint()
点
drawConvexPolygon()
凸多边形
drawPoints()
多个点
drawEllipse()
椭圆
drawPolygon()
多边形
drawImage()
QImage表示的图像
drawPolyline()
多折线
drawLine()
线
drawRect()
矩形
drawLines()
多条线
drawRects()
多个矩形
drawPath()
路径
drawRoundRect()
圆角矩形
drawPicture()
按QPainter指令绘制
drawLineSegments()
绘制折线
drawTiledPixmap()
平铺图像
drawPie()
扇形
渐变填充
Qt提供了三种渐变画刷:
线性渐变(QLinearGradient)
辐射渐变(QRadialGradient)
角度渐变(QConicalGradient)
抗锯齿渲染
painter.setRenderHint(QPainter::Antialiasing);
坐标变换
视口等同客户区,使用设备坐标。
窗口与视口为同一区域,但使用逻辑坐标。
坐标转换
Qpainter类中坐标转换的函数:
1.translate(x,y):平移
2.scale(x,y):扩大
3.rotate(angel):旋转
4.shear():扭曲
注:QT中提供了专门
用于坐标转换的类:
QTransform
绘制文字
voidQPainter::drawText(
const
QRectF
rectangle,//
int
flags,
const
QString
text,
QRectF
*boundingRect
=0)
QFontfont(宋体,15,QFont::Bold,true);
//设置下划线
font.setUnderline(true);
//设置上划线
font.setOverline(true);
//设置字母大小写font.setCapitalization(QFont::SmallCaps);
//设置字符间的间距font.setLetterSpacing(QFont::AbsoluteSpacing,10);
//使用字体
painter.setFont(font);
绘制路径
QPainterPath:它是由一些图形如曲线、矩形、椭圆组成的对象。主要的用途是,能保存已经绘制好的
文档评论(0)