使用数组 JavaScript 优化坐标数据收集
Optimise Coordinate Data Collection using array JavaScript
目前我在 routea、routeb、routec 等中存储不同的路由。
我想将它们全部收集到一条路线和一组两个嵌套的 for 循环中以生成折线。
目前,我正在使用蛮力,所以
...
for (var i = 0, latlng1= [], len1 = routea.length; i < len1; i++) {
latlng1.push(new L.LatLng(routea[i][0], routea[i][1]));
}
for (var i = 0, latlng2 = [], len2 = routeb.length; i < len2; i++) {
latlng2.push(new L.LatLng(routeb[i][0], routeb[i][1]));}
我嵌套循环的尝试是
route = [routea, routeb, routec];
for (var j = 0, lena = route; j < lena; j++) {
for (var i = 0, latlng1= [], len = route[j].length; i < len; i++) {
latlng.push(new L.LatLng(route[i][0], route[i][1]));
}
var pathmat = L.featureGroup ([L.polyline(latlng1[j])]);
}
但是我收到以下错误
未捕获的类型错误:无法读取未定义的 属性 '_leaflet_id'
在 Object.stamp
无需循环遍历 routea、routeb... 表。您可以仅使用坐标数组构建多段线:
var route = [routea, routeb, routec];
var polylines = [];
for (var j = 0; j < route.length; j++) {
polylines.push(L.polyline(route[j]);
}
然后用折线做任何你想做的事。如果您想将它们全部放在一个功能组中:
var fg = L.featureGroup(polylines);
目前我在 routea、routeb、routec 等中存储不同的路由。 我想将它们全部收集到一条路线和一组两个嵌套的 for 循环中以生成折线。 目前,我正在使用蛮力,所以 ...
for (var i = 0, latlng1= [], len1 = routea.length; i < len1; i++) {
latlng1.push(new L.LatLng(routea[i][0], routea[i][1]));
}
for (var i = 0, latlng2 = [], len2 = routeb.length; i < len2; i++) {
latlng2.push(new L.LatLng(routeb[i][0], routeb[i][1]));}
我嵌套循环的尝试是
route = [routea, routeb, routec];
for (var j = 0, lena = route; j < lena; j++) {
for (var i = 0, latlng1= [], len = route[j].length; i < len; i++) {
latlng.push(new L.LatLng(route[i][0], route[i][1]));
}
var pathmat = L.featureGroup ([L.polyline(latlng1[j])]);
}
但是我收到以下错误 未捕获的类型错误:无法读取未定义的 属性 '_leaflet_id' 在 Object.stamp
无需循环遍历 routea、routeb... 表。您可以仅使用坐标数组构建多段线:
var route = [routea, routeb, routec];
var polylines = [];
for (var j = 0; j < route.length; j++) {
polylines.push(L.polyline(route[j]);
}
然后用折线做任何你想做的事。如果您想将它们全部放在一个功能组中:
var fg = L.featureGroup(polylines);