Re: BUG #5889: "Intersects" for polygons broken

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Konrad Garus" <konrad(dot)garus(at)gmail(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #5889: "Intersects" for polygons broken
Date: 2011-02-16 15:31:58
Message-ID: 25122.1297870318@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

"Konrad Garus" <konrad(dot)garus(at)gmail(dot)com> writes:
> && operator seems to be broken for polygons whose bounding boxes intersect:

> select polygon'((0,0), (1,2), (0,2))' && polygon'((0.5, 0), (1,0), (1,1))';
> ?column?
> ----------
> t
> (1 row)

This is fixed as of 9.0; see the release notes at
http://www.postgresql.org/docs/9.0/static/release-9-0.html
which say

Correct calculations of "overlaps" and "contains" operations for polygons (Teodor Sigaev)

The polygon && (overlaps) operator formerly just checked to see
if the two polygons' bounding boxes overlapped. It now does a
more correct check. The polygon @> and <@ (contains/contained
by) operators formerly checked to see if one polygon's vertexes
were all contained in the other; this can wrongly report "true"
for some non-convex polygons. Now they check that all line
segments of one polygon are contained in the other.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Konrad Garus 2011-02-16 15:33:54 Re: BUG #5889: "Intersects" for polygons broken
Previous Message Bruce Momjian 2011-02-16 13:45:50 Re: possible bug: orphaned files left after immediate shutdown during DDL