Example #1
0
        public override void Notify(IState state)
        {
            CarBaseState mstate = (CarBaseState)state;

            switch (mstate.Name)
            {
            case "SAMPLE":

            case "IDLE":
                che.SetWeizhi(che.X, che.Y);
                break;

            //开始
            case "KS":
                ResetElements();
                break;

            //进库
            case "JK32":
                che.Speed = stateDuration[0];
                che.Moveto(290, 75, che.back);
                break;

            case "JK24":
                xian[6].Visable = false;
                che.JempStop();
                che.Speed = stateDuration[0];
                che.Moveto(220, 85, che.back);
                break;

            case "JK47":
                che.JempStop();
                che.Moveto(220, 140, che.back);
                break;

            case "JK74":
                che.Moveto(220, 170, che.back);
                break;

            case "JK77":
                break;

            case "JKL4":
                break;

            case "JK48":
                xian[6].Visable = true;
                che.JempStop();
                che.Moveto(220, 305, che.back);
                break;

            case "JK8TO":
                break;

            case "JKTO":
                break;

            //移库
            case "YK27":
                xian[1].Visable = false;
                che.JempStop();
                che.Moveto(260, 190, che.forward);
                break;

            case "YK771":
                che.JempStop();
                break;

            case "YK781":
                che.JempStop();
                che.Moveto(280, 305, che.back);
                break;

            case "YK88":
                che.JempStop();
                break;

            case "YK87":
                che.JempStop();
                che.Moveto(305, 190, che.forward);
                break;

            case "YK772":
                che.JempStop();
                break;

            case "YK782":
                che.JempStop();
                che.Moveto(305, 250, che.back);
                break;

            case "YKL2":
                break;

            case "YKH2":
                break;

            case "YKL28":
                xian[1].Visable = true;
                che.Moveto(305, 305, che.back);
                break;

            case "YKH28":
                che.Moveto(305, 305, che.back);
                break;

            //斜出库
            case "XCKH2":
                xian[1].Visable = false;
                xian[6].Visable = false;
                break;

            case "XCKL2":
                break;

            case "XCK74":
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(255, 190, che.forward);
                break;

            case "XCK41":
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(170, 75, che.forward);
                break;

            case "XCK14":
                break;

            case "XCK4E":
                che.JempStop();
                che.Speed = stateDuration[0];
                che.Moveto(50, 75, che.forward);
                break;

            case "XCKE":
                xian[1].Visable = true;
                xian[6].Visable = true;
                break;

            //倒库
            case "DK11":
                break;

            case "DK12":
                che.JempStop();
                che.Moveto(215, 75, che.back);
                break;

            case "DK24":
                xian[7].Visable = false;
                che.JempStop();
                che.Moveto(305, 85, che.back);
                break;

            case "DK47":
                che.JempStop();
                che.Moveto(305, 140, che.back);
                break;

            case "DK74":
                break;

            case "DK77":
                break;

            case "DKL4":
                break;

            case "DK48":
                che.JempStop();
                che.Moveto(305, 280, che.back);
                break;

            //出库
            case "CK84":
                che.JempStop();
                che.Moveto(305, 177, che.forward);
                break;

            case "CK44":
                che.JempStop();
                che.Moveto(325, 75, che.forward);
                break;

            case "CK34":
                break;

            case "CK43":
                che.JempStop();
                che.Moveto(445, 75, che.forward);
                break;

            case "CKE":
                xian[7].Visable = true;
                break;

            //结束
            case "JS":
                che.SetWeizhi(che.X, che.Y);
                break;
            }
        }
Example #2
0
        public override void Notify(IState state)
        {
            CarBaseState mstate = (CarBaseState)state;

            switch (mstate.Name)
            {
            case "SAMPLE":

            case "IDLE":
                che.SetWeizhi(che.X, che.Y);
                break;

            //¿ªÊ¼
            case "KS":
                ResetElements();
                break;

            //½ø¿â
            case "JK32":
                che.Speed = stateDuration[0];
                che.Moveto(290, 75, che.back);
                break;

            case "JK24":
                xian[6].Visable = false;
                che.JempStop();
                che.Speed = stateDuration[0];
                che.Moveto(220, 85, che.back);
                break;

            case "JK4":
                if (che.Destx == 220 && che.Desty == 85)
                {
                    che.JempStop();
                    che.Moveto(220, 170, che.back);
                }
                break;

            case "JKL4":
                break;

            case "JK4S":
                xian[6].Visable = true;
                if (che.Destx == 220 && che.Desty == 170)
                {
                    che.JempStop();
                    che.Moveto(220, 305, che.back);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "JKTO":
                che.Pause();
                break;

            //ÒÆ¿â
            case "YK1F":
                xian[1].Visable = false;
                if (che.Destx == 220 && che.Desty == 305)
                {
                    che.JempStop();
                    che.Moveto(260, 190, che.forward);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "YK1S":
                che.Pause();
                break;

            case "YK1B":
                if (che.Destx == 260 && che.Desty == 190)
                {
                    che.JempStop();
                    che.Moveto(280, 305, che.back);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "YK2S":
                che.Pause();
                break;

            case "YK2F":
                if (che.Destx == 280 && che.Desty == 305)
                {
                    che.JempStop();
                    che.Moveto(305, 190, che.forward);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "YK3S":
                che.Pause();
                break;

            case "YK2B":
                if (che.Destx == 305 && che.Desty == 190)
                {
                    che.JempStop();
                    che.Moveto(305, 305, che.back);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "YK4S":
                xian[1].Visable = true;
                che.Pause();
                break;

            //б³ö¿â
            case "XCK24":
                xian[1].Visable = false;
                xian[6].Visable = false;
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(255, 190, che.forward);
                break;

            case "XCK4":
                if (che.Destx == 255 && che.Desty == 190)
                {
                    che.JempStop();
                    che.Speed = stateDuration[1];
                    che.Moveto(170, 75, che.forward);
                }
                break;

            case "XCK14":
                break;

            case "XCKL4":
                break;

            case "XCK4S":
                if (che.Destx == 170 && che.Desty == 75)
                {
                    che.JempStop();
                    che.Speed = stateDuration[0];
                    che.Moveto(50, 75, che.forward);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "XCKE":
                che.Pause();
                xian[1].Visable = true;
                xian[6].Visable = true;
                break;

            //µ¹¿â
            case "DK12":
                che.JempStop();
                che.Moveto(215, 75, che.back);
                break;

            case "DK24":
                xian[7].Visable = false;
                che.JempStop();
                che.Moveto(305, 85, che.back);
                break;

            case "DK4":
                if (che.Destx == 305 && che.Desty == 85)
                {
                    che.JempStop();
                    che.Moveto(305, 140, che.back);
                }
                break;

            case "DKL4":
                break;

            case "DK4S":
                if (che.Destx == 305 && che.Desty == 140)
                {
                    che.JempStop();
                    che.Moveto(305, 280, che.back);
                }
                else
                {
                    che.UnPause();
                }
                break;

            case "DKTO":
                che.Pause();
                break;

            //³ö¿â
            case "CKF4":
                che.JempStop();
                che.Moveto(305, 177, che.forward);
                break;

            case "CK4":
                if (che.Destx == 305 && che.Desty == 177)
                {
                    che.JempStop();
                    che.Moveto(325, 75, che.forward);
                }
                break;

            case "CKL4":
                break;

            case "CK4S":
                che.JempStop();
                che.Moveto(445, 75, che.forward);
                break;

            //½áÊø
            case "JS":
                che.SetWeizhi(che.X, che.Y);
                break;
            }
        }
Example #3
0
        public override void Notify(IState state)
        {
            CarBaseState mstate = (CarBaseState)state;

            switch (mstate.Name)
            {
            case "SAMPLE":

            case "IDLE":
                che.SetWeizhi(che.X, che.Y);
                break;

            //开始
            case "KS":
                ResetElements();
                //车初始位置(80, 215)
                break;

            //前进
            case "F1":
                che.Speed = stateDuration[0];
                che.Moveto(140, 215, che.forward);
                break;

            case "F2":
                che.JempStop();
                che.Moveto(185, 215, che.forward);
                break;

            case "F3":
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(185, 195, che.forward);
                break;

            case "F4":
                che.JempStop();
                che.Speed = stateDuration[2];
                che.Moveto(260, 180, che.forward);
                break;

            case "F5":
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(380, 145, che.forward);
                break;

            case "F6":
                che.JempStop();
                che.Moveto(335, 145, che.forward);
                break;

            case "F7":
                che.JempStop();
                che.Speed = stateDuration[0];
                che.Moveto(425, 145, che.forward);
                break;

            case "F8":
                che.JempStop();
                che.Moveto(440, 145, che.forward);
                break;

            case "FB":
                che.JempStop();
                break;

            //后退
            case "B1":
                che.JempStop();
                che.Speed = stateDuration[0];
                che.Moveto(380, 145, che.back);
                break;

            case "B2":
                che.JempStop();
                che.Moveto(335, 145, che.back);
                break;

            case "B3":
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(335, 160, che.back);
                break;

            case "B4":
                che.JempStop();
                che.Speed = stateDuration[2];
                che.Moveto(260, 180, che.back);
                break;

            case "B5":
                che.JempStop();
                che.Speed = stateDuration[1];
                che.Moveto(175, 205, che.back);
                break;

            case "B6":
                che.JempStop();
                che.Moveto(185, 215, che.back);
                break;

            case "B7":
                che.Speed = stateDuration[0];
                che.Moveto(140, 215, che.back);
                break;

            case "B8":
                che.Moveto(80, 215, che.back);
                break;

            //结束
            case "JS":
                che.SetWeizhi(che.X, che.Y);
                break;
            }
        }