| | |
| | | NavigateNode startNode = new NavigateNode(startMapIdx[0], startMapIdx[1], startCode.getData()); |
| | | NavigateNode endNode = new NavigateNode(endMapIdx[0], endMapIdx[1], endCode.getData()); |
| | | |
| | | long startTime = System.currentTimeMillis(); |
| | | NavigateNode finishNode = aStarNavigateService.execute(agvNo, startNode, endNode, lock, blackList, segment); |
| | | // System.out.println("AStart spend time: " + (System.currentTimeMillis() - startTime)); |
| | | |
| | | if (null == finishNode) { |
| | | log.warn("{} 号AGV检索[{}] ===>> [{}]路径失败......", agvNo, startCode.getData(), endCode.getData()); |
| | |
| | | |
| | | |
| | | Integer serial = dynamicNode.getSerial(); |
| | | long time = dynamicNode.getTime(); |
| | | |
| | | List<String> resetCodeList = new ArrayList<>(); |
| | | |
| | | for (int i = 0; i < dynamicMatrix.length; i++) { |
| | | for (int j = 0; j < dynamicMatrix[i].length; j++) { |
| | | |
| | | if (i == codeMatrixIdx[0] && j == codeMatrixIdx[1]) { continue; } |
| | | |
| | | DynamicNode node = dynamicMatrix[i][j]; |
| | | if (node.getVehicle().equals(agvNo) && node.getSerial() < serial) { |
| | | resetCodeList.add(codeMatrix[i][j]); |
| | | if (node.getVehicle().equals(agvNo)) { |
| | | if (node.getSerial() < serial || node.getTime() != time) { |
| | | resetCodeList.add(codeMatrix[i][j]); |
| | | } |
| | | } |
| | | } |
| | | } |