我正在开发一个CAD应用程序,考虑使用WPF渲染实体。
但是似乎WPF不支持绘制3D线条。有没有办法在WPF中绘制3D线条?
我不想为每个要绘制的线条实体创建网格,因为我担心这会导致主要性能问题,因为我需要在应用程序中创建大量的线条实体。
如果WPF不能实现这一点,那么是否可以在DirectX 9或10中实现呢?我可以混合使用DirectX和WPF吗?我的意思是使用一些Interop的方式?
非常感谢!
WPF可以进行3D渲染,而且做得很好。
你需要使用Viewport3D类来创建3D效果。
自从WPF 3.5 SP1以来,你可以将DirectX和WPF组合在一起,从而可以制作相当复杂的3D应用程序。
3DTools 库实际上是个糟糕的解决方案。这不仅是我的看法。 例如,将 100-150 个对象从 3DTools 库添加到场景中并尝试旋转场景进行测试,就可以得出关于 3D 工具的答案。 如果您希望在 WPF 3D 中获得快速性能,则必须构建自己的网格。这不是一项复杂的任务,因为您是 3D CAD 开发人员。如果您的任务涉及场景内大约 1000-5000 个简单的 3D 对象,请使用 WPF 3D,没有问题。如果超过此数量(或非常复杂):请使用 XNA、DirectX 或 OpenGL 的 NET 封装。