| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- import unittest
- from shapely.geometry import LineString, MultiPoint, Point, Polygon
- class OperatorsTestCase(unittest.TestCase):
- def test_point(self):
- point = Point(0, 0)
- point2 = Point(-1, 1)
- assert point.union(point2).equals(point | point2)
- assert (point & point2).is_empty
- assert point.equals(point - point2)
- assert point.symmetric_difference(point2).equals(point ^ point2)
- assert point != point2
- point_dupe = Point(0, 0)
- assert point, point_dupe
- def test_multipoint(self):
- mp1 = MultiPoint([(0, 0), (1, 1)])
- mp1_dup = MultiPoint([(0, 0), (1, 1)])
- mp1_rev = MultiPoint([(1, 1), (0, 0)])
- mp2 = MultiPoint([(0, 0), (1, 1), (2, 2)])
- mp3 = MultiPoint([(0, 0), (1, 1), (2, 3)])
- assert mp1 == mp1_dup
- assert mp1 != mp1_rev
- assert mp1 != mp2
- assert mp2 != mp3
- p = Point(0, 0)
- mp = MultiPoint([(0, 0)])
- assert p != mp
- assert mp != p
- def test_polygon(self):
- shell = ((0, 0), (3, 0), (3, 3), (0, 3))
- hole = ((1, 1), (2, 1), (2, 2), (1, 2))
- p_solid = Polygon(shell)
- p2_solid = Polygon(shell)
- p_hole = Polygon(shell, holes=[hole])
- p2_hole = Polygon(shell, holes=[hole])
- assert p_solid == p2_solid
- assert p_hole == p2_hole
- assert p_solid != p_hole
- shell2 = ((-5, 2), (10.5, 3), (7, 3))
- p3_hole = Polygon(shell2, holes=[hole])
- assert p_hole != p3_hole
- def test_linestring(self):
- line1 = LineString([(0, 0), (1, 1), (2, 2)])
- line2 = LineString([(0, 0), (2, 2)])
- line2_dup = LineString([(0, 0), (2, 2)])
- # .equals() indicates these are the same
- assert line1.equals(line2)
- # but != indicates these are different
- assert line1 != line2
- # but dupes are the same with ==
- assert line2 == line2_dup
|