L/A-3-1: a line touching the closing point of a polygon [dim(0){A.L.Bdy.SP = B.oBdy.CP}] LINESTRING(150 150, 40 230) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false false false false true false true false L/A-3-2: the start and end points of a LineString touching the boundary (at non-vertices) of a polygon [dim(0){A.L.Bdy.SP = B.oBdy.NV}, dim(0){A.L.Bdy.EP = B.oBdy.NV}] LINESTRING(40 40, 50 130, 130 130) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false false false false true false true false L/A-3-3: the end point of a line touching the closing point of a polygon [dim(0){A.L.Bdy.EP = B.oBdy.CP}] LINESTRING(40 230, 150 150) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false false false false true false true false L/A-3-4: an entire LineString touching the boundary (at non-vertices) of a polygon [dim(1){A.L.Int.SP-EP = B.oBdy.NV-NV}] LINESTRING(210 150, 330 150) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false true false false false false true false true false L/A-3-5: the start portion of a LineString touching the boundary (at non-vertices) of a polygon [dim(1){A.L.Int.SP-V = B.oBdy.NV-NV}] LINESTRING(200 150, 310 150, 360 220) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false false false false true false true false L/A-3-6: the start portion and the end point of a LineString touching the boundary of a polygon [dim(1){A.L.Int.SP-V = B.oBdy.NV-NV}, dim(0){A.L.Bdy.EP = B.A.oBdy.V}] LINESTRING(180 150, 250 150, 230 250, 370 250, 410 150) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false false false false true false true false L/A-3-7: the middle portion of a LineString touching the boundary (at non-vertices) of a polygon [dim(1){A.L.Int.V-V = B.oBdy.NV-NV}] LINESTRING(210 210, 220 150, 320 150, 370 210) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false false false false true false true false L/A-4-1: a line at non-vertex crossing non-vertex boundary of polygon [dim(0){A.L.Int.NV = B.A.oBdy.NV}, dim(1){A.L.Int.NV-EP = B.A.Int}] LINESTRING(20 60, 150 60) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-4-2: a line at non-vertex crossing non-vertex boundaries of polygon twice [dim(0){A.L.Int.NV = B.A.oBdy.NV}, dim(1){A.L.Int.NV-NV = B.A.Int}] LINESTRING(60 90, 310 180) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-4-3: a line at non-vertex crossing vertex boundary of polygon [dim(0){A.L.Int.NV = B.A.oBdy.V}, dim(1){A.L.Int.NV-EP = B.A.Int}] LINESTRING(90 210, 210 90) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-4-4: a line at non-vertex crossing vertex boundaries of polygon twice [dim(0){A.L.Int.NV = B.A.oBdy.V}, dim(1){A.L.Int.NV-NV = B.A.Int}, dim(0){A.L.Int.NV = B.A.oBdy.CP}] LINESTRING(290 10, 130 170) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-4-5: a line at vertex crossing non-vertex boundary of polygon [dim(0){A.L.Int.V = B.A.oBdy.NV}, dim(1){A.L.Int.V-EP = B.A.Int}] LINESTRING(30 100, 100 100, 180 100) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-4-6: a line at vertex crossing non-vertex boundaries of polygon twice [dim(0){A.L.Int.V = B.A.oBdy.NV}, dim(1){A.L.Int.V-V = B.A.Int}] LINESTRING(20 100, 100 100, 360 100, 410 100) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-4-7: a line at vertex crossing vertex boundary of polygon [dim(0){A.L.Int.V = B.A.oBdy.V}, dim(1){A.L.Int.V-EP = B.A.Int}] LINESTRING(90 210, 150 150, 210 90) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false false false true false false true false false false L/A-5-1: an entire line within a polygon [dim(1){A.L.Int.SP-EP = B.A.Int}] LINESTRING(180 90, 280 120) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false true false false false false true false false true L/A-5-2: a line within a polygon but the line's both ends touching the boundary of the polygon [dim(1){A.L.Int.SP-EP = B.A.Int}, dim(0){A.L.Bdy.SP = B.oBdy.NV}, dim(0){A.L.Bdy.EP = B.oBdy.NV}] LINESTRING(70 70, 80 20) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false true false false false false true false false true L/A-5-3: a line within a polygon but the line's start point touching the boundary of the polygon [dim(1){A.L.Int.SP-EP = B.A.Int}, dim(0){A.L.Bdy.SP = B.oBdy.NV}] LINESTRING(130 20, 150 60) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false true false false false false true false false true L/A-5-4: a line within a polygon but the line's start point and middle portion touching the boundary of the polygon [dim(1){A.L.Int.SP-V = B.A.Int}, dim(1){A.L.Int.V-V = B.oBdy.NV-NV}, dim(1){A.L.Int.V-EP = B.A.Int}, dim(0){A.L.Bdy.SP = B.A.oBdy.NV}] LINESTRING(70 70, 80 20, 140 20, 150 60) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false true false false false false true false false true L/A-5-5: a line within a polygon but the line's middle portion touching the boundary of the polygon [dim(1){A.L.Int.SP-V = B.A.Int}, dim(1){A.L.Int.V-V = B.A.oBdy.NV-NV}, dim(1){A.L.Int.V-EP = B.A.Int}] LINESTRING(170 50, 170 20, 240 20, 260 60) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150)) true false true false false false false true false false true L/Ah-2-1: a line outside a polygon [dim(1){A.L.Int.SP-EP = B.A.Ext}] LINESTRING(50 100, 140 190, 280 190) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150), (170 120, 330 120, 260 50, 100 50, 170 120)) true false false false false true false false false false false L/Ah-2-2: a line inside a polygon's hole [dim(1){A.L.Int.SP-EP = B.A.Ext.h}] LINESTRING(140 60, 180 100, 290 100) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150), (170 120, 330 120, 260 50, 100 50, 170 120)) true false false false false true false false false false false L/Ah-3-1: the start point of a line touching the inner boundary of a polygon [dim(0){A.L.Bdy.SP = B.A.iBdy.CP}, dim(1){A.L.Int.SP-EP = B.A.Ext.h}] LINESTRING(170 120, 210 80, 270 80) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150), (170 120, 330 120, 260 50, 100 50, 170 120)) true false false false false false false true false true false L/Ah-3-2: both ends of a line touching the inner boundary of a polygon [dim(0){A.L.Bdy.SP = B.A.iBdy.CP}, dim(1){A.L.Int.SP-EP = B.A.Ext.h}, dim(0){A.L.Bdy.SP = B.A.iBdy.CP}] LINESTRING(170 120, 260 50) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150), (170 120, 330 120, 260 50, 100 50, 170 120)) true false false false false false false true false true false L/Ah-3-1: both ends of a line touching the inner boundary of a polygon [dim(0){A.L.Int.NV = B.A.Bdy.TP}] LINESTRING(190 90, 190 270) POLYGON( (190 190, 360 20, 20 20, 190 190), (190 190, 280 50, 100 50, 190 190)) true false false false false false false true false true false L/Ah-3-2: a line at a non-vertex crossing the boundary of a polygon where the closing point of the hole touches the shell at a non-vertex [dim(0){A.L.Int.NV = B.A.Bdy.TP}] LINESTRING(60 160, 150 70) POLYGON( (190 190, 360 20, 20 20, 190 190), (110 110, 250 100, 140 30, 110 110)) true false false false false false false true false true false L/Ah-3-3: a line at a non-vertex crossing the boundary of a polygon where the hole at a vertex touches the shell at a non-vertex [dim(0){A.L.Int.NV = B.A.Bdy.TP}] LINESTRING(60 160, 150 70) POLYGON( (190 190, 20 20, 360 20, 190 190), (250 100, 110 110, 140 30, 250 100)) true false false false false false false true false true false L/Ah-3-4: a line at a non-vertex crossing the boundary of a polygon where the hole at a vertex touches the shell at a vertex [dim(0){A.L.Int.NV = B.A.Bdy.TP}] LINESTRING(60 160, 150 70) POLYGON( (190 190, 20 20, 360 20, 190 190), (250 100, 110 110, 140 30, 250 100)) true false false false false false false true false true false L/Ah-3-5: a line crossing polygon boundary where the closing point of the hole touches the shell at a vertex [dim(0){A.L.Int.V = B.A.Bdy.TP}] LINESTRING(190 90, 190 190, 190 270) POLYGON( (190 190, 360 20, 20 20, 190 190), (190 190, 280 50, 100 50, 190 190)) true false false false false false false true false true false L/Ah-3-6: a line at a vertex crossing the boundary of a polygon where closing point of the hole touches the shell at a non-vertex [dim(0){A.L.Int.V = B.A.Bdy.TP}] LINESTRING(60 160, 110 110, 150 70) POLYGON( (190 190, 360 20, 20 20, 190 190), (110 110, 250 100, 140 30, 110 110)) true false false false false false false true false true false L/Ah-3-7: a line at a vertex crossing the boundary of a polygon where the hole at a vertex touches the shell at a non-vertex [dim(0){A.L.Int.V = B.A.Bdy.TP}] LINESTRING(60 160, 110 110, 150 70) POLYGON( (190 190, 20 20, 360 20, 190 190), (250 100, 110 110, 140 30, 250 100)) true false false false false false false true false true false L/Ah-3-8: a line at a non-vertex crossing the boundary of a polygon where the hole at a vertex touches the shell at a vertex [dim(0){A.L.Int.V = B.A.Bdy.TP}] LINESTRING(60 160, 110 110, 150 70) POLYGON( (190 190, 110 110, 20 20, 360 20, 190 190), (250 100, 110 110, 140 30, 250 100)) true false false false false false false true false true false L/A2h-3-1: the start point a line touching the closing points of two connected holes in a polygon [dim(0){A.L.Int.SP = B.A.iBdy.TP}] LINESTRING(130 110, 180 110, 190 60) POLYGON( (20 200, 240 200, 240 20, 20 20, 20 200), (130 110, 60 180, 60 40, 130 110), (130 110, 200 40, 200 180, 130 110)) true false false false false false false true false true false L/A2h-3-2: the interior (at a non-vertex) of a line touching the closing points of two connected holes in a polygon [dim(0){A.L.Int.NV = B.A.iBdy.TP}] LINESTRING(80 110, 180 110) POLYGON( (20 200, 240 200, 240 20, 20 20, 20 200), (130 110, 60 180, 60 40, 130 110), (130 110, 200 40, 200 180, 130 110)) true false false false false false false true false true false L/A2h-3-3: the interior (at a non-vertex) of a line touching the closing point and at a vertex of two connected holes in a polygon [dim(0){A.L.Int.NV = B.A.iBdy1.TP}] LINESTRING(80 110, 180 110) POLYGON( (20 200, 20 20, 240 20, 240 200, 20 200), (60 180, 130 110, 60 40, 60 180), (130 110, 200 40, 200 180, 130 110)) true false false false false false false true false true false L/A2h-3-4: the interior (at a non-vertex) of a line touching the closing point and at a non-vertex of two connected holes in a polygon [dim(0){A.L.Int.NV = B.A.iBdy.TP}] LINESTRING(80 110, 170 110) POLYGON( (20 200, 20 20, 240 20, 240 200, 20 200), (130 110, 60 40, 60 180, 130 110), (130 180, 130 40, 200 110, 130 180)) true false false false false false false true false true false L/A2h-3-5: the start point a line touching the closing point and a non-vertex of two connected holes in a polygon [dim(0){A.L.Int.V = B.A.iBdy.TP}] LINESTRING(80 110, 130 110, 170 110) POLYGON( (20 200, 20 20, 240 20, 240 200, 20 200), (130 110, 60 40, 60 180, 130 110), (130 180, 130 40, 200 110, 130 180)) true false false false false false false true false true false L/A2h-3-6: the interior (at a vertex) of a line touching the closing points of two connected holes in a polygon [dim(0){A.L.Int.V = B.A.iBdy.TP}] LINESTRING(80 110, 130 110, 180 110) POLYGON( (20 200, 240 200, 240 20, 20 20, 20 200), (130 110, 60 180, 60 40, 130 110), (130 110, 200 40, 200 180, 130 110)) true false false false false false false true false true false L/A2h-3-7: the interior (at a vertex) of a line touching the closing point and at a vertex of two connected holes in a polygon [dim(0){A.L.Int.V = B.A.iBdy1.TP}] LINESTRING(80 110, 130 110, 180 110) POLYGON( (20 200, 20 20, 240 20, 240 200, 20 200), (60 180, 130 110, 60 40, 60 180), (130 110, 200 40, 200 180, 130 110)) true false false false false false false true false true false L/A2h-3-8: the interior (at a vertex) of a line touching the closing point and at a non-vertex of two connected holes in a polygon [dim(0){A.L.Int.V = B.A.iBdy.TP}] LINESTRING(80 110, 130 110, 170 110) POLYGON( (20 200, 20 20, 240 20, 240 200, 20 200), (130 110, 60 40, 60 180, 130 110), (130 180, 130 40, 200 110, 130 180)) true false false false false false false true false true false L/mA-4-1: a line intersecting the interior and exterior of MultiPolygon [dim(1){A.L.Int.SP-NV = B.2A1.Int}, dim (1){A.L.Int.NV-EP = B.2A2.Int}] LINESTRING(160 70, 320 230) MULTIPOLYGON( ( (140 110, 260 110, 170 20, 50 20, 140 110)), ( (300 270, 420 270, 340 190, 220 190, 300 270))) true false false false true false false true false false false L/mA-4-2: a line intersecting the interior and exterior of MultiPolygon [dim(1){A.L.Int.SP-V = B.2A1.Int}, dim (1){A.L.Int.V-EP = B.2A2.Int}] LINESTRING(160 70, 200 110, 280 190, 320 230) MULTIPOLYGON( ( (140 110, 260 110, 170 20, 50 20, 140 110)), ( (300 270, 420 270, 340 190, 220 190, 300 270))) true false false false true false false true false false false L/mA-5-1: a line within two connected polygons [dim(1){A.L.Int = B.2A.Int}, dim(0){A.L.Int.NV = B.2A.Bdy.TP] LINESTRING(70 50, 70 150) MULTIPOLYGON( ( (0 0, 0 100, 140 100, 140 0, 0 0)), ( (20 170, 70 100, 130 170, 20 170))) true false true false false false false true false false true RL/A-3-1: a LinearRing touching a polygon's closing point [dim(0){A.RL.Int.CP = B.A.Bdy.CP}] LINESTRING(110 110, 20 200, 200 200, 110 110) POLYGON( (20 20, 200 20, 110 110, 20 20)) true false false false false false false true false true false RL/A-3-2: a LinearRing touching a polygon's boundary at a non-vertex [dim(0){A.RL.Int.CP = B.A.Bdy.NV}] LINESTRING(150 70, 160 110, 200 60, 150 70) POLYGON( (20 20, 200 20, 110 110, 20 20)) true false false false false false false true false true false RL/A-3-3: a LinearRing touching a polygon's boundary at a non-vertex [dim(0){A.RL.Int.CP = B.A.iBdy.NV}] LINESTRING(80 60, 120 40, 120 70, 80 60) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 50 30, 170 30, 110 90)) true false false false false false false true false true false RL/A-3-4: a LinearRing on the boundary of a polygon [dim(1){A.RL.Int.SP-EP = B.A.Bdy.SP-EP}] LINESTRING(20 20, 200 20, 110 110, 20 20) POLYGON( (20 20, 200 20, 110 110, 20 20)) true false true false false false false true false true false RL/A-3-5: a LinearRing on the inner boundary of a polygon [dim(1){A.RL.Int.SP-EP = B.A.iBdy.SP-EP}] LINESTRING(110 90, 170 30, 50 30, 110 90) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 50 30, 170 30, 110 90)) true false true false false false false true false true false RL/A-3-6: a LinearRing on the inner boundary of a polygon [dim(1){A.RL.Int.SP-V = B.A.oBdy.SP-NV}] LINESTRING(110 110, 170 50, 170 110, 110 110) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 50 30, 170 30, 110 90)) true false false false false false false true false true false RL/A-3-7: a LinearRing on the inner boundary of a polygon [dim(1){A.RL.Int.SP-V = B.A.iBdy.SP-NV}] LINESTRING(110 90, 70 50, 130 50, 110 90) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 50 30, 170 30, 110 90)) true false false false false false false true false true false RL/A-4-1: a LinearRing crossing a polygon [dim(1){A.RL.Int.CP-NV = B.A.Int}, dim(0){A.L.Int.NV = B.A.Bdy.NV}] LINESTRING(110 60, 20 150, 200 150, 110 60) POLYGON( (20 20, 200 20, 110 110, 20 20)) true false false false true false false true false false false RL/A-4-2: a LinearRing crossing a polygon with a hole [dim(1){A.RL.Int.NV-NV = B.A.Int}, dim(0){A.RL.Int.NV = B.A.oBdy.CP}, dim(0){A.RL.Int.NV = B.A.iBdy.CP}, dim(0){A.RL.Int.NV = B.A.oBdy.NV}, dim(0){A.RL.Int.NV = B.A.iBdy.NV}] LINESTRING(110 130, 110 70, 200 100, 110 130) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 50 30, 170 30, 110 90)) true false false false true false false true false false false RL/A-5-1: a LinearRing within a polygon [dim(1){A.RL.Int.SP-EP = B.A.Int}] LINESTRING(110 90, 160 40, 60 40, 110 90) POLYGON( (20 20, 200 20, 110 110, 20 20)) true false true false false false false true false false true RL/A-5-2: a LinearRing within a polygon with a hole [dim(1){A.RL.Int.SP-EP = B.A.Int}] LINESTRING(110 100, 40 30, 180 30, 110 100) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 60 40, 160 40, 110 90)) true false true false false false false true false false true RL/A-5-3: a LinearRing within a polygon with a hole [dim(1){A.RL.Int.SP-EP = B.A.Int}, dim(0){A.L.Int.CP = B.A.oBdy.CP}] LINESTRING(110 110, 180 30, 40 30, 110 110) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 60 40, 160 40, 110 90)) true false true false false false false true false false true RL/A-5-4: a LinearRing within a polygon with a hole [dim(1){A.RL.Int.SP-EP = B.A.Int}, dim(0){A.RL.Int.CP = B.A.iBdy.CP}] LINESTRING(110 90, 180 30, 40 30, 110 90) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 60 40, 160 40, 110 90)) true false true false false false false true false false true RL/A-5-5: a LinearRing within a polygon with a hole [dim(1){A.RL.Int.SP-EP = B.A.Int}, dim(1){A.RL.Int.SP-NV = B.A.Bdy.iBdy.SP-V}] LINESTRING(110 90, 50 30, 180 30, 110 90) POLYGON( (110 110, 200 20, 20 20, 110 110), (110 90, 60 40, 160 40, 110 90)) true false true false false false false true false false true nsL/A-3-1: a non-simple LineString touching a polygon [dim(0){A.nsL.Bdy.SP = B.A.Bdy.CP}] LINESTRING(110 110, 200 200, 200 110, 110 200) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false nsL/A-3-2: a non-simple LineString touching a polygon [dim(0){A.nsL.Bdy.SPb = B.A.Bdy.CP}] LINESTRING(110 110, 200 200, 110 110, 20 200, 20 110, 200 110) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false nsL/A-3-3: a non-simple LineString touching a polygon [dim(0){A.nsL.Bdy.SPo = B.A.Bdy.CP}] LINESTRING(110 110, 20 110, 200 110, 50 110, 110 170) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false nsL/A-3-4: a non-simple LineString touching a polygon [dim(0){A.nsL.Bdy.SPx = B.A.Bdy.CP}] LINESTRING(110 110, 20 200, 110 200, 110 110, 200 200) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false nsL/A-3-5: a non-simple LineString touching a polygon [dim(1){A.nsL.Int.SPb-Vo = B.A.Bdy.SP-NV}] LINESTRING(110 110, 170 50, 20 200, 20 110, 200 110) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false nsL/A-4-1: a non-simple LineString crossing a polygon [dim(1){A.nsL.Int.V-V-NV = B.A.Int}, dim(1){A.nsL.SPx-V = B.A.Bdy.SP-NV}] LINESTRING(110 110, 180 40, 110 40, 110 180) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false true false false true false false false nsL/A-5-1: a non-simple LineString within a polygon [dim(1){A.nsL.Int.SPx-EP = B.A.Int}] LINESTRING(110 60, 50 30, 170 30, 90 70) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false true false false false false true false false true nsL/A-5-2: a non-simple LineString within a polygon [dim(1){A.nsL.Int.SPx-EP = B.A.Int}, dim(1){A.nsL.Int.SPx-V = B.A.Bdy.SP-NV}] LINESTRING(110 110, 180 40, 110 40, 110 110, 70 40) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false true false false false false true false false true nsL/Ah: the self-crossing point of a non-simple LineString touching the closing point of the inner boundary of a polygon [dim(0){A.nsL.Int.V = B.A.iBdy.CP}] LINESTRING(230 70, 170 120, 190 60, 140 60, 170 120, 270 90) POLYGON( (150 150, 410 150, 280 20, 20 20, 150 150), (170 120, 330 120, 260 50, 100 50, 170 120)) true false false false false false false true false true false mL/A-3-1: MultiLineString touching a polygon's closing point [dim(0){A.mL.Bdy.SPb = B.A.Bdy.CP}] MULTILINESTRING( (20 110, 200 110), (200 200, 110 110, 20 210, 110 110)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false mL/A-3-2: MultiLineString touching a polygon's closing point [dim(0){A.mL.Bdy.SPo = B.A.Bdy.CP}] MULTILINESTRING( (20 110, 200 110), (60 180, 60 110, 160 110, 110 110)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false mL/A-3-3: MultiLineString touching a polygon's closing point [dim(0){A.mL.Bdy.SPx = B.A.Bdy.CP}] MULTILINESTRING( (20 110, 200 110), (200 200, 110 110, 20 200, 110 200, 110 110)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false false false false true false true false mL/A-4-1: MultiLineString crossing a polygon [dim(1){A.mL.Int.SP-NVb = B.A.Int}, dim(0){A.mL.Int.NVb = B.A.Bdy.CP}] MULTILINESTRING( (20 110, 200 110), (110 50, 110 170, 110 70, 110 150, 200 150)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false true false false true false false false mL/A-4-2: MultiLineString crossing a polygon [dim(1){A.mL.Int.SP-NVo = B.A.Int}, dim(0){A.mL.Int.NVo = B.A.Bdy.CP}] MULTILINESTRING( (20 110, 200 110), (50 110, 170 110, 110 170, 110 50, 110 170, 110 50)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false true false false true false false false mL/A-4-3: MultiLineString crossing a polygon [dim(1){A.mL.Int.SP-NVx = B.A.Int}, dim(0){A.mL.Int.NVx = B.A.Bdy.CP}] MULTILINESTRING( (20 110, 200 110), (110 60, 110 160, 200 160)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false true false false true false false false mL/A-4-4: MultiLineString crossing a polygon [dim(1){A.mL.Int.Vb-Vb = B.A.Int}, dim(0){A.mL.Int.Vb = B.A.oBdy.CP}, dim(0){A.mL.Int.Vb = B.A.iBdy.CP}] MULTILINESTRING( (20 110, 200 110), (110 60, 110 160, 200 160)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false false false true false false true false false false mL/A-5-1: MultiLineString within a polygon [dim(1){A.mL.Int.SP-EP = B.A.Int}] MULTILINESTRING( (110 100, 40 30, 180 30), (170 30, 110 90, 50 30)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false true false false false false true false false true mL/A-5-2: MultiLineString within a polygon [dim(1){A.mL.Int.SP-EP = B.A.Int}] MULTILINESTRING( (110 110, 60 40, 70 20, 150 20, 170 40), (180 30, 40 30, 110 80)) POLYGON( (110 110, 200 20, 20 20, 110 110)) true false true false false false false true false false true mL/mA-3-1: MultiLineString within a MultiPolygon [dim(0){A.mL.Bdy.SPb = B.mA.Bdy.TP}] MULTILINESTRING( (20 110, 200 110, 200 160), (110 110, 200 110, 200 70, 20 150)) MULTIPOLYGON( ( (110 110, 20 20, 200 20, 110 110)), ( (110 110, 20 200, 200 200, 110 110))) true false false false false false false true false true false mL/mA-3-2: MultiLineString within a MultiPolygon [dim(0){A.mL.Bdy.SPo = B.mA.Bdy.TP}] MULTILINESTRING( (20 160, 70 110, 150 110, 200 160), (110 110, 20 110, 50 80, 70 110, 200 110)) MULTIPOLYGON( ( (110 110, 20 20, 200 20, 110 110)), ( (110 110, 20 200, 200 200, 110 110))) true false false false false false false true false true false mL/mA-3-3: MultiLineString within a MultiPolygon [dim(0){A.mL.Bdy.SPx = B.mA.Bdy.TP}] MULTILINESTRING( (20 110, 200 110), (110 110, 20 170, 20 130, 200 90)) MULTIPOLYGON( ( (110 110, 20 20, 200 20, 110 110)), ( (110 110, 20 200, 200 200, 110 110))) true false false false false false false true false true false