@H_404_8@
@H_404_8@
double x = sw.bonePos[0,(int)Bones.HipCenter].x;double z = sw.bonePos[0,(int)Bones.HipCenter].z;double hypotenusePower2 = Math.Pow(x,2) + Math.Pow(z,2);double hypotenuse = Math.Sqrt(hypotenusePower2);double angle = Math.Asin(z / hypotenuse);
我知道x,z,斜边是正确的,z /斜边是正确的,因为它总是介于-1和1之间.所以我想找到使用ArcSin的角度,如this,但是当我打印时,例如Math.Asin(1)结果是1.5707 ……
我使用了错误的功能吗? C#中是否有任何返回角度的函数?@H_404_8@
输入/输出示例:@H_404_8@
@H_404_8@
x: -0.000844396417960525 z: 0.857428431510925 hypotenuse: 0.857428847292063 angle: 1.5698115260652x: 0.0198930986225605 z: 0.849016189575195 hypotenus: 0.849249212854266 angle: 1.54736984845028解决方法 你得到的结果是正确的 – 因为1是π的一半,或大约1.5707弧度.
@H_404_8@
返回角度的函数通常以弧度返回结果.如果需要以度为单位的结果,则需要将结果转换如下:@H_404_8@
@H_404_8@
double degrees = angle * ( 180 / Math.Pi );总结
以上是内存溢出为你收集整理的使用C#中的Arcsin计算正交三角形的角度全部内容,希望文章能够帮你解决使用C#中的Arcsin计算正交三角形的角度所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)