[postgis-users] question on returning area size using st_area.

Burgholzer,Robert rwburgholzer at deq.virginia.gov
Mon May 5 12:02:25 PDT 2008


Stephen,

This is a classic, and I think it must be in some FAQ some where.  The
only way I have done it is to re-project using the transform function to
something whose units are in meters, since the 4326 SRID has distance
units in meters.  Thus, something like the following:

 

SELECT st_area(transform(the_geom, 26918)) / 10000 as hectares 

FROM mal_state

WHERE name = 'KELANTAN'

 

 

Now, in this example, I have chosen SRID 26918, which off the top of my
head is like NAD 1983, UTM Zone 17.  This is a fairly appropriate
projection for my area (eastern US), however, I don't know enough about
projections to say without reservation that you could use any old
projection without concerning yourself with whether or not the
projection you use is valid in the area that you are operating on in DD.

 

If anyone else has better, more comprehensive insight on this, I for one
would like to hear about it, 

 

 

Robert W. Burgholzer

Surface Water Modeler

Office of Water Supply and Planning

Virginia Department of Environmental Quality

rwburgholzer at deq.virginia.gov

804-698-4405

Open Source Modeling Tools:

http://sourceforge.net/projects/npsource/

 

 

-----Original Message-----
From: postgis-users-bounces at postgis.refractions.net
[mailto:postgis-users-bounces at postgis.refractions.net] On Behalf Of
Stephen Lee
Sent: Monday, May 05, 2008 2:27 PM
To: postgis-users at postgis.refractions.net
Subject: [postgis-users] question on returning area size using st_area.

 

hi there,

i've just started using postgis, i have loaded a sample map of malaysia
using the following command:

F:\PROGRA~1\PostgreSQL\8.3\bin>shp2pgsql -c -s 4326
G:\Maps\Malaysia\Detailsmaps\state_region public.mal_state > state.sql

Shapefile type: Polygon
Postgis type: MULTIPOLYGON[2]

the projection file in the prj is as follow so I assume the SRID is 4326
:

GEOGCS["Lat Long
WGS84",DATUM["D_WGS84",SPHEROID["World_Geodetic_System_of_1984",6378137,
298.257222932867]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943
295]]

the map is successfully loaded and can be viewed using uDig. The problem
occurs when I tried to use the st_area command as state in the PostGIS
(1.3.3) manual (4.6.2.2). the sql statement i issue is:

SELECT
  ST_Area(the_geom)/10000 AS hectares
FROM mal_state
WHERE name = 'KELANTAN';

hectares 
------------------ 
0.000122167591783352 
(1 row)

is the return result measure in the unit of the WGS84 projection? if so
how can i change it to the correct measurement? i have attached my map
file in this email, can someone please shine some light? thanks in
advance.

best regards,

Stephen

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20080505/e42d8aed/attachment.html>


More information about the postgis-users mailing list