public void QuadTreePoint2DRemovalTest() { var tree = new QuadTreePoint2D(10, 10); var p1 = new Point2D(0, 0); var p2 = new Point2D(5, 5); var p3 = new Point2D(10, 10); var p4 = new Point2D(10, 10); tree.AddItems(new[] { p1, p2, p3, p4 }); Assert.AreEqual(4, tree.ItemCount); tree.RemoveItem(p3); Assert.AreEqual(3, tree.ItemCount); Assert.AreEqual(true, tree.HasItem(p1)); Assert.AreEqual(true, tree.HasItem(p2)); Assert.AreEqual(true, tree.HasItem(p4)); tree.RemoveItems(new[] { p1, p2 }); Assert.AreEqual(1, tree.ItemCount); Assert.AreEqual(true, tree.HasItem(p4)); tree.RemoveAllItems(); Assert.AreEqual(0, tree.ItemCount); }
public void QuadTreePoint2DInsertionTest() { var tree = new QuadTreePoint2D(10, 10); var p1 = new Point2D(5, 5); tree.AddItem(p1); Assert.AreEqual(true, tree.HasItem(p1)); var p2 = new Point2D(0, 0); var p3 = new Point2D(10, 10); var points = new[] { p2, p3 }; tree.AddItems(points); Assert.AreEqual(3, tree.ItemCount); Assert.AreEqual(true, tree.HasItem(p1)); Assert.AreEqual(true, tree.HasItem(p2)); Assert.AreEqual(true, tree.HasItem(p3)); Assert.AreEqual(false, tree.HasItem(new Point2D(1, 0))); }