Qt基本图形绘制(圆、圆角矩形、圆弧、椭圆、扇形等) | 您所在的位置:网站首页 › 如何画出正方形的圆 › Qt基本图形绘制(圆、圆角矩形、圆弧、椭圆、扇形等) |
https://blog.csdn.net/qq_40194498/article/details/79650641 首先介绍一下Qt的坐标机制: Qt的坐标与我们常见的坐标不同,如图,假设下图的矩形就是我们的窗口,矩形左上角顶点即为坐标原点: 绘制矩形 核心代码: paint->drawRect(20,20,160,160); 1第1、2个参数制定矩形的左上角起点,第3个参数制定矩形的长度,第4个参数指定矩形的宽度 绘制圆和椭圆 核心代码: paint->setPen(QPen(Qt::blue,4,Qt::SolidLine)); paint->drawEllipse(20,20,210,160); 12第1,2个参数表示圆/椭圆距屏幕左上角的像素数。第3,4个参数表示圆/椭圆的宽度和高度,两者相同时为圆。更加确切地表述,这个圆或椭圆是在矩形中,这个矩形的左上角的顶点在坐标轴中的位置为(20,20),这个圆或椭圆的中心为这个矩形的中心 绘制圆角矩形 核心代码: paint->setPen(QPen(Qt::blue,4,Qt::SolidLine)); paint->drawRoundRect(20,20,210,160,50,50); 12前面四个参数和绘制矩形的参数一致,最后两个参数决定角的圆度。它可以为0到99之间的任意值(99代表最圆)。 绘制扇形图 核心代码: QRectF rectangle(10.0, 20.0, 80.0, 60.0);//设定扇形所在的矩形,扇形画在矩形内部 int startAngle = 30 * 16;//起始角度,角度可以为负值,如-30*16 int spanAngle = 120 * 16;//覆盖的角度,绘制方向为逆时针方向 QPainter painter(this); painter.drawPie(rectangle, startAngle, spanAngle); 12345前四个参数定义圆(与drawEllipse()函数相同)。后两个参数定义圆的样式。0为起始角度(实际单位为1/16度),500为扇形所展开的角度(单位也为1/16度)。 绘制弦 核心代码: paint->setPen(QPen(Qt::green,4,Qt::SolidLine)); paint->drawChord(20,20,210,160,500,1000); 12drawChord()函数与drawPie()函数的参数完全相同。 绘制圆弧 核心代码: paint->setPen(QPen(Qt::green,4,Qt::SolidLine)); paint->drawArc(20,20,210,160,500,1000); 12drawArc()函数与drawPie()函数的参数完全相同。 |
CopyRight 2018-2019 实验室设备网 版权所有 |