From 19538a47d66691774c26e6bde53008197b6bac9a Mon Sep 17 00:00:00 2001 From: Eric Oden Date: Wed, 13 Nov 2013 23:13:34 -0600 Subject: [PATCH 1/2] Fix #224. --- VesselUtils.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/VesselUtils.cs b/VesselUtils.cs index 94606ca..333112e 100644 --- a/VesselUtils.cs +++ b/VesselUtils.cs @@ -234,6 +234,10 @@ public static float GetVelocityHeading(Vessel vessel) public static float GetTargetBearing(Vessel vessel, Vessel target) { + if (vessel == target) + { + return 0; + } return AngleDelta(GetHeading(vessel), GetTargetHeading(vessel, target)); } @@ -242,8 +246,12 @@ public static float GetTargetHeading(Vessel vessel, Vessel target) var up = vessel.upAxis; var north = GetNorthVector(vessel); var vector = Vector3d.Exclude(vessel.upAxis, target.GetWorldPos3D() - vessel.GetWorldPos3D()).normalized; - var headingQ = Quaternion.Inverse(Quaternion.Euler(90, 0, 0) * Quaternion.Inverse(Quaternion.LookRotation(vector, up)) * Quaternion.LookRotation(north, up)); + var headingQ = Quaternion.Inverse(Quaternion.Euler(90, 0, 0) * Quaternion.Inverse(Quaternion.LookRotation(vector, up)) * Quaternion.LookRotation(north, up)); + if(vessel == target) + { + return GetHeading(vessel); + } return headingQ.eulerAngles.y; } From 16a48cc3d069299bf83829e01489ec134ed7e0b4 Mon Sep 17 00:00:00 2001 From: Eric Oden Date: Wed, 13 Nov 2013 23:38:44 -0600 Subject: [PATCH 2/2] Implement #201 --- VesselTarget.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/VesselTarget.cs b/VesselTarget.cs index f53e01f..482c4ed 100644 --- a/VesselTarget.cs +++ b/VesselTarget.cs @@ -99,6 +99,7 @@ public override object GetSuffix(string suffixName) if (suffixName == "AIRSPEED") return (target.orbit.GetVel() - FlightGlobals.currentMainBody.getRFrmVel(target.GetWorldPos3D())).magnitude; //the velocity of the vessel relative to the air); if (suffixName == "VESSELNAME") return target.vesselName; if (suffixName == "ALTITUDE") return target.altitude; + if (suffixName == "ALTRADAR") return target.heightFromTerrain > 0 ? Math.Min((double)target.heightFromTerrain, target.altitude) : target.altitude; if (suffixName == "APOAPSIS") return target.orbit.ApA; if (suffixName == "PERIAPSIS") return target.orbit.PeA; if (suffixName == "SENSOR") return new VesselSensors(target);