Qt笔记之绘图QPainterpath

void MainWindow::paintEvent(QPaintEvent *)
{
    QPainterPath path;

    path.addEllipse(100,100,50,50);//从100,100开始画椭圆,长宽都是50,即,圆
    path.lineTo(200,200);//从上一个的起始位置开始画直线到200,200,即从100,100开始画

    QPainter painter(this);
    painter.setPen(Qt::green);
    painter.setBrush(Qt::yellow);

    painter.drawPath(path);

    QPainterPath path2;
    path2.addPath(path);
    path2.translate(100,0);
    painter.drawPath(path2);

}

path相当与一个容器

想再别处画一样的图,不必要再painter.drwa.......

直接新建path,然后把之前的加入

path默认起始位置是0,0

path.moveTo(100,100) //起始位置为100,100,即,下一个绘图开始的地方为100,100


你可能感兴趣的:(qt,Path)