Opened 9 months ago
Last modified 6 months ago
#5580 closed defect
When encounting an empty geometry, potential bug in the ST_3DIntersects function — at Version 1
Reported by: | Wenjing | Owned by: | pramsey |
---|---|---|---|
Priority: | high | Milestone: | PostGIS 3.3.6 |
Component: | postgis | Version: | 3.4.x |
Keywords: | Cc: |
Description (last modified by )
Consider this query:
SELECT ST_Intersects(a1, a2) FROM ST_GeomFromText('GEOMETRYCOLLECTION(POINT EMPTY, POINT (0 0))') As a1 , ST_GeomFromText('POINT (0 0)') As a2; --excepted{t}
When using the 2D Intersects function in this situation, the expected result is true and PostGIS returns true.
But consider its 3D version:
SELECT ST_3DIntersects(a1, a2) FROM ST_GeomFromText('GEOMETRYCOLLECTION Z (POINT Z EMPTY, POINT Z (0 0 0))') As a1 , ST_GeomFromText('POINT Z (0 0 0)') As a2; --excepted{t}; actual{f}
POINT Z (0 0 0) is the two geometries' intersection. So the excepted result of 3DIntersects is true.
But the 3DIntersects function doesn't consider they intersect only when inserting an empty geometry before this point.
Note:
See TracTickets
for help on using tickets.