Opened 4 years ago

Closed 3 years ago

#1044 closed defect (fixed)

[OverlayNG] general/TestOverlayAAPrec.xml fails

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

Description

 Description: AA - A hole close to shell, B coincident with A
 Geometry A: POLYGON ((10 100, 10 10, 100 10, 100 100, 10 100), (90 90, 11 90, 10 10, 90 11, 90 90))
 Geometry B: POLYGON ((10 30, 10 10, 30 10, 30 30, 10 30))
 Expected result: MULTILINESTRING ((10 10, 30 10), (10 10, 10 30))
 Obtained result: MULTIPOINT (30 10, 10 30)

Change History (6)

comment:1 by strk, 4 years ago

Summary: [OverlayNG] general/TestOverlayAA.xml fails[OverlayNG] general/TestOverlayAAPrec.xml fails

comment:2 by strk, 4 years ago

JTS passes the test

comment:3 by strk, 4 years ago

Debugging shows the expected edges are in the graph:

Using fixed precision overlay.
OverlayNG::extractResult: graph: OGRPH
NODEMAP [5]
 10 10 OE( 10 10 .. 10 30 ) A:eCs/B:eiB / Sym: A:eCs/B:ieB
 10 30 OE( 10 30 .. 10 10 ) A:eCs/B:ieB / Sym: A:eCs/B:eiB
 10 100 OE( 10 100 .. 10 30 ) A:ieB/B:e / Sym: A:eiB/B:e
 30 10 OE( 30 10 .. 10 10 ) A:eCs/B:eiB / Sym: A:eCs/B:ieB
 90 90 OE( 90 90, 11 90 .. 10 30 ) A:eiB/B:e / Sym: A:ieB/B:e
EDGES [14]
 OE( 10 30 .. 10 10 ) A:eCs/B:ieB / Sym: A:eCs/B:eiB
 OE( 10 10 .. 10 30 ) A:eCs/B:eiB / Sym: A:eCs/B:ieB
 OE( 10 10 .. 30 10 ) A:eCs/B:ieB / Sym: A:eCs/B:eiB
 OE( 30 10 .. 10 10 ) A:eCs/B:eiB / Sym: A:eCs/B:ieB
 OE( 10 100 .. 10 30 ) A:ieB/B:e / Sym: A:eiB/B:e
 OE( 10 30 .. 10 100 ) A:eiB/B:e / Sym: A:ieB/B:e
 OE( 90 90, 11 90 .. 10 30 ) A:eiB/B:e / Sym: A:ieB/B:e
 OE( 10 30, 11 90 .. 90 90 ) A:ieB/B:e / Sym: A:eiB/B:e
 OE( 30 10, 30 30 .. 10 30 ) A:e/B:ieB / Sym: A:e/B:eiB
 OE( 10 30, 30 30 .. 30 10 ) A:e/B:eiB / Sym: A:e/B:ieB
 OE( 30 10, 100 10 .. 10 100 ) A:ieB/B:e / Sym: A:eiB/B:e
 OE( 10 100, 100 100 .. 30 10 ) A:eiB/B:e / Sym: A:ieB/B:e
 OE( 30 10, 90 11 .. 90 90 ) A:eiB/B:e / Sym: A:ieB/B:e
 OE( 90 90, 90 11 .. 30 10 ) A:ieB/B:e / Sym: A:eiB/B:e

comment:4 by strk, 4 years ago

I was wrong about JTS, it fails with the same error. The difference is that while JTS uses the OLD Overlay code for XML test "intersection", GEOS uses the OverlayNG when compiled with --enable-overlayng.

Martin: I find the expected output more correct than the obtained one, don't you ?

Case x.xml - #1 (4): AA - A hole close to shell, B coincident with A
Test Failed (A intersectionng B)
  Expected: MULTILINESTRING ((10 30, 10 10), 
  (10 10, 30 10))
  Actual: MULTIPOINT ((30 10), (10 30))

comment:5 by pramsey, 3 years ago

With the default switchover and accepting NG results for a few cases, this should be gone.

comment:6 by pramsey, 3 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.