/// <returns>A complex point from a given string</returns> public static ComplexPoint GetPointFromString(string input) { string[] @params = input.Split(new char[] { ' ', 'i', '+', '(', ')' } , StringSplitOptions.RemoveEmptyEntries); ComplexPoint c = new ComplexPoint(double.Parse(@params[0]), double.Parse(@params[1])); return(c); }
/// <returns> A n-degree of a colex point </returns> public static ComplexPoint Pow(ComplexPoint c, double exponent) { double x = c.Re; double y = c.Im; double modulus = Math.Pow(x * x + y * y, exponent * 0.5); double argument = Math.Atan2(y, x) * exponent; c.Re = (double)(modulus * System.Math.Cos(argument)); c.Im = (double)(modulus * System.Math.Sin(argument)); return(c); }