javascript::如何使用数组中的javascript变量在传单上绘制多边形
javascript::how to use javascript variable in array to draw polygon on leaflet
我正在使用ans
值绘制多边形。但是它不画任何多边形。如果我直接把CCD_ 2的值放进去。
我的问题是如何在L.polygon方法中使用ans
值
var a = g_cord.split(":"); //g_cord= 28.40106, 77.31231: 28.40129, 77.31231: 28.40129, 77.31269: 28.40106, 77.31269
var ans="";
for(var k=0;k<a.length;k++){
ans="["+a[k]+"]," +ans;
}
alert(ans); //[ 28.40106, 77.31269 ],[ 28.40129, 77.31269],[ 28.40129, 77.31231],[ 28.40106, 77.31231],
window['polygon'+id] = new L.polygon([ans],{color:"#738DEA",weight:4});
window['polygon'+id].bindPopup(""+g_name);
map.fitBounds(window['polygon'+id].getBounds());
document.getElementById("_"+id).checked = true;
group.addLayer(window['polygon'+id]);
假设g_cord包含类似"28.40106、77.31269:28.40129、77.31269"等内容,那么我认为您需要执行类似操作:
var a = g_cord.split(":");
var ans = [];
for(var k=0;k<a.length;k++){
var latLong = a[k].split(",");
ans.push([ parseFloat(latLong[0]), parseFloat(latLong[1]) ]);
}
这将在逗号上拆分每个lat-long对,并将每个对解析为float。这似乎是Leafly的Polygon构造函数所需的数据结构。
在这种情况下,ans
不是数组,而是字符串
你需要
var ans= [];
for(var k=0;k<a.length;k++){
ans.push(a[k]); // if a[k] also is a string then you may have to convert it into an array by splitting it like a[k].split(',')
}
alert(ans);
相关文章:
- Javascript绘制画布内存泄漏
- 我可以将javascript绘制函数更改为图像吗
- 如何在不使用外部库的情况下使用 JavaScript 绘制折线图
- Javascript绘制画布
- 用HTML5和Javascript绘制图像
- 使用javascript绘制HTML5画布的线条不起作用
- 使用javascript绘制多个以数组元素为文本中心的圆
- 使用 HTML 和 JavaScript 绘制表格
- 使用 SVG 和 Javascript 绘制 windBarbs
- 将用Javascript绘制的外部SVG文件导出为PNG图像
- SVG 圆圈不是用 JavaScript 绘制的
- 在表中使用 javascript 绘制到画布
- 谷歌地图JavaScript绘制折线
- 使用 JavaScript 绘制到 HTML5 画布时调整.png图像的大小
- HTML5:在通过 JavaScript 绘制后将透明度应用于 Canvas
- img通过更改它的src,并由动态提供的源代码(MySQL和PHP)使用Javascript绘制
- 用javascript绘制SysML/UML图
- 纯Javascript绘制三角形,定位斜边
- 您可以在不使用javascript绘制到画布的情况下获取原始图像数据吗
- 如何使用CSS和JavaScript绘制正态分布曲线(Bell曲线)