如何在Qt中绘制平滑的椭圆(圆圈)?

时间:2016-02-25 06:57:13

标签: qt

我需要为圆圈创建QGraphicsItem,并且我将输出作为我随附的问题输出。如何画出质量好的光滑圆圈? enter image description here以上是我的代码,enter image description here以上是我的输出。请帮我解决这个问题。我已经使用QPainter属性尝试了QGraphicsView的Antialiasing和SmoothPixMapTransform。但是,结果仍然相同。

4 个答案:

答案 0 :(得分:0)

为视图设置消除锯齿渲染提示

http://doc.qt.io/qt-5/qgraphicsview.html#renderHints-prop

答案 1 :(得分:0)

看起来您的默认渲染引擎不支持抗锯齿。

尝试使用-graphicssystem raster命令行参数强制执行栅格(软件)渲染。

尝试使用QtCreator的“basicdrawing”示例来检查小部件的呈现方式。

答案 2 :(得分:0)

请参阅setStartAngle()setSpanAngle()文档:

  

将椭圆线段的起始角度设置为角度,该角度为 16度的度数

     

将椭圆线段的跨度角设置为角度,该角度为 16度的度数

您的20和45(例如1.25°和2.8125°)很可能不是您想要的。

答案 3 :(得分:0)

要启用抗锯齿,您应添加以下行:

view->setRenderHints(QPainter::Antialiasing);

结果:

  • 抗锯齿

    enter image description here

  • 正常

    enter image description here