4

I am trying to implement a measuring tool on apple maps for IPAD. As a part of that i collect all the touch points on the map into an array and constructing a geometry object from that and then calculating the length and area of the geometry using Spatialite.

Now my problem is that i am getting the length calculated correctly but the area is not calculated correctly

Below is the query for calculating length of geometry

SELECT Length(Transform(GeomFromText('POLYGON((32.653995 39.754341,32.654217 39.754127,32.653842 39.753991,32.653647 39.754207,32.653995 39.754341))',4326),3857))

Expected value is around 131 and Query result is 132.

Below is the query for calculating area of geometry.

SELECT Area(Transform(GeomFromText('POLYGON((32.653995 39.754341,32.654217 39.754127,32.653842 39.753991,32.653647 39.754207,32.653995 39.754341))',4326),3857))

Expected value is around 1020 Sqm but Query result is 1706 Sqm.

Note: all points are geo referenced to Turkey region

Why is this happening?

2
  • 4
    Web mercator (3857) doesn't preserve areas. Mercator designed his projection for navigators, so it preserves angles. You need a different projection.
    – BradHards
    Mar 4, 2014 at 6:02
  • Thanks it worked when i tried with EPSG:2321 (Projected crs for Turkey) instead of 3857.
    – venkat530
    Mar 4, 2014 at 6:24

1 Answer 1

1

Solved the problem by re projecting the coordinates from 4326 to 2321 (projected crs for Turkey region) instead of 3857.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.