private Vector GetHVC(AxisPosition axes) { Vector hvc = new Vector(0.0, 0.0, 0.0); hvc[0] = Math.Cos(axes.DecAxis.Radians) * Math.Cos(axes.RAAxis.Radians); hvc[1] = Math.Cos(axes.DecAxis.Radians) * Math.Sin(axes.RAAxis.Radians); hvc[2] = Math.Sin(axes.DecAxis.Radians); return(hvc); }
public EquatorialCoordinate GetEquatorialCoords(AxisPosition axes, double localSiderealTime) { Vector EVC = new Vector(0.0, 0.0, 0.0); Vector HVC = GetHVC(axes); double deltaTime = AstroConvert.HrsToRad((localSiderealTime - _timeZero)); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { EVC[i] += _iT[i, j] * HVC[j]; } } return(new EquatorialCoordinate(Math.Atan2(EVC[1], EVC[0]) + (_k * deltaTime), Math.Asin(EVC[2]))); }
public bool Equals(AxisPosition obj, double toleranceRadians) { return((Math.Abs(obj.RAAxis.Radians - this.RAAxis.Radians) < toleranceRadians) && (Math.Abs(obj.DecAxis.Radians - this.DecAxis.Radians) < toleranceRadians)); }