Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#524 closed defect (invalid)

IntersectionMatrix of a line with itself has NO boundary intersection [JTS fails too]

Reported by: strk Owned by: geos-devel@…
Priority: major Milestone: 3.3.3
Component: Default Version: 3.3.2
Severity: Unassigned Keywords: jtsfail
Cc:

Description

Here's a MULTILINESTRING having an IntersectionMatrix with itself with NO boundary intersection !

0105000000050000000102000000050000000000000087523A41000000402C62524100000000B0523A41000000C01E6252410000000084523A41000000C023625241858C4F2488523A4151F8EEAC2562524111A0F52288523A414F50F3AC2562524101020000000300000011A0F52288523A414F50F3AC2562524100A0F52288523A414F50F3AC25625241A871502388523A4158FEF2AC25625241010200000004000000A871502388523A4158FEF2AC25625241A0E6602488523A417108F2AC2562524121E7602488523A417108F2AC25625241A871502388523A4158FEF2AC25625241010200000002000000A871502388523A4158FEF2AC2562524111A0F52288523A414F50F3AC2562524101020000000400000011A0F52288523A414F50F3AC25625241D59FF52288523A414F50F3AC25625241000000007F523A4100000080256252410000000087523A41000000402C625241

Attachments (1)

bug524.xml (882 bytes ) - added by strk 12 years ago.

Download all attachments as: .zip

Change History (5)

by strk, 12 years ago

Attachment: bug524.xml added

comment:1 by strk, 12 years ago

Mind you: the attached testcase works with JTS but has an unsupported format in GEOS. XMLTester is to be fixed to support it.

comment:2 by strk, 12 years ago

Note that the input is composed by a mix of closed and non closed linestrings:

=# select path, ST_IsClosed(geom) from ST_Dump('0105000000050000000102000000050000000000000087523A41000000402C62524100000000B0523A41000000C01E6252410000000084523A41000000C023625241858C4F2488523A4151F8EEAC2562524111A0F52288523A414F50F3AC2562524101020000000300000011A0F52288523A414F50F3AC2562524100A0F52288523A414F50F3AC25625241A871502388523A4158FEF2AC25625241010200000004000000A871502388523A4158FEF2AC25625241A0E6602488523A417108F2AC2562524121E7602488523A417108F2AC25625241A871502388523A4158FEF2AC25625241010200000002000000A871502388523A4158FEF2AC2562524111A0F52288523A414F50F3AC2562524101020000000400000011A0F52288523A414F50F3AC25625241D59FF52288523A414F50F3AC25625241000000007F523A4100000080256252410000000087523A41000000402C625241');
 path | st_isclosed 
------+-------------
 {1}  | f
 {2}  | f
 {3}  | t
 {4}  | f
 {5}  | f
(5 rows)

There's actually a _single_ closed line

comment:3 by strk, 12 years ago

Resolution: invalid
Status: newclosed

Ok, false alarm. According to the Mod2BoundaryNodeRule the input MultiLinestring has no boundary, which explains the lack of boundary-boundary intersection.

http://www.vividsolutions.com/jts/javadoc/com/vividsolutions/jts/algorithm/BoundaryNodeRule.Mod2BoundaryNodeRule.html

comment:4 by strk, 12 years ago

For the record: passing boundary-node-rule 2 to GEOSRelate gives the boundary intersection

Note: See TracTickets for help on using tickets.