beginner postgis question lat/lon
Hi,
This may seem like a very simple question...it is...but I can't find
documentation on it to help. I've seen some posts about lat/long but
none that give simple solutions on how to insert lat/long in tables.
I'm a new user to postgis...I've been using mysql for a while but
needed the spatial functions so just recently downloaded postgresql/
postgis.
How do I create a simple table with several linestrings that have
coordinates in latitude/longitude?
Eventually, I'd like to create polygons with coordinates in lat/long
and see if they intersect various linestrings, but I'm trying to start
out simple.
Here's what I've done so far...
postgis=# \d routes_geom;
Table "public.routes_geom"
Column | Type | Modifiers
--------+-----------------------+-----------
id | integer |
name | character varying(25) |
geom | geometry |
Check constraints:
"enforce_dims_geom" CHECK (ndims(geom) = 2)
"enforce_geotype_geom" CHECK (geometrytype(geom) =
'LINESTRING'::text OR geom IS NULL)
"enforce_srid_geom" CHECK (srid(geom) = 4326)
postgis=# insert into routes_geom values(1, 'J084',
GeomFromText('LINESTRING(38.20 -121.00, 38.20, -118.00)', 4326));
I receive this error:
ERROR: parse error - invalid geometry
CONTEXT: SQL function "geomfromtext" statement 1
Do you have a good way to input lat/lon and do spatial relationships
using lat/long coords?
Thanks for any help,
Shad
On Wed, Feb 27, 2008 at 04:59:07PM -0800, shadrack wrote:
postgis=# insert into routes_geom values(1, 'J084',
GeomFromText('LINESTRING(38.20 -121.00, 38.20, -118.00)', 4326));I receive this error:
ERROR: parse error - invalid geometry
CONTEXT: SQL function "geomfromtext" statement 1
You have an extraneous comma after the 38.20.
Have a nice day,
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/
Show quoted text
Those who make peaceful revolution impossible will make violent revolution inevitable.
-- John F Kennedy
On Wed, Feb 27, 2008 at 04:59:07PM -0800, shadrack wrote:
This may seem like a very simple question...it is...but I can't find
documentation on it to help. I've seen some posts about lat/long but
none that give simple solutions on how to insert lat/long in tables.
See the PostGIS documentation, in particular Chapter 4 "Using PostGIS":
http://postgis.refractions.net/docs/ch04.html
(The site isn't responding right now; hopefully it'll be available
soon.)
postgis=# insert into routes_geom values(1, 'J084',
GeomFromText('LINESTRING(38.20 -121.00, 38.20, -118.00)', 4326));I receive this error:
ERROR: parse error - invalid geometry
CONTEXT: SQL function "geomfromtext" statement 1
There are two problems with the geometry string: the syntax error is
due an extra comma in the second pair of coordinates, and coordinates
should be (X Y) therefore (lon lat) instead of (lat lon). Try this:
insert into routes_geom values(1, 'J084', GeomFromText('LINESTRING(-121.00 38.20, -118.00 38.20)', 4326));
You might wish to subscribe to the postgis-users mailing list if you
have additional questions.
--
Michael Fuhr
Thanks for the help! Stupid error,
Shad
Show quoted text
On Feb 28, 7:04 am, m...@fuhr.org (Michael Fuhr) wrote:
On Wed, Feb 27, 2008 at 04:59:07PM -0800, shadrack wrote:
This may seem like a very simple question...it is...but I can't find
documentation on it to help. I've seen some posts about lat/long but
none that give simple solutions on how to insert lat/long in tables.See the PostGIS documentation, in particular Chapter 4 "Using PostGIS":
http://postgis.refractions.net/docs/ch04.html
(The site isn't responding right now; hopefully it'll be available
soon.)postgis=# insert into routes_geom values(1, 'J084',
GeomFromText('LINESTRING(38.20 -121.00, 38.20, -118.00)', 4326));I receive this error:
ERROR: parse error - invalid geometry
CONTEXT: SQL function "geomfromtext" statement 1There are two problems with the geometry string: the syntax error is
due an extra comma in the second pair of coordinates, and coordinates
should be (X Y) therefore (lon lat) instead of (lat lon). Try this:insert into routes_geom values(1, 'J084', GeomFromText('LINESTRING(-121.00 38.20, -118.00 38.20)', 4326));
You might wish to subscribe to the postgis-users mailing list if you
have additional questions.--
Michael Fuhr---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?