Hi Paul,
Well, clearly there's a bug to be fixed. In the meanwhile, since these are just boxes,makepoint((minx+maxx)/2, (miny+maxy)/2)
Right, makes sense. Except I couldn't find an api that actually lets you get at the information in the Box2D.
But I just looked again, and in fact there is one I missed:
select xmax(extent('POINT(10 10)'))
select xmin(extent('POINT(10 10)'))
So cool - that will do the trick. Thanks.
As an aside, its not obvious to me how to actually fix this bug.
Somehow the conversion from Box2D/Box3D to geometry needs to figure out
if the bbox has 0 width and/or 0 height and if so create a Point instead
of a Polygon. Would a check for xmin=xmax work - it seems dubious since
these are floating point numbers. Does the precision stuff in Geos help
with this somehow (except this is in PostGis not Geos)? Anyway, just
curious. I'll file a bug report.
Thanks, Charlie
P. On 18-Sep-07, at 8:56 PM, Charlie Savage wrote:It turns out that st_extent is hundreds of times faster than Envelope. But I run into a problem when using it:select st_extent('POINT(10 10)') "BOX(10 10,10 10)" But if you do this: select asText(centroid(st_extent('POINT(10 10)'))) "GEOMETRYCOLLECTION EMPTY"Which is the same issue I mentioned a couple weeks ago where Envelope('POINT(10 10)') doesn't return a point like it should.So I'd like to use st_extent, but a need a way to get a valid point that represents the center of the bounds instead of an empty collection. How?Charlie _______________________________________________ postgis-users mailing list [email protected] http://postgis.refractions.net/mailman/listinfo/postgis-users_______________________________________________ postgis-users mailing list [email protected] http://postgis.refractions.net/mailman/listinfo/postgis-users
smime.p7s
Description: S/MIME Cryptographic Signature
_______________________________________________ postgis-users mailing list [email protected] http://postgis.refractions.net/mailman/listinfo/postgis-users
