我有一个循环,在其中我将纬度/经度点添加到polygonLines数组
var polygonlines = [];
for (var k = 0; k < lines.length; k++) {
var start = [Number(lines[k].start.lat), Number(lines[k].start.lng)];
var end = [Number(lines[k].end.lat), Number(lines[k].end.lng)];
polygonlines.push(new L.Geodesic([[start, end]], geodesicOptions));
}
我需要把多边形线数组转换成一个turf.polygon,我可以很容易地从一个JSON数据中获取turf.polygon的坐标
var turfPolygon = turf.polygon([[
json.data.features[0].geometry.coordinates
]], ...
如何从多边形线数组中获取JSON数据坐标?2或者我可以创建多边形线作为json数据并在循环中将这些线推到它上面吗?3我如何向json坐标中添加以前从未使用过json数据的项?
还是有更好的办法?
非常感谢您的光临
编辑:我希望能够把多边形线放入json...可能是这样的。所有的例子都有硬编码的值,但是我的值会通过用户交互而改变。
var geojsonPolygon =
{
"type": "geojson",
"data":
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [polygonlines]
}
}
}
我从来没有使用过json对象,所以不知道如何复制一个数组到坐标部分。
然后使用turf booleanIntersect,这需要“GeoJSON要素或几何”
1条答案
按热度按时间chhkpiq41#
因此,对于纬度/经度点,不要使用Geodesic,这样就可以了
然后
这将与本例中的poly 1匹配,它非常有用https://codesandbox.io/s/ripkk