[postgis-users] Getting the exact extent of a geometry

Pierre Racine Pierre.Racine at sbf.ulaval.ca
Thu Dec 17 08:05:01 PST 2009


Why not? This is what ST_Box2D() does and ST_Envelope() returns exactly the same values...

But again: Is there a non aggregate function which returns the exact extent (float8s) of a geometry? If not, why not?

Pierre

>-----Original Message-----
>From: postgis-users-bounces at postgis.refractions.net [mailto:postgis-users-
>bounces at postgis.refractions.net] On Behalf Of Mark Cave-Ayland
>Sent: 17 décembre 2009 05:22
>To: PostGIS Users Discussion
>Subject: Re: [postgis-users] Getting the exact extent of a geometry
>
>Pierre Racine wrote:
>
>> Hi,
>>
>> ST_Envelope(geometry) returns a kind of degenerated version (float4s instead of float8s) of the
>extent of a geometry based on the cached BOX2D and ST_Extent(geometry) is an aggregate.
>>
>> Is there a non aggregate function which returns the exact extent (float8s) of a geometry?
>>
>> Try:
>>
>> SELECT ST_AsText(ST_Envelope('LINESTRING(0 0, 1.00000000000001 1)'::geometry))
>> UNION ALL
>> SELECT ST_AsText(ST_Box2D('LINESTRING(0 0, 1.00000000000001 1)'::geometry))
>> UNION ALL
>> SELECT ST_AsText(ST_Extent('LINESTRING(0 0, 1.00000000000001 1)'::geometry));
>>
>> Thanks,
>>
>> Pierre
>
>Uggg. Nothing should *ever* return the contents of a BOX2DFLOAT4 back to
>the user. If ST_Envelope() does, then this is definitely a bug.
>
>
>ATB,
>
>Mark.
>
>--
>Mark Cave-Ayland - Senior Technical Architect
>PostgreSQL - PostGIS
>Sirius Corporation plc - control through freedom
>http://www.siriusit.co.uk
>t: +44 870 608 0063
>
>Sirius Labs: http://www.siriusit.co.uk/labs
>_______________________________________________
>postgis-users mailing list
>postgis-users at postgis.refractions.net
>http://postgis.refractions.net/mailman/listinfo/postgis-users



More information about the postgis-users mailing list