wxPython绘制椭圆弧和抗锯齿

wxPython drawing Ellipse arc and anti aliasing

我刚开始使用 wxPython,我的项目需要使用 wx.Python。这是我使用 wx.PaintDC 绘制椭圆弧的问题有没有办法平滑绘图(抗锯齿)?我发现 wx.GraphicContext 有抗锯齿功能,但是没有办法画椭圆弧吗?

谢谢。

    dc = wx.PaintDC(self)
    dc.Clear()
    dc.SetBrush(wx.Brush('#000000', wx.TRANSPARENT))
    dc.SetPen(wx.Pen(wx.BLACK, 4))

    dc.DrawEllipticArc(10, 10, 100, 100, 270, 0)

是的,你确实需要使用wxGraphicsContext来获得AA支持并且它确实支持绘制弧线,当然你只需要直接使用wxGraphicsPath::AddArcToPoint()而不是依赖(不存在) DrawArc() wxGraphicsContext 本身的助手。