public Tuple3 PositionAt(double ut, ReferenceFrame referenceFrame) { if (ReferenceEquals(referenceFrame, null)) { throw new ArgumentNullException(nameof(referenceFrame)); } return(referenceFrame.PositionFromWorldSpace(InternalOrbit.getPositionAtUT(ut)).ToTuple()); }
/// <summary> /// Hash code for the object. /// </summary> public override int GetHashCode() { return(InternalOrbit.GetHashCode()); }
public double RadiusAt(double ut) { return(InternalOrbit.getRelativePositionAtUT(ut).magnitude); }
public double EccentricAnomalyAtUT(double ut) { return(InternalOrbit.EccentricAnomalyAtUT(ut)); }
public double OrbitalSpeedAt(double time) { return(InternalOrbit.getOrbitalSpeedAt(time)); }
public double UTAtTrueAnomaly(double trueAnomaly) { return(InternalOrbit.GetUTforTrueAnomaly(trueAnomaly, 0)); }
public double TrueAnomalyAtUT(double ut) { return(InternalOrbit.TrueAnomalyAtUT(ut)); }
public double TrueAnomalyAtRadius(double radius) { return(InternalOrbit.TrueAnomalyAtRadius(radius)); }
public double RadiusAtTrueAnomaly(double trueAnomaly) { return(InternalOrbit.RadiusAtTrueAnomaly(trueAnomaly)); }
public double MeanAnomalyAtUT(double ut) { var percent = InternalOrbit.getObtAtUT(ut) / InternalOrbit.period; return(percent * (2 * Math.PI)); }