|  |  |  | 
|---|
|  |  |  | import com.zy.common.model.NavigateNode; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.ArrayList; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.PriorityQueue; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | this.map = data; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public NavigateSolution(String mapType) { | 
|---|
|  |  |  | //载入地图 | 
|---|
|  |  |  | NavigateMapData mapData = new NavigateMapData(); | 
|---|
|  |  |  | int[][] data = mapData.getData(mapType); | 
|---|
|  |  |  | public NavigateSolution(Integer mapType, Integer lev, List<int[]> whitePoints, List<int[]> shuttlePoints) { | 
|---|
|  |  |  | //载入地图指定层高地图 | 
|---|
|  |  |  | NavigateMapData mapData = new NavigateMapData(lev); | 
|---|
|  |  |  | int[][] data = mapData.getDataFromRedis(mapType, whitePoints, shuttlePoints); | 
|---|
|  |  |  | if (data == null) { | 
|---|
|  |  |  | data = mapData.getData(mapType, whitePoints, shuttlePoints); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.map = data; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (map[x][y] == 0 || map[x][y] == 3) { | 
|---|
|  |  |  | //子轨和母轨才能进行上下移动 | 
|---|
|  |  |  | if (map[x][y] == 0 || map[x][y] == 3 || map[x][y] == 4 || map[x][y] == 5) { | 
|---|
|  |  |  | //子轨和母轨、输送线、充电桩才能进行上下移动 | 
|---|
|  |  |  | if (is_valid(x + 1, y)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | NavigateNode node = new NavigateNode(x + 1, y); | 
|---|