我使用了new L.GeometryUtil.geodesicArea(polygon)
但是返回的只是一个空对象
计算不出面积
请问 "leaflet": "^1.7.1",有测面积的api的吗?
我看官网文档,并没有找到
formatArea(polygon) {
console.log(polygon, 'polygon')
// L.GeometryUtil.geodesicArea(),返回number类型的数据,单位是平方米,这里做了一下转化
let seeArea = new L.GeometryUtil.geodesicArea(polygon)
console.log(seeArea, 'sss')
let area = (seeArea / 10e5).toFixed(2) + 'k㎡'
return area
},
望采纳!点击该回答右侧的“采纳”按钮即可采纳!!!
有的!!Leaflet 中有一个插件叫做 Leaflet.GeometryUtil,它可以用来计算几何图形的面积。你可以使用以下代码来计算多边形的面积:
var polygon = L.polygon(latlngs);
var area = L.GeometryUtil.geodesicArea(polygon);
其中,latlngs 是一个包含多边形各个顶点经纬度的数组,例如:
var latlngs = [
[45.51, -122.68],
[37.77, -122.43],
[34.04, -118.2]
];
需要注意的是,Leaflet.GeometryUtil.geodesicArea() 返回的是多边形的球面面积,也就是将地球当成一个完美的球体来计算的结果。