Hi Phil. Thank you for your answer. I've run this PostGIS code of yours:
*SELECT ST_Area(the_geog, true) As sqm_spheroid* *FROM (SELECT* * geography(* * ST_GeomFromText('POLYGON((50 0,-60 -5, -30 -30,50 0))', 4236)* * )* *) As x(the_geog);* And I get this error: *ERROR: ptarray_area_spheroid: cannot handle ptarray that crosses equator* *********** Error *********** *ERROR: ptarray_area_spheroid: cannot handle ptarray that crosses equator* *SQL state: XX000* In my 2nd attempt, I tried changing the flag to false and it ran succesfully. *SELECT ST_Area(the_geog, false) As sqm_spheroid* *FROM (SELECT* * geography(* * ST_GeomFromText('POLYGON((50 0,-60 -5, -30 -30,50 0))', 4236)* * )* *) As x(the_geog);* But I still got the value *19582793771831* square meters, in opposition to the result *17050040174394.607* square meters obtained with getGeodesicArea. In a 3rd attempt, to find a good result, I changed the flag back to true and I tried new coordinates, in order to avoid crossing the equator, thus avoiding the error shown in the 1st attempt. *SELECT ST_Area(the_geog, true) As sqm_spheroid* *FROM (SELECT* * geography(* * ST_GeomFromText('POLYGON((50 1, -60 1, -30 30, 50 1))', 4236)* * )* *) As x(the_geog);* Here I get *22380590293551.1* square meters, but using the same coordinates, I get *18843774494021.53* square meters using getGeodesicArea. I'm sure OpenLayers works fine, but I have to do some unit tests, ans as you may understand, I have to compare the OpenLayers result with something else. *Note*: I compares getLength with PostGIS and it worked just fine. I'll try to reproduce my OpenLayers code, and respect the work secrecy at the same time. I'll send you a JSFiddle as soon as I've reproduced it. I hope you can help me with this. Thanks a lot. João Rodrigues
_______________________________________________ Users mailing list us...@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/openlayers-users