diff --git a/KerbalEngineer/Flight/Readouts/Rendezvous/RendezvousProcessor.cs b/KerbalEngineer/Flight/Readouts/Rendezvous/RendezvousProcessor.cs index a26d9827..b570f58a 100644 --- a/KerbalEngineer/Flight/Readouts/Rendezvous/RendezvousProcessor.cs +++ b/KerbalEngineer/Flight/Readouts/Rendezvous/RendezvousProcessor.cs @@ -182,7 +182,16 @@ public void Update() : FlightGlobals.ship_orbit.referenceBody.orbit; RelativeInclination = originOrbit.GetRelativeInclination(targetOrbit); - RelativeVelocity = FlightGlobals.ship_tgtSpeed; + + if (targetOrbit.referenceBody == FlightGlobals.ship_orbit.referenceBody) + { + RelativeVelocity = FlightGlobals.ship_tgtSpeed; + } + else + { + RelativeVelocity = (FlightGlobals.ship_orbit.GetFrameVel() - targetOrbit.GetFrameVel()).magnitude; + } + RelativeSpeed = FlightGlobals.ship_obtSpeed - targetOrbit.orbitalSpeed; PhaseAngle = originOrbit.GetPhaseAngle(targetOrbit); InterceptAngle = CalcInterceptAngle(targetOrbit, originOrbit); @@ -229,4 +238,4 @@ private Vector3d GetDescendingNode(Orbit targetOrbit, Orbit originOrbit) return Vector3d.Cross(originOrbit.GetOrbitNormal(), targetOrbit.GetOrbitNormal()); } } -} \ No newline at end of file +}