Re: how to check if a point is contained in a polygon ? - Mailing list pgsql-sql

From Richard Huxton
Subject Re: how to check if a point is contained in a polygon ?
Date
Msg-id 4821BED9.60607@archonet.com
Whole thread Raw
In response to how to check if a point is contained in a polygon ?  (Julien Cigar <jcigar@ulb.ac.be>)
Responses Re: how to check if a point is contained in a polygon ?
List pgsql-sql
Julien Cigar wrote:
> Hello,
> 
> I'm busy to work on an application where the user can select (with
> precision) an area on a map (for example the contours of a lake) and I
> have to retrieve all the data (specimen observations) within this area. 
> 
> I have a list of coordinates pair [(lat1, long1), (lat2, long2), (lat3,
> long3), (..., ...)] which form a polygon. In my database every specimen
> has a pair of coordinates where it has been collected.

Are you familiar with the PostGIS project - if you're doing a lot of 
this, it might be worthwhile looking into.

http://www.postgis.org/

> Is there an SQL function to check if a point is contained in a polygon
> shape (before I start to write my own) ?
> 
> I tried something like :
> 
> rodentia=> select point '(-8,25)' <@ polygon
> '((-3,10),(8,18),(-3,30),(-10,20))';

Works both ways around here:

SELECT point '(-8,25)' <@ polygon '((-3,10),(8,18),(-3,30),(-10,20))';

SELECT polygon '((-3,10),(8,18),(-3,30),(-10,20))' @> point '(-8,25)';

I'm running 8.3, but it seems to be in 8.2 too.

Try \do '<@' from psql to see what operators are available.

--   Richard Huxton  Archonet Ltd


pgsql-sql by date:

Previous
From: Julien Cigar
Date:
Subject: how to check if a point is contained in a polygon ?
Next
From: "Woody Woodring"
Date:
Subject: Insert with pl/pgsql trigger