这两天在写QT的时候,我想利用两个圆相减的方式来绘制一个圆弧,主要代码如下
void draw :: paintEvent(QPaintEvent *event){
//绘制圆弧
int spanAngle = 360 / xL->length;
int startAngle = (i - 1) * spanAngle ;
int radius = 200; //大圆直径
int radius_Little = 170; //小圆直径
int circleLeftUp_x = 110; // 大圆矩形左上角x坐标
int circleLeftUp_y = 20; //大圆矩形左上角y坐标
//三个参数:rect表示弧线所在的矩形,startAngle起始角度,spanAngle跨越角度
QPainterPath arcPath;
arcPath.moveTo(radius / 2.0+circleLeftUp_x, radius / 2.0+circleLeftUp_y);
QRectF rectArc(circleLeftUp_x , circleLeftUp_y,radius, radius); //x