| | |
| | | return findTargetLocation(endPath); |
| | | } |
| | | |
| | | public String calcFirstLocation(String startPoint, String endPoint, List<NavigationMapType> mapTypes, List<int[]> shuttlePoints, List<int[]> whites, int firstPathNumber) { |
| | | //计算路径 |
| | | List<NavigateNode> navigateNodes = calc(startPoint, endPoint, mapTypes, shuttlePoints, whites); |
| | | if (navigateNodes == null) { |
| | | News.error("{} dash {} can't find navigate path!", startPoint, endPoint); |
| | | return null; |
| | | } |
| | | |
| | | //获取分段路径 |
| | | List<List<NavigateNode>> partList = this.getSectionPath(navigateNodes); |
| | | List<NavigateNode> firstList = partList.get(0); |
| | | |
| | | NavigateNode targetNode = null; |
| | | if(firstList.size() <= firstPathNumber){ |
| | | targetNode = firstList.get(firstList.size() - 1); |
| | | }else { |
| | | targetNode = firstList.get(firstPathNumber); |
| | | } |
| | | |
| | | String locNo = NavigatePositionConvert.nodeToLocNo(targetNode); |
| | | return locNo; |
| | | } |
| | | |
| | | public String findTargetLocation(List<List<NavigateNode>> partList) { |
| | | List<NavigateNode> nodes = partList.get(partList.size() - 1); |
| | | NavigateNode targetNode = nodes.get(0); |