Skip to content

Commit f55308f

Browse files
committed
修复leaflet最短路径查询显示确实的examples
1 parent 4bbc32d commit f55308f

File tree

1 file changed

+78
-70
lines changed

1 file changed

+78
-70
lines changed
Lines changed: 78 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -1,83 +1,91 @@
11
<!DOCTYPE html>
22
<html>
3+
34
<head>
45
<meta charset="UTF-8">
56
<title data-i18n="resources.title_findPath">网络分析服务-最佳路径分析</title>
67
<script type="text/javascript" src="../js/include-web.js"></script>
78
</head>
9+
810
<body style=" margin: 0;overflow: hidden;background: #fff;width: 100%;height:100%;position: absolute;top: 0;">
9-
<div id="map" style="margin:0 auto;width: 100%;height: 100%"></div>
10-
<script type="text/javascript" src="../../dist/include-leaflet.js"></script>
11-
<script type="text/javascript">
12-
var host = window.isLocal ? window.server : "http://support.supermap.com.cn:8090";
13-
var map, findPathService, findPathParameter,
14-
baseUrl = host + "/iserver/services/map-changchun/rest/maps/长春市区图",
15-
serviceUrl = host + "/iserver/services/transportationanalyst-sample/rest/networkanalyst/RoadNet@Changchun";
16-
//最佳路径分析必须按照指定顺序对站点进行访问
17-
map = L.map('map', {
18-
crs: L.CRS.NonEarthCRS({
19-
bounds: L.bounds([48.4, -7668.25], [8958.85, -55.58]),
20-
origin: L.point(48.4, -55.58)
21-
}),
22-
center: [-3600, 5000],
23-
maxZoom: 18,
24-
zoom: 2
25-
});
26-
L.supermap.tiledMapLayer(baseUrl, {noWrap: true})
27-
.addTo(map)
28-
.once("load", function () {
29-
findPathProcess();
11+
<div id="map" style="margin:0 auto;width: 100%;height: 100%"></div>
12+
<script type="text/javascript" src="../../dist/include-leaflet.js"></script>
13+
<script type="text/javascript">
14+
var host = window.isLocal ? window.server : "http://support.supermap.com.cn:8090";
15+
var map, findPathService, findPathParameter,
16+
baseUrl = host + "/iserver/services/map-changchun/rest/maps/长春市区图",
17+
serviceUrl = host + "/iserver/services/transportationanalyst-sample/rest/networkanalyst/RoadNet@Changchun";
18+
//最佳路径分析必须按照指定顺序对站点进行访问
19+
map = L.map('map', {
20+
crs: L.CRS.NonEarthCRS({
21+
bounds: L.bounds([48.4, -7668.25], [8958.85, -55.58]),
22+
origin: L.point(48.4, -55.58)
23+
}),
24+
center: [-3600, 5000],
25+
maxZoom: 18,
26+
zoom: 2
3027
});
28+
L.supermap.tiledMapLayer(baseUrl, { noWrap: true })
29+
.addTo(map)
30+
.once("load", function () {
31+
findPathProcess();
32+
});
3133

32-
function findPathProcess() {
33-
//添加站点
34-
var marker1 = L.marker([-3000, 4000]).addTo(map);
35-
marker1.bindPopup(resources.text_site1);
36-
var marker2 = L.marker([-2500, 5500]).addTo(map);
37-
marker2.bindPopup(resources.text_site2);
38-
var marker3 = L.marker([-4000, 6900]).addTo(map);
39-
marker3.bindPopup(resources.text_site3);
34+
function findPathProcess() {
35+
//添加站点
36+
var marker1 = L.marker([-3000, 4000]).addTo(map);
37+
marker1.bindPopup(resources.text_site1);
38+
var marker2 = L.marker([-2500, 5500]).addTo(map);
39+
marker2.bindPopup(resources.text_site2);
40+
var marker3 = L.marker([-4000, 6900]).addTo(map);
41+
marker3.bindPopup(resources.text_site3);
4042

41-
//创建最佳路径分析服务实例
42-
findPathService = L.supermap.networkAnalystService(serviceUrl);
43-
//创建最佳路径分析参数实例
44-
var resultSetting = new SuperMap.TransportationAnalystResultSetting({
45-
returnEdgeFeatures: true,
46-
returnEdgeGeometry: true,
47-
returnEdgeIDs: true,
48-
returnNodeFeatures: true,
49-
returnNodeGeometry: true,
50-
returnNodeIDs: true,
51-
returnPathGuides: true,
52-
returnRoutes: true
53-
});
54-
var analystParameter = new SuperMap.TransportationAnalystParameter({
55-
resultSetting: resultSetting,
56-
weightFieldName: "length"
57-
});
58-
findPathParameter = new SuperMap.FindPathParameters({
59-
isAnalyzeById: false,
60-
nodes: [L.latLng(-3000, 4000), L.latLng(-2500, 5500), L.latLng(-4000, 6900)],
61-
hasLeastEdgeCount: false,
62-
parameter: analystParameter
63-
});
64-
var myIcon = L.icon({
65-
iconUrl: "../img/walk.png",
66-
iconSize: [20, 20]
67-
});
68-
//进行查找
69-
findPathService.findPath(findPathParameter, function (serviceResult) {
70-
var result = serviceResult.result;
71-
result.pathList.map(function (result) {
72-
L.polyline(result.route).addTo(map);
73-
L.geoJSON(result.pathGuideItems, {
74-
pointToLayer: function (geoPoints, latlng) {
75-
L.marker(latlng, {icon: myIcon}).addTo(map);
76-
}
77-
}).addTo(map);
78-
})
79-
});
80-
}
81-
</script>
43+
//创建最佳路径分析服务实例
44+
findPathService = L.supermap.networkAnalystService(serviceUrl);
45+
//创建最佳路径分析参数实例
46+
var resultSetting = new SuperMap.TransportationAnalystResultSetting({
47+
returnEdgeFeatures: true,
48+
returnEdgeGeometry: true,
49+
returnEdgeIDs: true,
50+
returnNodeFeatures: true,
51+
returnNodeGeometry: true,
52+
returnNodeIDs: true,
53+
returnPathGuides: true,
54+
returnRoutes: true
55+
});
56+
var analystParameter = new SuperMap.TransportationAnalystParameter({
57+
resultSetting: resultSetting,
58+
weightFieldName: "length"
59+
});
60+
findPathParameter = new SuperMap.FindPathParameters({
61+
isAnalyzeById: false,
62+
nodes: [L.point(4000, -3000), L.point(5500, -2500), L.point(6900, -4000)],
63+
parameter: analystParameter
64+
});
65+
var myIcon = L.icon({
66+
iconUrl: "../img/walk.png",
67+
iconSize: [20, 20]
68+
});
69+
//进行查找
70+
findPathService.findPath(findPathParameter, function (serviceResult) {
71+
var result = serviceResult.result;
72+
result.pathList.map(function (result) {
73+
L.geoJSON(result.route).addTo(map);
74+
L.geoJSON(result.pathGuideItems, {
75+
pointToLayer: function (geoPoints, latlng) {
76+
L.marker(latlng, { icon: myIcon }).addTo(map);
77+
},
78+
filter: function (geoJsonFeature) {
79+
if (geoJsonFeature.geometry && geoJsonFeature.geometry.type === 'Point') {
80+
return true;
81+
}
82+
return false;
83+
}
84+
}).addTo(map);
85+
})
86+
});
87+
}
88+
</script>
8289
</body>
90+
8391
</html>

0 commit comments

Comments
 (0)