LL - A crosses B
LINESTRING(0 0, 100 100)
LINESTRING(0 100, 100 0)
POINT(50 50)
MULTILINESTRING(
(0 0, 50 50),
(0 100, 50 50),
(50 50, 100 100),
(50 50, 100 0))
MULTILINESTRING(
(0 0, 50 50),
(50 50, 100 100))
MULTILINESTRING(
(0 0, 50 50),
(0 100, 50 50),
(50 50, 100 100),
(50 50, 100 0))
LL - A shares one segment with B
LINESTRING(0 0, 100 100, 200 0)
LINESTRING(0 0, 100 100, 200 200)
LINESTRING(0 0, 100 100)
MULTILINESTRING(
(0 0, 100 100),
(100 100, 200 200),
(100 100, 200 0))
LINESTRING(100 100, 200 0)
MULTILINESTRING(
(100 100, 200 200),
(100 100, 200 0))
LL - A and B disjoint
LINESTRING(40 360, 40 220, 120 360)
LINESTRING(120 340, 60 220, 140 220, 140 360)
MULTIPOINT((40 360), (120 360))
POLYGON(
(40 220, 40 360, 120 360, 40 220))
LINESTRING EMPTY
MULTILINESTRING(
(40 360, 40 220, 120 360),
(120 340, 60 220, 140 220, 140 360))
LINESTRING(40 360, 40 220, 120 360)
MULTILINESTRING(
(40 360, 40 220, 120 360),
(120 340, 60 220, 140 220, 140 360))
LL - A and B intersect frequently
LINESTRING(220 240, 200 220, 60 320, 40 300, 180 200, 160 180, 20 280)
LINESTRING(220 240, 140 160, 120 180, 220 280, 200 300, 100 200)
MULTIPOINT((220 240), (20 280))
POLYGON(
(160 180, 20 280, 60 320, 220 240, 160 180))
GEOMETRYCOLLECTION(
POINT(113 213),
POINT(133 233),
POINT(137 197),
POINT(153 253),
POINT(157 217),
POINT(177 237),
LINESTRING(180 200, 160 180),
LINESTRING(220 240, 200 220))
MULTILINESTRING(
(113 213, 20 280),
(133 233, 113 213),
(113 213, 100 200),
(137 197, 113 213),
(153 253, 133 233),
(153 253, 60 320, 40 300, 133 233),
(133 233, 157 217),
(137 197, 157 217),
(160 180, 140 160, 120 180, 137 197),
(160 180, 137 197),
(177 237, 220 280, 200 300, 153 253),
(177 237, 153 253),
(157 217, 177 237),
(157 217, 180 200),
(180 200, 160 180),
(200 220, 177 237),
(200 220, 180 200),
(220 240, 200 220))
MULTILINESTRING(
(200 220, 177 237),
(177 237, 153 253),
(153 253, 60 320, 40 300, 133 233),
(133 233, 157 217),
(157 217, 180 200),
(160 180, 137 197),
(137 197, 113 213),
(113 213, 20 280))
MULTILINESTRING(
(200 220, 177 237),
(177 237, 153 253),
(153 253, 60 320, 40 300, 133 233),
(133 233, 157 217),
(157 217, 180 200),
(160 180, 137 197),
(137 197, 113 213),
(113 213, 20 280),
(200 220, 180 200),
(160 180, 140 160, 120 180, 137 197),
(137 197, 157 217),
(157 217, 177 237),
(177 237, 220 280, 200 300, 153 253),
(153 253, 133 233),
(133 233, 113 213),
(113 213, 100 200))
LL - A and B equal
LINESTRING(80 320, 220 320, 220 160, 80 300)
LINESTRING(80 320, 220 320, 220 160, 80 300)
MULTIPOINT((80 320), (80 300))
POLYGON(
(220 160, 80 300, 80 320, 220 320, 220 160))
MULTILINESTRING(
(220 160, 80 300),
(80 320, 220 320),
(220 320, 220 160))
MULTILINESTRING(
(220 160, 80 300),
(80 320, 220 320),
(220 320, 220 160))
LINESTRING EMPTY
LINESTRING EMPTY
LL - A and B touch ends
LINESTRING(60 200, 60 260, 140 200)
LINESTRING(60 200, 60 140, 140 200)
MULTIPOINT((60 200), (140 200))
POLYGON(
(60 200, 60 260, 140 200, 60 200))
MULTIPOINT((60 200), (140 200))
MULTILINESTRING(
(60 200, 60 260, 140 200),
(60 200, 60 140, 140 200))
LINESTRING(60 200, 60 260, 140 200)
MULTILINESTRING(
(60 200, 60 260, 140 200),
(60 200, 60 140, 140 200))
LL - intersecting rings
LINESTRING(180 200, 100 280, 20 200, 100 120, 180 200)
LINESTRING(100 200, 220 200, 220 80, 100 80, 100 200)
MULTIPOINT EMPTY
POLYGON(
(100 120, 20 200, 100 280, 180 200, 100 120))
MULTIPOINT((100 120), (180 200))
MULTILINESTRING(
(100 120, 180 200),
(100 120, 100 200),
(180 200, 100 280, 20 200, 100 120),
(180 200, 220 200, 220 80, 100 80, 100 120),
(100 200, 180 200))
MULTILINESTRING(
(100 120, 180 200),
(180 200, 100 280, 20 200, 100 120))
MULTILINESTRING(
(100 120, 180 200),
(100 120, 100 200),
(180 200, 100 280, 20 200, 100 120),
(180 200, 220 200, 220 80, 100 80, 100 120),
(100 200, 180 200))
LrL - LinearRing bug
LINEARRING(0 0, 0 5, 5 5, 5 0, 0 0)
LINESTRING( 2 2, 5 5)
POINT (5 5)