/// <summary>Converts the current instance into a polar coordinate.</summary> private PolarCoordinate PointDToPolarCoordinate(PointD value) { // double Value; // double TempY = -pY; // if(pX == 0) // Value = 0; // else // Value = TempY / pX; // Calculate the coordinate using the default: 0° = East // and counter-clockwise movement Radian Result = new Radian(Math.Atan2(-value.Y, value.X)); PolarCoordinate Result2 = new PolarCoordinate((float)Math.Sqrt(value.X * value.X + value.Y * value.Y), Result.ToAngle(), Azimuth.East, PolarCoordinateOrientation.Counterclockwise); // And re-orient it at North and Clockwise return Result2.ToOrientation(Azimuth.North, PolarCoordinateOrientation.Clockwise); }
/// <summary>Converts the current instance into a polar coordinate.</summary> private PolarCoordinate PointDToPolarCoordinate(PointD value) { // double Value; // double TempY = -pY; // if(pX == 0) // Value = 0; // else // Value = TempY / pX; // Calculate the coordinate using the default: 0° = East // and counter-clockwise movement Radian Result = new Radian(Math.Atan2(-value.Y, value.X)); PolarCoordinate Result2 = new PolarCoordinate((float)Math.Sqrt(value.X * value.X + value.Y * value.Y), Result.ToAngle(), Azimuth.East, PolarCoordinateOrientation.Counterclockwise); // And re-orient it at North and Clockwise return(Result2.ToOrientation(Azimuth.North, PolarCoordinateOrientation.Clockwise)); }