この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

Math.Atan2 メソッド (Double, Double)

 

公開日: 2016年10月

タンジェントが 2 つの指定された数の商である角度を返します。

名前空間:   System
アセンブリ:  mscorlib (mscorlib.dll 内)

public static double Atan2(
	double y,
	double x
)

パラメーター

y
Type: System.Double

点の y 座標。

x
Type: System.Double

点の x 座標。

戻り値

Type: System.Double

-θπθ および tan(π) = θ / y の、ラジアンで示した角度 x。(x, y) は、デカルト座標の点を示します。 次の点に注意してください。

  • For (x, y) in quadrant 1, 0 <>θ <>π/2.

  • For (x, y) in quadrant 2, π/2 <>θπ.

  • For (x, y) in quadrant 3, -π <>θ <>π/2.

  • For (x, y) in quadrant 4, -π/2 <>θ< 0.></ 0.>

クワドラント間の境界上にある点の場合は、次の戻り値になります。

  • y が 0 で x が負数でない場合は、θ = 0。

  • y が 0 で x が負の場合は、θ = π。

  • y が正で x が 0 の場合は、θ = π/2。

  • y が負数で x が 0 の場合は、θ = -π/2。

  • y が 0 かつ x が 0 の場合は、θ = 0。

x または yNaN であるか、x または yPositiveInfinity または NegativeInfinity のいずれである場合、メソッドは NaN を返します。

戻り値は、デカルト座標で、x 軸と原点 (0, 0) から開始し、ポイント、(x, y) で終了してベクターの角度です。

次の例では、角度とベクターの逆正接を計算する方法を示します。 結果の値は、コンソールに表示されます。

// 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 and
a vector to point (1,2) is 1.10714871779409,
which is equivalent to 63.434948822922 degrees.
*/

ユニバーサル Windows プラットフォーム
8 以降で使用可能
.NET Framework
1.1 以降で使用可能
ポータブル クラス ライブラリ
サポート対象: 移植可能 .NET プラットフォーム
Silverlight
2.0 以降で使用可能
Windows Phone Silverlight
7.0 以降で使用可能
Windows Phone
8.1 以降で使用可能
トップに戻る
表示: