最好的.NET图形库用于3D球体绘制?

3
我将制作一个应用程序,允许用户输入几个参数来布置保龄球球道,并显示该布局在球上的效果。我已经找到了一些很好的球面数学资源,因此如果我有一个以(0,0,0)为中心的球体,我将能够获得表面上所需点的值。我需要做的是让库创建:
  • 一个球体
  • 标记球体表面上的点
  • 连接球体上的点绘制线条(沿着大圆的弧线 - 换句话说,是球面上最短的距离)
  • 超级加分项 实际上是3D的,这样用户就可以平移、缩放和旋转。
基本上,我想计算出这些点,告诉库要绘制哪些点以及用哪种颜色连接它们,然后坐等赞誉。
如果可能的话,我想使用.NET 2.0和WinForms...
3个回答

2
如果你要使用WPF,我建议你使用Perspective3DTools。它们都很容易使用并且能够很好地完成工作。
如果只能推荐一个,我会选择Perspective,因为在我使用它的时候它更加容易,并且拥有更多的功能。但是这已经是很久以前的事情了,你最好自己看看。

如果我只是在做WinForms,有什么建议吗? - Chris Marasti-Georg
抱歉,我在winforms中没有3D方面的经验。当我需要做3D时,我不得不使用Managed DirectX来完成我想要的在winforms中,但我发现它太复杂了,最终我使用了WPF,我认为这更容易。你可以在winforms中托管一个WPF控件,但这可能不是你想要的。 - sker

1

我发现Tao Framework的OpenGL部分非常强大。它提供了原始的OpenGL绑定,以及GLUT和GLFW - 作为初学者,我发现GLFW比GLUT更容易满足我的简单需求。它附带有关于GLFW和示例的文档。

但请注意,这些库创建了一个覆盖整个窗口的3D“视图”,因此添加标准的WinForms UI可能不是直接的。这是我没有尝试过的事情。然而,有一些示例展示了简单的GUI。


1
如果您使用GLUT,您可以让库为您绘制球体,而无需自己计算点。

有没有托管库的推荐? - Chris Marasti-Georg
嗯,我想在野外某处应该有OpenGL和GLUT的托管包装器,但是谷歌搜索结果并不完整。这个看起来不错,用于C#中的OpenGL:http://www.codeproject.com/KB/openGL/sharpgl.aspx 但是要找到在此基础上的GLUT将是理想的,以便您可以轻松地绘制球体。 - Jim Buck

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接