Esempio n. 1
0
        /// <summary>
        /// Update from METAR Callback data
        /// </summary>
        /// <param name="metarDatas"></param>
        public void Update(MetarTafDataList metarDatas)
        {
            var closest = metarDatas.GetClosest(SC.SimConnectClient.Instance.HudBarModule.Lat, SC.SimConnectClient.Instance.HudBarModule.Lon);

            if (closest.Valid)
            {
                MText       = closest.Pretty;
                StationText = $"{closest.Data.Station.StationID}";
                if (!float.IsNaN(closest.Distance_nm))
                {
                    StationText += $" {closest.Distance_nm:##0.0} nm @{closest.Bearing_deg:000}°";
                }

                HasNewData     = true;
                ConditionColor =
                    (closest.Data.FlightCategory.FlightCategoryColor == "green") ? GUI.GUI_Colors.ColorType.cMetG :
                    (closest.Data.FlightCategory.FlightCategoryColor == "blue") ? GUI.GUI_Colors.ColorType.cMetB :
                    (closest.Data.FlightCategory.FlightCategoryColor == "red") ? GUI.GUI_Colors.ColorType.cMetR :
                    (closest.Data.FlightCategory.FlightCategoryColor == "magenta") ? GUI.GUI_Colors.ColorType.cMetM :
                    (closest.Data.FlightCategory.FlightCategoryColor == "black") ? GUI.GUI_Colors.ColorType.cMetK :                                  // SUB ILS
                    (closest.Data.FlightCategory.FlightCategoryColor == "white") ? GUI.GUI_Colors.ColorType.cMetR : GUI.GUI_Colors.ColorType.cActBG; // unknown
            }
            else
            {
                MText          = "";
                StationText    = "n.a.";
                HasNewData     = true;
                ConditionColor = GUI.GUI_Colors.ColorType.cActBG;
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Clear the contained data to defaults
 /// </summary>
 public void Clear( )
 {
     MText          = "";
     ConditionColor = GUI.GUI_Colors.ColorType.cActBG;
     HasNewData     = true; // clear current
 }