/// <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; }
/// <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; }