博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】Math.Atan2 方法
阅读量:4553 次
发布时间:2019-06-08

本文共 2139 字,大约阅读时间需要 7 分钟。

原文网址:https://msdn.microsoft.com/zh-cn/library/system.math.atan2.aspx

返回正切值为两个指定数字的商的角度。

 

命名空间:  

程序集:  mscorlib(在 mscorlib.dll 中)

 
C#
 
public static double Atan2(	double y,	double x)

参数

y
类型:
点的 y 坐标。
x
类型:
点的 x 坐标。

返回值

类型:
角度 θ,以弧度为单位,满足 -πθπ,且 tan(θ) = y / x,其中 (x, y) 是笛卡尔平面中的点。 请看下面: 
  • 如果 (x, y) 在第 1 象限,则 0 < θ < π/2。

  • 如果 (x, y) 在第 2 象限,则 π/2 < θπ。

  • 如果 (x, y) 在第 3 象限,则 -π < θ < -π/2。

  • 如果 (x, y) 在第 4 象限,则 -π/2 < θ < 0。

如果点在象限的边界上,则返回值如下:
  • 如果 y 为 0 并且 x 不为负值,则 θ = 0。

  • 如果 y 为 0 并且 x 为负值,则 θ = π。

  • 如果 y 为正值并且 x 为 0,则 θ = π/2。

  • 如果 y 为负值并且 x 为 0,则 θ = -π/2。

  • 如果 y 为 0 并且 x 为 0,则 θ = 0。

如果 x 或 y 为 ,或者 x 和 y 为  或 ,则该方法将返回 。
 

返回值为笛卡尔平面中的角度,该角度由 x 轴和起点为原点 (0,0)、终点为 (x,y) 的向量构成。

 

下面的示例演示如何计算角和向量的反正切。 结果值会显示在控制台中。

C#
 
// This example demonstrates Math.Atan()//                           Math.Atan2()//                           Math.Tan()using System;class Sample {    public static void Main()     {    double x = 1.0;    double y = 2.0;    double angle;    double radians;    double result;// Calculate the tangent of 30 degrees.    angle = 30;    radians = angle * (Math.PI/180);    result = Math.Tan(radians);    Console.WriteLine("The tangent of 30 degrees is {0}.", result);// Calculate the arctangent of the previous tangent.    radians = Math.Atan(result);    angle = radians * (180/Math.PI);    Console.WriteLine("The previous tangent is equivalent to {0} degrees.", angle);// Calculate the arctangent of an angle.    String line1 = "{0}The arctangent of the angle formed by the x-axis and ";    String line2 = "a vector to point ({0},{1}) is {2}, ";    String line3 = "which is equivalent to {0} degrees.";    radians = Math.Atan2(y, x);    angle = radians * (180/Math.PI);    Console.WriteLine(line1, Environment.NewLine);    Console.WriteLine(line2, x, y, radians);    Console.WriteLine(line3, angle);    }}/*This example produces the following results:The tangent of 30 degrees is 0.577350269189626.The previous tangent is equivalent to 30 degrees.The arctangent of the angle formed by the x-axis anda vector to point (1,2) is 1.10714871779409,which is equivalent to 63.434948822922 degrees.*/

 

 

转载于:https://www.cnblogs.com/wi100sh/p/4517132.html

你可能感兴趣的文章
23种设计模式中的命令模式
查看>>
[转载]年薪10w和年薪100w的人,差在哪里?
查看>>
shell 日期参数
查看>>
package的使用
查看>>
括号生成
查看>>
优秀的前端需要做到什么?
查看>>
aws cli command line interface的安装与使用
查看>>
10)将地址换成常量
查看>>
cocos2d-x3.0 解释具体的新的物理引擎setCategoryBitmask()、setContactTestBitmask()、setCollisionBitmask()...
查看>>
Cocos2d-x
查看>>
FIR滤波器设计
查看>>
1005 继续(3n+1)猜想 (25 分)
查看>>
【Uva 1252】Twenty Questions
查看>>
1_访问命令行
查看>>
File操作相关
查看>>
Linux:文本处理工具
查看>>
java,for穷举,经典题目,百鸡百钱
查看>>
mysql提示Column count doesn't match value count at row 1错误
查看>>
前端--jstree--异步加载数据
查看>>
CSS定位深入理解 完全掌握CSS定位 相对定位和绝对定位
查看>>