From 3209b7899f99fbc567c24be9709ba289f33ea73b Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 30 十二月 2024 16:46:05 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java | 32 ++++++++++++-------------------- 1 files changed, 12 insertions(+), 20 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java index a6cc742..1b3014d 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java @@ -62,7 +62,6 @@ // System.out.println("AStart spend time: " + (System.currentTimeMillis() - startTime)); if (null == finishNode) { - log.warn("{} 鍙稟GV妫�绱{}] ===>> [{}]璺緞澶辫触......", agvNo, startCode.getData(), endCode.getData()); return new ArrayList<>(); } @@ -206,18 +205,17 @@ 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; } +// if (i == codeMatrixIdx[0] && j == codeMatrixIdx[1]) { continue; } DynamicNode node = dynamicMatrix[i][j]; if (node.getVehicle().equals(agvNo)) { - if (node.getSerial() < serial || node.getTime() != time) { + if (node.getSerial() < serial) { resetCodeList.add(codeMatrix[i][j]); } } @@ -307,26 +305,20 @@ existNodes.add(nextNode); - String nextNodeCodeData = codeMatrix[x][y]; - if (nextNodeCodeData.equals(CodeNodeType.NONE.val)) { + List<Double> o1Cda = MapDataUtils.parseCdaNode(cdaMatrix[originNode.getX()][originNode.getY()]); + List<Double> o2Cda = MapDataUtils.parseCdaNode(cdaMatrix[x][y]); + + if (Math.pow(o1Cda.get(0) - o2Cda.get(0), 2) + Math.pow(o1Cda.get(1) - o2Cda.get(1), 2) <= Math.pow(radiusLen, 2)) { + nextNode.setCodeData(codeMatrix[x][y]); + + if (!nextNode.getCodeData().equals(CodeNodeType.NONE.val)) { + includeList.add(nextNode); + } this.spreadWaveNode(originNode, nextNode, codeMatrix, cdaMatrix, radiusLen, includeList, existNodes); - - } else { - - List<Double> o1Cda = MapDataUtils.parseCdaNode(cdaMatrix[originNode.getX()][originNode.getY()]); - List<Double> o2Cda = MapDataUtils.parseCdaNode(cdaMatrix[nextNode.getX()][nextNode.getY()]); - -// if (Math.pow(o1.getX() - o2.getX(), 2) + Math.pow(o1.getY() - o2.getY(), 2) <= Math.pow(radiusLen, 2)) { - if (Math.pow(o1Cda.get(0) - o2Cda.get(0), 2) + Math.pow(o1Cda.get(1) - o2Cda.get(1), 2) <= Math.pow(radiusLen, 2)) { - nextNode.setCodeData(nextNodeCodeData); - includeList.add(nextNode); - - this.spreadWaveNode(originNode, nextNode, codeMatrix, cdaMatrix, radiusLen, includeList, existNodes); - - } } + } // v2 BFS ------------------------------------------------------------------------------ -- Gitblit v1.9.1