QPainter和QPainterPath理解

QPainter和QPainterPath理解一 简介 QPainterPath 类 绘图路径 提供了一个容器 用于绘图操作 可以创建和重用图形形状 绘图路径是由许多图形化的构建块组成的对象 例如 矩形 椭圆 直线和曲线 构建块可以加入在封闭的子路径中 例如 矩形或椭圆

大家好,欢迎来到IT知识分享网。

(一)简介

(二)常用函数

1.addEllipse()

void addEllipse(const QRectF &boundingRectangle)

2.addPath()

3.addPolygon()

4.addRect()

void addRect(const QRectF &rectangle)

5.addRoundedRect()

void addRoundedRect(const QRectF &rect, qreal xRadius, qreal yRadius, Qt::SizeMode mode = Qt::AbsoluteSize)

6.addText()

void addText(qreal x, qreal y, const QFont &font, const QString &text)

7.cubicTo()

8.lineTo()

9.arcTo()

例子

10.setFillRule()

11.moveTo()

12.closeSubpath()

QPainter

(一)简介

QPainter类在小部件和其他绘制设备上执行低级绘制。QPainter提供了高度优化的功能来完成GUI程序所需的大部分绘图。它可以画任何东西,从简单的线条到复杂的形状,如馅饼和和弦。它还可以绘制对齐文本和像素图。通常,它在一个“自然”的坐标系中绘制,但是它也可以进行视图和世界的转换。QPainter可以对继承QPaintDevice类的任何对象进行操作。QPainter的常见用法是在小部件的绘制事件中:构造并自定义(例如设置画笔或画笔)painter。然后画。记得在绘制完QPainter对象后销毁它。例如:

(二)常用函数

1.drawArc()

void drawArc(const QRect &rectangle, int startAngle, int spanAngle)

void drawArc(int x, int y, int width, int height, int startAngle, int spanAngle)

startAngle是起始角(弧形的起始点与圆心的连线与水平线的夹角)、spanAngle是跨度角

注意:QPainter中的弧度值是以1/16°为单位,在画弧是1°用16表示

2.drawChord()

void drawChord(const QRect &rectangle, int startAngle, int spanAngle)

3.drawRect()

画矩形

4.drawLine()

5.drawPolygon()

画多边形

6.drawRoundRect()

圆角矩形

7.drawEllipse()

8.drawPolyLine()

9.drawPixmap()

10.drawText()

文本

11.drawConvexPolygon()

*point是数组;pointCount是点个数

使用当前钢笔绘制数组点中的第一个pointCount点定义的凸多边形。第一个点隐式连接到最后一个点,多边形由当前画笔()填充。如果所提供的多边形不是凸的,即它至少包含一个大于180度的角,则结果是不确定的。在一些平台上(例如X11), drawConvexPolygon()函数可以比drawPolygon()函数更快。

12.drawPath()

13.drawPixmap()

void drawPixmap(const QPoint &point, const QPixmap &pixmap, const QRect &source)

void drawPixmap(const QPointF &point, const QPixmap &pixmap)

void drawPixmap(const QPoint &point, const QPixmap &pixmap)

void drawPixmap(int x, int y, const QPixmap &pixmap)常用

void drawPixmap(const QRect &rectangle, const QPixmap &pixmap)

void drawPixmap(int x, int y, int width, int height, const QPixmap &pixmap)常用

14.drawPoint()

void drawPoint(const QPoint &position)

void drawPoint(int x, int y)

15.drawPoints()

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/124121.html

(0)
上一篇 2025-10-09 11:20
下一篇 2025-10-09 11:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信