示例#1
0
        private void updateVehicleStatus_vh1(Path path_vh, sc.AVEHICLE vh)
        {
            if (!vh.isTcpIpConnect)
            {
                path_vh.Fill = Brush_Black;
            }
            else
            {
                switch (vh.MODE_STATUS)
                {
                case VHModeStatus.InitialPowerOff:
                case VHModeStatus.Manual:
                    break;

                case VHModeStatus.InitialPowerOn:
                    break;

                case VHModeStatus.AutoLocal:
                    break;

                case VHModeStatus.AutoMts:
                    break;

                case VHModeStatus.AutoMtl:
                    break;

                case VHModeStatus.AutoRemote:
                    break;

                default:
                    break;
                }
            }
        }
示例#2
0
        private void initialVhEvent(BCApplication _bcApp)
        {
            sc.AVEHICLE vh_1 = _bcApp.SCApplication.VehicleBLL.cache.getVhByID("B7_OHBLOOP_CR1");
            event_id = this.Name;
            vh_1.addEventHandler(event_id
                                 , nameof(vh_1.VhPositionChangeEvent)
                                 , (s1, e1) =>
            {
                updateVehiclePosition_vh1(vh1_position, s1 as sc.AVEHICLE);
            });
            //vh_1.addEventHandler(event_id
            //        , nameof(vh_1.VhStatusChangeEvent)
            //        , (s1, e1) =>
            //        {

            //        });
            //updateVehicleStatus_vh1(vh1, vh_1);

            sc.AVEHICLE vh_2 = _bcApp.SCApplication.VehicleBLL.cache.getVhByID("B7_OHBLOOP_CR2");
            event_id = this.Name;
            vh_2.addEventHandler(event_id
                                 , nameof(vh_2.VhPositionChangeEvent)
                                 , (s1, e1) =>
            {
                updateVehiclePosition_vh1(vh2_position, s1 as sc.AVEHICLE);
            });
            //updateVehicleStatus_vh1(vh2, vh_2);
        }
示例#3
0
 private void updateVehiclePosition_vh1(TranslateTransform transfer, sc.AVEHICLE vh)
 {
     Adapter.Invoke((obj) =>
     {
         transfer.X = ((vh.X_Axis - min_x + pathEnhance.StrokeThickness) * PathEnhance.Scale) - Vh1_Circle.RadiusX;
         transfer.Y = ((vh.Y_Axis - min_y + pathEnhance.StrokeThickness) * PathEnhance.Scale) - Vh1_Circle.RadiusY;
     }, null);
 }
示例#4
0
 public VhObj(sc.AVEHICLE _vh)
 {
     vh                 = _vh;
     ellipse            = GetEllipse(vh.Num);
     nodeText           = GetTextBlock(vh.Num);
     ellipse.MouseDown += Ellipse_MouseDown;
     updateVehicleStatus(vh);
     initialVhEvent();
 }
        public static void set(this sc.AVEHICLE vh, sc.AVEHICLE new_vh)
        {
            vh.isTcpIpConnect   = new_vh.isTcpIpConnect;
            vh.VEHICLE_TYPE     = new_vh.VEHICLE_TYPE;
            vh.CUR_ADR_ID       = new_vh.CUR_ADR_ID;
            vh.CUR_SEC_ID       = new_vh.CUR_SEC_ID;
            vh.SEC_ENTRY_TIME   = new_vh.SEC_ENTRY_TIME;
            vh.ACC_SEC_DIST     = new_vh.ACC_SEC_DIST;
            vh.MODE_STATUS      = new_vh.MODE_STATUS;
            vh.ACT_STATUS       = new_vh.ACT_STATUS;
            vh.MCS_CMD          = new_vh.MCS_CMD;
            vh.OHTC_CMD         = new_vh.OHTC_CMD;
            vh.BLOCK_PAUSE      = new_vh.BLOCK_PAUSE;
            vh.CMD_PAUSE        = new_vh.CMD_PAUSE;
            vh.OBS_PAUSE        = new_vh.OBS_PAUSE;
            vh.HID_PAUSE        = new_vh.HID_PAUSE;
            vh.ERROR            = new_vh.ERROR;
            vh.OBS_DIST         = new_vh.OBS_DIST;
            vh.HAS_CST          = new_vh.HAS_CST;
            vh.CST_ID           = new_vh.CST_ID;
            vh.UPD_TIME         = new_vh.UPD_TIME;
            vh.VEHICLE_ACC_DIST = new_vh.VEHICLE_ACC_DIST;
            vh.MANT_ACC_DIST    = new_vh.MANT_ACC_DIST;
            vh.MANT_DATE        = new_vh.MANT_DATE;
            vh.GRIP_COUNT       = new_vh.GRIP_COUNT;
            vh.GRIP_MANT_COUNT  = new_vh.GRIP_MANT_COUNT;
            vh.GRIP_MANT_DATE   = new_vh.GRIP_MANT_DATE;
            vh.NODE_ADR         = new_vh.NODE_ADR;
            vh.IS_PARKING       = new_vh.IS_PARKING;
            vh.PARK_TIME        = new_vh.PARK_TIME;
            vh.PARK_ADR_ID      = new_vh.PARK_ADR_ID;
            vh.IS_CYCLING       = new_vh.IS_CYCLING;
            vh.CYCLERUN_TIME    = new_vh.CYCLERUN_TIME;
            vh.CYCLERUN_ID      = new_vh.CYCLERUN_ID;

            vh.PredictPath       = new_vh.PredictPath;
            vh.CyclingPath       = new_vh.CyclingPath;
            vh.startAdr          = new_vh.startAdr;
            vh.FromAdr           = new_vh.FromAdr;
            vh.ToAdr             = new_vh.ToAdr;
            vh.CmdType           = new_vh.CmdType;
            vh.vh_CMD_Status     = new_vh.vh_CMD_Status;
            vh.VhRecentTranEvent = new_vh.VhRecentTranEvent;

            vh.WillPassSectionID   = new_vh.WillPassSectionID;
            vh.procProgress_Percen = new_vh.procProgress_Percen;
        }
示例#6
0
            private void updateVehiclePosition(sc.AVEHICLE vh)
            {
                double X = (((vh.X_Axis)) * PathEnhance.Scale) - (ellipse.ActualWidth / 2) + 5;
                double Y = (((vh.Y_Axis)) * PathEnhance.Scale) - (ellipse.ActualHeight / 2) + 5;

                //double X = ((vh.X_Axis) * PathEnhance.Scale);
                //double Y = ((vh.Y_Axis) * PathEnhance.Scale);
                if (X == 0 && Y == 0)
                {
                    X = vh.Num * 30;
                }

                Adapter.Invoke((obj) =>
                {
                    setPosition(X, Y);
                }, null);
            }
示例#7
0
            private void updateVehicleStatus(sc.AVEHICLE vh)
            {
                if (!vh.isTcpIpConnect)
                {
                    setColor(Brushes.Black);
                }
                else
                {
                    switch (vh.MODE_STATUS)
                    {
                    case VHModeStatus.InitialPowerOff:
                    case VHModeStatus.Manual:
                        setColor(Brushes.Orange);
                        break;

                    case VHModeStatus.InitialPowerOn:
                        break;

                    case VHModeStatus.AutoLocal:
                        setColor(Brushes.Blue);
                        break;

                    case VHModeStatus.AutoMts:
                        setColor(Brushes.Gold);
                        break;

                    case VHModeStatus.AutoMtl:
                        setColor(Brushes.Gold);
                        break;

                    case VHModeStatus.AutoRemote:
                        setColor(Brushes.Green);
                        break;

                    default:
                        setColor(Brushes.Orange);
                        break;
                    }
                }
            }
        public static void set(this sc.AVEHICLE vh, sc.ProtocolFormat.OHTMessage.VEHICLE_INFO new_vh)
        {
            int vh_type    = (int)new_vh.VEHICLETYPE;
            int cmd_type   = (int)new_vh.CmdType;
            int cmd_status = (int)new_vh.VhCMDStatus;

            vh.isTcpIpConnect = new_vh.IsTcpIpConnect;
            vh.VEHICLE_TYPE   = (sc.E_VH_TYPE)vh_type;
            vh.CUR_ADR_ID     = new_vh.CURADRID;
            vh.CUR_SEC_ID     = new_vh.CURSECID;
            //vh.SEC_ENTRY_TIME = new_vh.SEC_ENTRY_TIME;
            vh.ACC_SEC_DIST = new_vh.ACCSECDIST;
            vh.MODE_STATUS  = new_vh.MODESTATUS;
            vh.ACT_STATUS   = new_vh.ACTSTATUS;
            vh.MCS_CMD      = new_vh.MCSCMD;
            if (!SCUtility.isMatche(vh.OHTC_CMD, new_vh.OHTCCMD))
            {
                vh.OHTC_CMD = new_vh.OHTCCMD;
                vh.NotifyVhExcuteCMDStatusChange();
            }
            vh.PauseStatus       = new_vh.PauseStatus;
            vh.BLOCK_PAUSE       = new_vh.BLOCKPAUSE;
            vh.CMD_PAUSE         = new_vh.CMDPAUSE;
            vh.OBS_PAUSE         = new_vh.OBSPAUSE;
            vh.HID_PAUSE         = new_vh.HIDPAUSE;
            vh.SAFETY_DOOR_PAUSE = new_vh.SAFETYDOORPAUSE;
            vh.EARTHQUAKE_PAUSE  = new_vh.EARTHQUAKEPAUSE;
            vh.ERROR             = new_vh.ERROR;
            vh.OBS_DIST          = new_vh.OBSDIST;
            vh.HAS_CST           = new_vh.HASCST;
            vh.CST_ID            = new_vh.CSTID;
            //vh.UPD_TIME = new_vh.UPDTIME;
            vh.VEHICLE_ACC_DIST = new_vh.VEHICLEACCDIST;
            vh.MANT_ACC_DIST    = new_vh.MANTACCDIST;
            //vh.MANT_DATE = new_vh.MANTDATE;
            vh.GRIP_COUNT      = new_vh.GRIPCOUNT;
            vh.GRIP_MANT_COUNT = new_vh.GRIPMANTCOUNT;
            //   vh.GRIP_MANT_DATE = new_vh.GRIPMANTDATE;
            //vh.NODE_ADR = new_vh.NODE_ADR;
            vh.IS_PARKING = new_vh.ISPARKING;
            //   vh.PARK_TIME = new_vh.PARKTIME;
            vh.PARK_ADR_ID = new_vh.PARKADRID;
            vh.IS_CYCLING  = new_vh.ISCYCLING;
            //  vh.CYCLERUN_TIME = new_vh.CYCLERUNTIME;
            vh.CYCLERUN_ID = new_vh.CYCLERUNID;

            vh.PredictPath  = new_vh.PredictPath.ToArray();
            vh.CyclingPath  = new_vh.CyclingPath.ToArray();
            vh.startAdr     = new_vh.StartAdr;
            vh.FromAdr      = new_vh.FromAdr;
            vh.ToAdr        = new_vh.ToAdr;
            vh.CMD_Priority = new_vh.CMDPRIOTITY;
            vh.CMD_CST_ID   = new_vh.CMDCSTID;
            vh.Speed        = new_vh.Speed;

            vh.ObsVehicleID        = new_vh.ObsVehicleID;
            vh.Alarms              = new_vh.Alarms.ToList();
            vh.CmdType             = (sc.E_CMD_TYPE)cmd_type;
            vh.vh_CMD_Status       = (sc.E_CMD_STATUS)cmd_status;
            vh.VhRecentTranEvent   = new_vh.VhRecentTranEvent;
            vh.WillPassSectionID   = new_vh.WillPassSectionID.ToList();
            vh.procProgress_Percen = new_vh.ProcProgressPercen;
            vh.State    = new_vh.State;
            vh.UPD_TIME = (new DateTime(1970, 1, 1, 0, 0, 0)).AddHours(8).AddSeconds(new_vh.UPDTIME.Seconds);
        }