| | |
| | | * @param startPoint 起点(小车当前位置) |
| | | * @param targetPoint 目标点(货物目标位置) |
| | | */ |
| | | public static NyShuttleOperaResult getShuttleTransportCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint) { |
| | | public static synchronized NyShuttleOperaResult getShuttleTransportCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint) { |
| | | //行走路径 |
| | | ArrayList<NavigateNode> nodes = new ArrayList<>(); |
| | | //命令集合 |
| | |
| | | * @param middlePoint 中间点(货物位置) |
| | | * @param targetPoint 目标点(货物目标位置) |
| | | */ |
| | | public static NyShuttleOperaResult getShuttleTransportCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String middlePoint, String targetPoint) { |
| | | public static synchronized NyShuttleOperaResult getShuttleTransportCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String middlePoint, String targetPoint) { |
| | | //行走路径 |
| | | ArrayList<NavigateNode> nodes = new ArrayList<>(); |
| | | //命令集合 |
| | |
| | | /** |
| | | * 获取起点到目标点行走命令 |
| | | */ |
| | | public static NyShuttleOperaResult getStartToTargetCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint, Integer mapType) { |
| | | public static synchronized NyShuttleOperaResult getStartToTargetCommands(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint, Integer mapType) { |
| | | NavigateMapUtils navigateMapUtils = SpringUtils.getBean(NavigateMapUtils.class); |
| | | //计算起点到目标点行走节点 |
| | | List<NavigateNode> calc = NavigateUtils.calc(startPoint, targetPoint, mapType, Utils.getShuttlePoints(shuttleNo, Utils.getLev(startPoint)), null); |
| | |
| | | allNode.addAll(nodes); |
| | | } |
| | | |
| | | boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), allNode, true);//锁定路径 |
| | | boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), shuttleNo, allNode, true);//锁定路径 |
| | | if (!result) { |
| | | return null;//路径锁定失败 |
| | | } |
| | |
| | | /** |
| | | * 获取起点到目标点行走命令(可传白名单) |
| | | */ |
| | | public static NyShuttleOperaResult getStartToTargetCommandsByWhites(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint, Integer mapType, List<int[]> whites) { |
| | | public static synchronized NyShuttleOperaResult getStartToTargetCommandsByWhites(Integer shuttleNo, Integer wrkNo, String startPoint, String targetPoint, Integer mapType, List<int[]> whites) { |
| | | NavigateMapUtils navigateMapUtils = SpringUtils.getBean(NavigateMapUtils.class); |
| | | //计算起点到目标点行走节点 |
| | | List<NavigateNode> calc = NavigateUtils.calc(startPoint, targetPoint, mapType, Utils.getShuttlePoints(shuttleNo, Utils.getLev(startPoint)), whites); |
| | |
| | | nodes.add(node); |
| | | } |
| | | } |
| | | boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), nodes, true);//锁定路径 |
| | | boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), shuttleNo, nodes, true);//锁定路径 |
| | | if (!result) { |
| | | return null;//路径锁定失败 |
| | | } |