Ejemplo n.º 1
0
        /// <summary>
        /// 计算任务路径
        /// </summary>
        /// <param name="cmdId">任务ID</param>
        /// <returns></returns>
        public bool CalcRoute(string cmdId)
        {
            //设置任务参数
            InitParameter(cmdId);

            Cell c = _Cells[_currentNum] as Cell;//起始位置

            //获取从小车当前位置到A点的路径
            // string route = c.GetRoute(_fromNum);

            //获取路径
            string r = c.GetRoute(_toNum);//以结束位置信息为参数获取路径

            if (r.IndexOf("NoRoute") != -1)
                return false;

            //SaveRoute(cmdId,route);

            SaveRoute(cmdId, r);

            CmdBreak cb = new CmdBreak();
            InitCmdBreak(cb, cmdId);
            bool b = cb.RouteBreak();

            //SetRoadRight();

            return b;

        }
Ejemplo n.º 2
0
        /// <summary>
        /// 任务分解初始化参数
        /// </summary>
        /// <param name="c"></param>
        /// <param name="cmdId"></param>

        public void InitCmdBreak(CmdBreak c, string cmdId)
        {
            c.CmdId = cmdId;
            c.Xnum = _cXnum;
            c.Ynum = _cYnum;
            c.FloorNum = _cFloor;
            c.CellNum = _currentNum;
            c.Rack = _rack;
            c.TaskType = _taskType;

            c.XF = _xf;
            c.XB = _xb;
            c.YF = _yf;
            c.YB = _yb;
            c.MACADRESS = _macAdress;
        }