[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