C# 数学与 XNA MathHelper

标签 c# math xna pi

自从我需要在 C# 中使用 PI (3.1415...) 以来,我一直使用 Math.PI 来获取值。通常我只会使用像 Math.PI/2.02.0*Math.PI 这样的值,但现在我刚刚注意到 XNA 提供了一个 MathHelper 类。这样做的好处是我可以调用 MathHelper.PiOver2MathHelper.TwoPi,从而使极其微不足道的步骤变得更加微不足道。 ;-)

我假设这两个类可以互换,但我注意到 Math.PI/2.0 != MathHelper.PiOver2。我试图研究为什么会这样,但我一无所获。所以,我想我会在这里碰碰运气。关于使用 PI,Math 类和 MathHelper 类之间有什么区别吗?一个比另一个更受欢迎吗?还是我应该只管足够好,只确保在整个程序中始终如一地使用其中一个?

最佳答案

他们怎么不平等?如果它们足够接近,这可能只是传统问题,即几乎不可能用 float 来测试相等性。

另外,它们是同一类型吗?我的意见是大多数游戏计算都是用 float 完成的,而 Math.PI 是 double 。

编辑:MathHelper does indeed use floats

关于C# 数学与 XNA MathHelper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1529198/

相关文章:

c# - 导入效果错误

c# - 命名空间 'System' 中不存在“DirectoryServices”

c# - 使用 itextsharp 突出显示 PDF 文件时出现数字超出范围错误

python - 最大化复杂多变量函数的计算有效方法

c# - 有没有没有if/else/switch/的公式?等可以取代解决方案[,]矩阵

c# - XNA Tile 映射平台游戏?

c# - StoryBoard - 从代码隐藏设置目标名称

c# - 如何读取故障转储文件(我有源代码和 .pdb 文件)

python - 如何退出递归数学公式并仍然得到答案

c# - 推荐XNA教程开始学习3D(第一次)