我使用wxGraphicsContext实现了绘图仪。开发使用wxGTK完成,图形非常快。
然后我使用wxWidgets 2.9.0切换到Windows(XP)。而相同的代码非常慢。渲染帧需要大约350毫秒。由于用户能够使用鼠标拖动绘图仪进行导航,因此更新速度非常缓慢。
我尝试使用wxDC实现一些部分并对差异进行基准测试。使用wxDC,代码运行速度提高了大约100倍。
据我所知,目前Cairo和GDI +都是用软件实现的,所以没有真正的理由开罗应该比GDI +快得多。
我做错了吗?或者GDI +实施是否与开罗不相上下?
一个小注意事项:我现在正在使用wxMemoryDC创建的wxGraphicsContext渲染到wxBitmap。这是为了避免XP上的闪烁,因为双缓冲在那里不起作用。