I feel your pain Charlie, but I'm on Reid's side. Given that some spatial databases do support cross compare between geometries of different SRID (e.g. DB II), not sure about Oracle or SQL Server 2008, I would prefer an answer that is in compliance or throws an exception when it can't be sure. Its annoying from a debugging perspective to deal with things that fail silently. Returning false is a fail silently in my book.
If we deal with this as a special case - why wouldn't we deal with everything else the same with every other relational compare we do? Its just wrong, but granted doing the wrong thing would be conveniently useful in many cases. Thanks, Regina -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Charlie Savage Sent: Sunday, September 28, 2008 2:10 PM To: PostGIS Users Discussion Subject: Re: [postgis-users] Re: Comparing Geometries with Different SRIDs Reid Priedhorsky wrote: > Charlie Savage wrote: >>> The 2 point could be spatially equal given different SRIDS and >>> coordinates if they were projected to a common SRID. So should >>> geometry operators silently Call st_transform to make the righthand >>> match the lefthand before comparing? This would be quite the >>> expensive operation. >> >> No. You can't automatically transform between different SRID values >> Think of the case of one geometry with an SRID value of 4326 and one >> with an SRID value of -1 (no coordinate system). > > Exactly. > >> So different SRID values, then the geometries are not equal. > > No -- as Stanley said, the geometries could be in fact equal, but > expressed in different SRS. So if ST_Equals() returned False, it would > be wrong. Maybe. But returning "Operation permitted" is even worse because it means you can't do natural things like this (without extra annoying SRID checking code) in plpgsql: IF (geom1 == geom2) ... END IF; Or the example with the union earlier posted >> It is up to the user to transform geometries to the same SRID before >> calling ST_EQUALS. > > Exactly. ;) So, I still vote that st_equals will not blow up when comparing two geometries with different SRID values, it just will return false. Charlie _______________________________________________ postgis-users mailing list [email protected] http://postgis.refractions.net/mailman/listinfo/postgis-users
