Exemple #1
0
        /// <summary>
        /// Add velocity to modify the orbit
        /// </summary>
        /// <param name="deltaV"></param>
        public void AddVelocity(Vector3d deltaV)
        {
            Vector3d vel = this.GetCurrentVelocity() + deltaV;

            KeplerOrbitalParameters kp = KeplerOrbitalParameters.SolveOrbitalParameters(this.standardGravitationalParameter, this.GetCurrentPosition(), vel);

            this.semiMajorLength = kp.semiMajorLength;
            this.eccentricity    = kp.eccentricity;
            this.meanAnomaly     = kp.meanAnomaly;
            this.inclination     = kp.inclinationInRad;
            this.perifocus       = kp.perifocusInRad;
            this.ascendingNode   = kp.ascendingNodeInRad;
        }