Complex.FromPolarCoordinates(Double, Double) 方法

定义

从点的极坐标创建复数。Creates a complex number from a point's polar coordinates.

public:
 static System::Numerics::Complex FromPolarCoordinates(double magnitude, double phase);
public static System.Numerics.Complex FromPolarCoordinates (double magnitude, double phase);
static member FromPolarCoordinates : double * double -> System.Numerics.Complex
Public Shared Function FromPolarCoordinates (magnitude As Double, phase As Double) As Complex

参数

magnitude
Double

量值,它是从原点(x 轴与 y 轴的交点)到数字的距离。The magnitude, which is the distance from the origin (the intersection of the x-axis and the y-axis) to the number.

phase
Double

相位,它是直线相对于水平轴的角度,以弧度为单位。The phase, which is the angle from the line to the horizontal axis, measured in radians.

返回

一个复数。A complex number.

示例

下面的示例使用 FromPolarCoordinates 方法基于其极坐标来实例化复数,然后显示其 MagnitudePhase 属性的值。The following example uses the FromPolarCoordinates method to instantiate a complex number based on its polar coordinates and then displays the value of its Magnitude and Phase properties.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex c1 = Complex.FromPolarCoordinates(10, 45 * Math.PI / 180);
      Console.WriteLine("{0}:", c1);
      Console.WriteLine("   Magnitude: {0}", Complex.Abs(c1));
      Console.WriteLine("   Phase:     {0} radians", c1.Phase);
      Console.WriteLine("   Phase      {0} degrees", c1.Phase * 180/Math.PI);
      Console.WriteLine("   Atan(b/a): {0}", Math.Atan(c1.Imaginary/c1.Real));
   }
}
// The example displays the following output:
//       (7.07106781186548, 7.07106781186547):
//          Magnitude: 10
//          Phase:     0.785398163397448 radians
//          Phase      45 degrees
//          Atan(b/a): 0.785398163397448
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c1 As Complex = Complex.FromPolarCoordinates(10, 45 * Math.Pi / 180)
      Console.WriteLine("{0}:", c1)
      Console.WriteLine("   Magnitude: {0}", Complex.Abs(c1))
      Console.WriteLine("   Phase:     {0} radians", c1.Phase)
      Console.WriteLine("   Phase      {0} degrees", c1.Phase * 180/Math.Pi)
      Console.WriteLine("   Atan(b/a): {0}", Math.Atan(c1.Imaginary/c1.Real))
   End Sub
End Module
' The example displays the following output:
'       (7.07106781186548, 7.07106781186547):
'          Magnitude: 10
'          Phase:     0.785398163397448 radians
'          Phase      45 degrees
'          Atan(b/a): 0.785398163397448

注解

FromPolarCoordinates 方法基于其极坐标实例化复数。The FromPolarCoordinates method instantiates a complex number based on its polar coordinates.

由于在复杂平面上存在多个点的表示形式,因此 FromPolarCoordinates 方法的返回值已规范化。Because there are multiple representations of a point on a complex plane, the return value of the FromPolarCoordinates method is normalized. 此量的值规范化为正数,阶段被规范化为范围PIPI的值。The magnitude is normalized to a positive number, and the phase is normalized to a value in the range of -PI to PI. 因此,生成的复数的 PhaseMagnitude 属性的值可能不等于 magnitudephase 参数的原始值。As a result, the values of the Phase and Magnitude properties of the resulting complex number may not equal the original values of the magnitude and phase parameters.

若要将 phase 参数的值从度转换为弧度,请将其乘以 Math.PI/180。To convert a value from degrees to radians for the phase parameter, multiply it by Math.PI/180.

适用于

另请参阅