Openlayers几何如何计算面积从平方公里到平方公里?

时间:2011-05-13 08:18:03

标签: geometry transform openlayers map-projections

我从webservice获得multypoligon,并尝试使用以下代码计算该poligon的区域:

var poly = new OpenLayers.Geometry.MultiPolygon(poligon);
var area = geom.getArea();

但是以平方度返回我的面积,我们的预测是EPSG:3243我试图使用功能

OpenLayers.Layer.SphericalMercator.forwardMercator

但这对我没有帮助,是否有其他解决方案或其他提示?

干杯!

1 个答案:

答案 0 :(得分:0)

您应该使用GeodesicArea()函数并提供投影以防止默认WGS84:

http://dev.openlayers.org/docs/files/OpenLayers/Geometry/Polygon-js.html#OpenLayers.Geometry.Polygon.getGeodesicArea

getGeodesicArea: function( projection )

类似的东西:

var projection = new OpenLayers.Projection("EPSG:3243");
var poly = new OpenLayers.Geometry.MultiPolygon(poligon);
var area = poly.getGeodesicArea( projection );