B ∩ I = 1, if one line segment of the boundary of the Polygon overlaps one line segment from the LinearRing, else 0, if the interior of the LinearRing touches the Polygon at most at a set of points, else .false
B ∩ B = .false
B ∩ E = 1, if the boundary of the Polygon is not the same as the LinearRing, else .false
B ∩ E = 1, if the boundary of the Polygon is not the same as the LinearRing, else .false (Note this value cannot be 0.)
E ∩ I = 1, if part of one line segment of the LinearRing lies outside of the Polygon, else .false (Note this value cannot be 0.)
E ∩ B = .false
E ∩ E = 2
...
...
@@ -217,6 +217,18 @@ E ∩ B = 0, if at least one endpoint of the LineString lies outside of the Mult
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 LinearRing, in that order, that do intersect is
I ∩ I = 1, if at least one line segment of the LinearRing enters the interior of the MultiPolygon, else .false (Note this value cannot be 0.)
I ∩ B = .false
I ∩ E = 2
B ∩ I = 1, if one line segment of the boundary of the MultiPolygon overlaps one line segment from the LinearRing, else 0, if the interior of the LinearRing touches the MultiPolygon at most at a set of points, else .false
B ∩ B = .false
B ∩ E = 1, if the boundary of the MultiPolygon does not completely contain the LinearRing, else .false (Note this value cannot be 0.)
E ∩ I = 1, if part of one line segment of the LinearRing lies outside of the MultiPolygon, else .false (Note this value cannot be 0.)
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 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.