Complex.FromPolarCoordinates Method

Creates a complex number from a point's polar coordinates.

Namespace:  System.Numerics
Assembly:  System.Numerics (in System.Numerics.dll)

public static Complex FromPolarCoordinates(
	double magnitude,
	double phase


Type: System.Double
The magnitude, which is the distance from the origin (the intersection of the x-axis and the y-axis) to the number.
Type: System.Double
The phase, which is the angle from the line to the horizontal axis, measured in radians.

Return Value

Type: System.Numerics.Complex
A complex number.

The FromPolarCoordinates method instantiates a complex number based on its polar coordinates.

Because there are multiple representations of a point on a complex plane, the return value of the FromPolarCoordinates method is normalized. The magnitude is normalized to a positive number, and the phase is normalized to a value in the range of -PI to PI. 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.

To convert a value from degrees to radians for the phase parameter, multiply it by Math.PI/180.

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 Demo(System.Windows.Controls.TextBlock outputBlock)
      Complex c1 = Complex.FromPolarCoordinates(10, 45 * Math.PI / 180);
      outputBlock.Text += String.Format("{0}:", c1) + "\n";
      outputBlock.Text += String.Format("   Magnitude: {0}", Complex.Abs(c1)) + "\n";
      outputBlock.Text += String.Format("   Phase:     {0} radians", c1.Phase) + "\n";
      outputBlock.Text += String.Format("   Phase      {0} degrees", c1.Phase * 180 / Math.PI) + "\n";
      outputBlock.Text += String.Format("   Atan(b/a): {0}", Math.Atan(c1.Imaginary / c1.Real)) + "\n";
// The example displays the following output:
//       (7.07106781186548, 7.07106781186547):
//          Magnitude: 10
//          Phase:     0.785398163397448 radians
//          Phase      45 degrees
//          Atan(b/a): 0.785398163397448


Supported in: 5, 4

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions