public static double AngleTo(PointD from, PointD to) { var fRadians = Math.Atan2((to.Y - from.Y), (to.X - from.X)); var fDegrees = ((AngleD.RadiansToDegrees(fRadians) + 360.0) + AngleD.DegreeOffset) % 360.0; return(fDegrees); }
public AngleD(double x, double y) { Degrees = AngleD.RadiansToDegrees(Math.Atan2(y, x)) + DegreeOffset; }
public AngleD(AngleD angle) { Degrees = angle.Degrees; }
public static PointD DegreesToXY(double degrees) { double radians = AngleD.DegreesToRadians(degrees) - RadianOffset; return(new PointD(Math.Cos(radians), Math.Sin(radians))); }
public static PointD ToXY(AngleD angle) { return(new PointD(angle.X, angle.Y)); }
public static double XYToDegrees(double x, double y) { return(AngleD.RadiansToDegrees(Math.Atan2(y, x)) + DegreeOffset); }