@@ -198,7 +198,7 @@ I ∩ I = 1, if at least one line segment of the MultilineString enters the inte
I ∩ B = 0, if the interior of one line segment of the MultilineString is inside the polygon, else .false
I ∩ E = 2
B ∩ I = 1, if one line segment of the boundary of the Polygon overlaps one line segment from the MultilineString, else 0, if the interior of the MultilineString touches the Polygon at most at a set of points, else .false
B ∩ B = 0, if the endpoints of the MultilineString touch the line segments of the boundary at one or more points, else .false
B ∩ B = 0, if the endpoints of the MultilineString touch the line segments of the boundary of the Polygon at one or more points, else .false
B ∩ E = 1
E ∩ I = 1, if part of one line segment of the MultilineString lies outside of the Polygon, else .false (Note this value cannot be 0.)
E ∩ B = 0, if at least one endpoint of the MultilineString lies outside of the Polygon, else .false
...
...
@@ -229,6 +229,18 @@ E ∩ B = .false
E ∩ E = 2
If the order of the two geometries is reversed, the intersection matrix would be the transpose of the above.
The IM for a MultiPolygon and a MultilineString (not LinearRing), in that order, that do intersect is
I ∩ I = 1, if at least one line segment of the MultilineString enters the interior of the MultiPolygon, else .false (Note this value cannot be 0.)
I ∩ B = 0, if the interior of one line segment of the MultilineString is inside the MultiPolygon, else .false
I ∩ E = 2
B ∩ I = 1, if one line segment of the boundary of the MultiPolygon overlaps one line segment from the MultilineString, else 0, if the interior of the MultilineString touches the MultiPolygon at most at a set of points, else .false
B ∩ B = 0, if the endpoints of the MultilineString touch the line segments of the boundary of the MultiPolygon at one or more points, else .false
B ∩ E = 1
E ∩ I = 1, if part of one line segment of the MultilineString lies outside of the MultiPolygon, else .false (Note this value cannot be 0.)
E ∩ B = 0, if at least one endpoint of the MultilineString lies outside of the MultiPolygon, else .false
E ∩ E = 2
If the order of the two geometries is reversed, the intersection matrix would be the transpose of the above.
**The dimension of the intersection of two geometries, both of which are dimension .two, is either .zero,.one, .two., or .false**
if a line segment from one polygon boundary crosses over a line segment of the boundary of the other polygon, then return .two. If one polygon is completely contained inside another polygon, but not completely contained inside a hole within the first polygon, return .two. If the boundaries of the two polygons overlap perfectly, return .two. If the boundaries of the two polygons overlap on any sub-segment, return .one. If the boundaries of the two polygons touch at one or more points, return .zero, else return .false.