def test_border_intersection(self):
     bbox = BoundingBox([Vec2(0, 0), Vec2(2, 2)])
     pol = Polygon([Vec2(0, 0), Vec2(1, 0), Vec2(1, -2)])
     self.assertFalse(intersects(bbox, pol))
     self.assertTrue(intersects(bbox, pol, border=True))
     self.assertFalse(contains(pol, bbox))
     self.assertFalse(contains(bbox, pol))
 def test_bbox_in_circle_border(self):
     # Egyptian triangle (3, 4, 5)
     c = Circle(Vec2(0, 0), 5)
     r = BoundingBox([Vec2(-3, -4), Vec2(3, 4)])
     self.assertTrue(intersects(c, r))
     self.assertTrue(contains(c, r))
     self.assertFalse(contains(r, c))
 def test_border_intersection(self):
     pol1 = Polygon([Vec2(0, 0), Vec2(0, 2), Vec2(2, 2)])
     pol2 = Polygon([Vec2(2, 2), Vec2(1, 1), Vec2(2, 0)])
     self.assertFalse(intersects(pol1, pol2))
     self.assertTrue(intersects(pol1, pol2, border=True))
     self.assertFalse(contains(pol1, pol2))
     self.assertFalse(contains(pol1, pol2))
 def test_border_intersection(self):
     c1 = Circle(Vec2(0, 0), 2)
     c2 = Circle(Vec2(3, 4), 3)
     self.assertFalse(intersects(c1, c2))
     self.assertTrue(intersects(c1, c2, border=True))
     self.assertFalse(contains(c1, c2))
     self.assertFalse(contains(c2, c1))
 def test_corner_intersection(self):
     b1 = BoundingBox([Vec2(0, 0), Vec2(2, 2)])
     b2 = BoundingBox([Vec2(2, 2), Vec2(5, 7)])
     self.assertFalse(intersects(b1, b2))
     self.assertTrue(intersects(b1, b2, border=True))
     self.assertFalse(contains(b1, b2))
     self.assertFalse(contains(b2, b1))
 def test_circle_in_bbox_border(self):
     # contains have no need for `border` attributes. It always includes
     # border points.
     c = Circle(Vec2(0, 0), 4)
     r = BoundingBox.from_center(Vec2(0, 0), 8, 8)
     self.assertTrue(intersects(c, r))
     self.assertTrue(contains(r, c))
     self.assertFalse(contains(c, r))
 def test_bbox_in_pol(self):
     bbox = BoundingBox([Vec2(0, 0), Vec2(2, 2)])
     pol = Polygon(
         [Vec2(-1, -1),
          Vec2(-1, 5),
          Vec2(5, 5),
          Vec2(7, 4),
          Vec2(3, -1)])
     self.assertTrue(intersects(bbox, pol))
     self.assertTrue(contains(pol, bbox))
     self.assertFalse(contains(bbox, pol))
 def test_no_intersection(self):
     c = Circle(Vec2(0, 0), 2)
     r = BoundingBox.from_center(Vec2(10, 10), 2, 2)
     self.assertFalse(intersects(c, r))
     self.assertFalse(contains(c, r))
     self.assertFalse(contains(r, c))
 def test_contains(self):
     b1 = BoundingBox.from_center(Vec2(0, 0), 4, 4)
     b2 = BoundingBox.from_center(Vec2(0, 0), 2, 2)
     self.assertTrue(intersects(b1, b2))
     self.assertTrue(contains(b1, b2))
     self.assertFalse(contains(b2, b1))
Esempio n. 10
0
 def test_no_intersection(self):
     b1 = BoundingBox([Vec2(0, 0), Vec2(2, 2)])
     b2 = BoundingBox([Vec2(3, 3), Vec2(4, 4)])
     self.assertFalse(intersects(b1, b2))
     self.assertFalse(contains(b1, b2))
     self.assertFalse(contains(b2, b1))
Esempio n. 11
0
 def test_intersection(self):
     c = Circle(Vec2(0, 0), 5)
     r = BoundingBox.from_center(Vec2(0, 6), 4, 4)
     self.assertTrue(intersects(c, r))
     self.assertFalse(contains(c, r))
     self.assertFalse(contains(r, c))
Esempio n. 12
0
 def test_intersects(self):
     c1 = Circle(Vec2(0, 0), 4)
     c2 = Circle(Vec2(2, 2), 4)
     self.assertTrue(intersects(c1, c2))
     self.assertFalse(contains(c1, c2))
     self.assertFalse(contains(c2, c1))
Esempio n. 13
0
 def test_contains(self):
     pol1 = Polygon([Vec2(0, 0), Vec2(0, 10), Vec2(7, 8), Vec2(4, 0)])
     pol2 = Polygon([Vec2(2, 2), Vec2(1, 2), Vec2(2, 1)])
     self.assertTrue(intersects(pol1, pol2))
     self.assertTrue(contains(pol1, pol2))
     self.assertFalse(contains(pol2, pol1))
Esempio n. 14
0
 def test_no_intersection(self):
     pol1 = Polygon([Vec2(0, 0), Vec2(0, 2), Vec2(2, 2)])
     pol2 = Polygon([Vec2(5, 5), Vec2(3, 4), Vec2(7, 5)])
     self.assertFalse(intersects(pol1, pol2))
     self.assertFalse(contains(pol1, pol2))
     self.assertFalse(contains(pol1, pol2))
Esempio n. 15
0
 def test_no_intersection(self):
     bbox = BoundingBox([Vec2(0, 0), Vec2(2, 2)])
     pol = Polygon([Vec2(5, 5), Vec2(3, 4), Vec2(7, 5)])
     self.assertFalse(intersects(bbox, pol))
     self.assertFalse(contains(bbox, pol))
     self.assertFalse(contains(pol, bbox))
Esempio n. 16
0
 def test_intersects(self):
     b1 = BoundingBox([Vec2(0, 0), Vec2(3, 4)])
     b2 = BoundingBox([Vec2(2, 2), Vec2(5, 7)])
     self.assertTrue(intersects(b1, b2))
     self.assertFalse(contains(b1, b2))
     self.assertFalse(contains(b2, b1))
Esempio n. 17
0
 def test_bbox_in_circle(self):
     c = Circle(Vec2(0, 0), 10)
     r = BoundingBox.from_center(Vec2(0, 0), 2, 2)
     self.assertTrue(intersects(c, r))
     self.assertTrue(contains(c, r))
     self.assertFalse(contains(r, c))
Esempio n. 18
0
 def test_no_intersection(self):
     c1 = Circle(Vec2(0, 0), 2)
     c2 = Circle(Vec2(10, 10), 2)
     self.assertFalse(intersects(c1, c2))
     self.assertFalse(contains(c1, c2))
     self.assertFalse(contains(c2, c1))