Re: How to use function PointN? - Mailing list pgsql-sql

From Michael Fuhr
Subject Re: How to use function PointN?
Date
Msg-id 20070507131343.GA90126@winnie.fuhr.org
Whole thread Raw
In response to How to use function PointN?  ("Nemo Terry" <ntuser155@hotmail.com>)
List pgsql-sql
On Mon, May 07, 2007 at 04:07:00PM +0800, Nemo Terry wrote:
> select PointN(envelope(polyline),1) from highway;
> return null,why?

PointN is a PostGIS function; you might get more help on the
postgis-users mailing list.

http://postgis.refractions.net/mailman/listinfo/postgis-users

See also the PostGIS documentation for Envelope and PointN:

http://postgis.refractions.net/docs/ch06.html

Envelope(geometry)
   Returns a POLYGON representing the bounding box of the geometry.

PointN(geometry,integer)
   Return the N'th point in the first linestring in the geometry.   Return NULL if there is no linestring in the
geometry.

You've used Envelope to get a polygon but PointN expects a linestring.
Try using ExteriorRing on Envelope's polygon:

SELECT PointN(ExteriorRing(Envelope(polyline)), 1) FROM highway;

-- 
Michael Fuhr


pgsql-sql by date:

Previous
From: Andrew Sullivan
Date:
Subject: Re: Sequence vs. Index Scan
Next
From: Tom Lane
Date:
Subject: Re: Sequence vs. Index Scan