MCPcopy Index your code
hub / github.com/OmkarPathak/pygorithm / test_split_entities

Method test_split_entities

tests/test_data_structure.py:545–584  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

543 self.assertEqual(750, _tree2.children[3].location.mincorner.y)
544
545 def test_split_entities(self):
546
547 ent1 = quadtree.QuadTreeEntity(rect2.Rect2(5, 5, vector2.Vector2(50, 50)))
548 ent2 = quadtree.QuadTreeEntity(rect2.Rect2(5, 5, vector2.Vector2(550, 75)))
549 ent3 = quadtree.QuadTreeEntity(rect2.Rect2(5, 5, vector2.Vector2(565, 585)))
550 ent4 = quadtree.QuadTreeEntity(rect2.Rect2(5, 5, vector2.Vector2(95, 900)))
551 ent5 = quadtree.QuadTreeEntity(rect2.Rect2(10, 10, vector2.Vector2(495, 167)))
552
553 _tree = quadtree.QuadTree(64, 5, self.big_rect, entities = [ ent1, ent2, ent3, ent4, ent5 ])
554 _tree.split()
555
556 self.assertEqual(1, len(_tree.children[0].entities))
557 self.assertEqual(50, _tree.children[0].entities[0].aabb.mincorner.x)
558 self.assertEqual(50, _tree.children[0].entities[0].aabb.mincorner.y)
559
560 self.assertEqual(1, len(_tree.children[1].entities))
561 self.assertEqual(550, _tree.children[1].entities[0].aabb.mincorner.x)
562 self.assertEqual(75, _tree.children[1].entities[0].aabb.mincorner.y)
563
564 self.assertEqual(1, len(_tree.children[2].entities))
565 self.assertEqual(565, _tree.children[2].entities[0].aabb.mincorner.x)
566 self.assertEqual(585, _tree.children[2].entities[0].aabb.mincorner.y)
567
568 self.assertEqual(1, len(_tree.children[3].entities))
569 self.assertEqual(95, _tree.children[3].entities[0].aabb.mincorner.x)
570 self.assertEqual(900, _tree.children[3].entities[0].aabb.mincorner.y)
571
572 self.assertEqual(1, len(_tree.entities))
573 self.assertEqual(495, _tree.entities[0].aabb.mincorner.x)
574 self.assertEqual(167, _tree.entities[0].aabb.mincorner.y)
575
576 _tree2 = _tree.children[3]
577 _tree2.split()
578
579 for i in range(3):
580 self.assertEqual(0, len(_tree2.children[i].entities), msg="i={}".format(i))
581
582 self.assertEqual(1, len(_tree2.children[3].entities))
583 self.assertEqual(95, _tree2.children[3].entities[0].aabb.mincorner.x)
584 self.assertEqual(900, _tree2.children[3].entities[0].aabb.mincorner.y)
585
586 # note for test_think and test_insert we're testing the worst-case scenario
587 # for a quad tree (everythings all bunched up in a corner) hence the instant

Callers

nothing calls this directly

Calls 1

splitMethod · 0.95

Tested by

no test coverage detected