2

Webサービスからマルチポリゴンを取得し、次のコードを使用してそのポリゴンの面積を計算しようとします。

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

しかし、それは私に平方度で面積を返します、私たちの投影はEPSG:3243です私は関数を使おうとしました

OpenLayers.Layer.SphericalMercator.forwardMercator

しかし、それは私を大いに助けませんでした、他の解決策または他のヒントはありますか?

乾杯!

4

1 に答える 1

0

デフォルトの WGS84 を防ぐには、 GeodesicArea() 関数を使用して投影をフィードする必要があります。

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 );
于 2012-11-27T15:36:07.710 に答える