Show
Ignore:
Timestamp:
11/06/09 17:31:07 (3 years ago)
Author:
pramsey
Message:

Make ~= be a bounding box only operator and upgrade ST_Equals() and ST_OrderingEquals() to match the new behavior. Update regression tests to match new behavior. (#282) See also #289 for an odd quirk discovered while updating regression tests.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/postgis/postgis.sql.in.c

    r4758 r4763  
    645645        LANGUAGE 'C' IMMUTABLE STRICT; 
    646646 
    647 CREATE OR REPLACE FUNCTION geometry_same(geometry, geometry) 
     647CREATE OR REPLACE FUNCTION geometry_samebox(geometry, geometry) 
    648648        RETURNS bool 
    649         AS 'MODULE_PATHNAME', 'LWGEOM_same' 
     649        AS 'MODULE_PATHNAME', 'LWGEOM_samebox' 
    650650        LANGUAGE 'C' IMMUTABLE STRICT; 
    651651 
     
    706706 
    707707CREATE OPERATOR ~= ( 
    708         LEFTARG = geometry, RIGHTARG = geometry, PROCEDURE = geometry_same, 
     708        LEFTARG = geometry, RIGHTARG = geometry, PROCEDURE = geometry_samebox, 
    709709        COMMUTATOR = '~=', 
    710710        RESTRICT = eqsel, JOIN = eqjoinsel 
     
    42184218        LANGUAGE 'C' IMMUTABLE STRICT; 
    42194219 
    4220 -- PostGIS equivalent function: Equals(geometry,geometry) 
    4221 CREATE OR REPLACE FUNCTION ST_Equals(geometry,geometry) 
     4220-- Availability: 1.5.0 
     4221CREATE OR REPLACE FUNCTION _ST_Equals(geometry,geometry) 
    42224222        RETURNS boolean 
    42234223        AS 'MODULE_PATHNAME','geomequals' 
    42244224        LANGUAGE 'C' IMMUTABLE STRICT 
    42254225        COST 100; 
     4226 
     4227-- Availability: 1.2.1 
     4228CREATE OR REPLACE FUNCTION ST_Equals(geometry,geometry) 
     4229        RETURNS boolean 
     4230        AS 'SELECT $1 ~= $2 AND _ST_Equals($1,$2)' 
     4231        LANGUAGE 'SQL' IMMUTABLE STRICT; 
    42264232 
    42274233