Bug? (geo operator @ )

Started by Daniel Lauover 22 years ago3 messagesbugs
Jump to latest
#1Daniel Lau
iedaniel@ust.hk

Hi all,

I was to extract the '_lines' (path) if the lines are contained or on by a
box-like polygon. The result turns wrong if the box-like polygon is
changed from a square (x_max = y_max) to a rectangle (x_max <> y_max).
Please read the example at the end.

Please also notice that although the _lines #2 is contained by both square
and rectangle, it does not appear in both table.

I am wondering if it is a bug. Perhapes I did something wrong?

regards,
Daniel Lau
Hong Kong University of Science and Technology

Example:
_____________________________________________________________________

test=# select * from test;
geoid | _lines
-------+---------------------------------------
0 | ((0,0),(1,1))
1 | ((1,1),(0,0))
2 | ((833749,820999),(844362,821001))
3 | ((1000000,1000000),(1000001,1000001))
4 | ((0,0),(1,1),(3,-1))
(5 rows)

test=# select * from test where polygon(pclose(_lines)) @ polygon
'(-2,-2),(850000,850000)';
geoid | _lines
-------+---------------
0 | ((0,0),(1,1))
1 | ((1,1),(0,0))
(2 rows)

test=# select * from test where polygon(pclose(_lines)) @ polygon
'(-2,-2),(840000,850000)';
geoid | _lines
-------+--------
(0 rows)

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Daniel Lau (#1)
Re: Bug? (geo operator @ )

Daniel Lau <iedaniel@ust.hk> writes:

I was to extract the '_lines' (path) if the lines are contained or on by a
box-like polygon. The result turns wrong if the box-like polygon is
changed from a square (x_max = y_max) to a rectangle (x_max <> y_max).

The examples you give are not "box-like"; they are in fact just line
segments. You need four points to define a box-like polygon.

AFAICS the quoted example is correct behavior.

regards, tom lane

#3Daniel Lau
iedaniel@ust.hk
In reply to: Tom Lane (#2)
Re: Bug? (geo operator @ )

Thank you for answering my question.
I made a careless mistake.

regards,
Daniel

On Mon, 22 Dec 2003, Tom Lane wrote:

Show quoted text

Daniel Lau <iedaniel@ust.hk> writes:

I was to extract the '_lines' (path) if the lines are contained or on by a
box-like polygon. The result turns wrong if the box-like polygon is
changed from a square (x_max = y_max) to a rectangle (x_max <> y_max).

The examples you give are not "box-like"; they are in fact just line
segments. You need four points to define a box-like polygon.

AFAICS the quoted example is correct behavior.

regards, tom lane