Exemplo n.º 1
0
 /// <summary>
 /// convert string to  Vehicleinfo enum
 /// </summary>
 /// <param name="value"></param>
 /// <returns></returns>
 public static Vehicleinfo VehicleinfoEnum(string value)
 {
     if (value != "")
     {
         Vehicleinfo m = (Vehicleinfo)Enum.Parse(typeof(Vehicleinfo), value, true);
         return(m);
     }
     else
     {
         return(Vehicleinfo.VID);
     }
 }
Exemplo n.º 2
0
        public void showInfo(string value)
        {
            Vehicleinfo vinfo = EnumConverter.VehicleinfoEnum(value);

            Dispatcher.Invoke((Action) delegate
            {
                if (vinfo == Vehicleinfo.None)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = ""), DispatcherPriority.Send);
                }
                if (vinfo == Vehicleinfo.SwitchDirection)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = CurrentLane.CurrentSwitchToDirection), DispatcherPriority.Send);
                }
                if (vinfo == Vehicleinfo.Direction)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = CurrentLane.LaneDirection), DispatcherPriority.Send);
                }

                if (vinfo == Vehicleinfo.VID)
                {
                    txt_vid.Visibility = Visibility.Hidden;
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = VID), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.SpeedKMH)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = GetSpeedInKMH.ToString("0.00")), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.SpeedTimer)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = InstantaneousSpeed.ToString("0.00")), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.RID)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = CurrentLane.MyRoadSegment.RID), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.SJID)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = StartJunction.JID), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.DJID)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = EndJunction.JID), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.LaneIndex)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = CurrentLane.LaneIndex), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.InstanceLocation)
                {
                    int X = Convert.ToInt32(InstanceLocation.X);
                    int Y = Convert.ToInt32(InstanceLocation.Y);
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = X + "," + Y), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.RemianDistanceToHeadingJunction)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = RemianDistanceToHeadingJunction.ToString("0.00")), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.TravelledDistanceInMeter)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = TravelledDistanceInMeter.ToString("0.00")), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.ExceededDistanceInMeter)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = ExceededDistanceInMeter.ToString("0.00")), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.PacketsQueueLength)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = PacketQueue.Count), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.JunctionQueueIndex)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = IndexInQueue), DispatcherPriority.Send);
                }
                else if (vinfo == Vehicleinfo.RIDpluseLaneIndex)
                {
                    Dispatcher.Invoke(new Action(() => lbl_show_info.Content = CurrentLane.MyRoadSegment.RID + "-" + CurrentLane.LaneIndex), DispatcherPriority.Send);
                }
            });
        }