我正在尝试绘制多边形的面积。但我得到的面积比他们应该的面积大了大约50%。
draw.on('drawend', funciton(e){
var geom = e.feature.getGeometry();
if(drawType === 'Polygon'){
var rawArea = geom.getArea();
var cleanArea = rawArea / 10000; // Convert to hectares
}
});下面是一些例子:
发布于 2015-06-16 18:00:02
在测地测量选项的测量示例中,看看它是如何完成的:http://openlayers.org/en/v3.6.0/examples/measure.html
var sourceProj = map.getView().getProjection();
var geom = /** @type {ol.geom.Polygon} */(polygon.clone().transform(
sourceProj, 'EPSG:4326'));
var coordinates = geom.getLinearRing(0).getCoordinates();
area = Math.abs(wgs84Sphere.geodesicArea(coordinates));发布于 2015-06-25 12:24:04
getArea和getLength迫切需要他们的文档更新来解释,他们没有给出正常单位的Web地图的答案。
参见这里的https://github.com/openlayers/ol3/pull/3609和https://github.com/openlayers/ol3/issues/3533
设置圆的半径也有类似的问题。
https://stackoverflow.com/questions/30874266
复制相似问题