我有一个成熟的 MFC C++ 应用程序,它显示在屏幕上并使用 Win32 GDI 上的 CDC 包装进行打印。虽然它多年来一直在优化,但我想用更快的东西替换它。图形包括渲染的三角形表面模型、复杂的折线和多边形以及大量文本。它需要满足以下条件;
显示的矢量数量可能非常大。例如,单个曲面三角形在渲染时可能会生成数字线和实心填充。目前,这些信息没有存储在任何地方,它是动态生成和绘制的。SDK 应该支持限制缓冲向量的总数,否则容易耗尽内存。
SDK 应该能够呈现到任何 CWnd 派生类,包括 CView 和 ScrollView 类。
SDK 应该支持打印到任何 Windows 打印设备,
SDK 应该足够低级,以使来自低级 CDC/GDI 调用的端口相对简单。
开源总是很好,但一次性费用高达 2000 美元,可选升级/支持也可以。每个用户的许可费用是不可接受的,
访问源代码将是一个很大的好处,特别是在 Windows CE / Mobile 上运行部分 SDK 的想法。
我目前处理自己的 3d 到 2d 视口管理。如果没有合适的低级 SDK,则更高级别的 SDK 必须能够很好地处理 3d,并在 32 位 Windows 平台上处理数百万个三角形、多边形和文本实体。
有什么建议么?在您提出的建议中列出具体的优缺点将不胜感激。