using System.Collections.Generic;
using System.Diagnostics;
using QuadTrees.QTreePointF;
public static void Main(string[] args)
QuadTreePointF<Character> qtree = new QuadTreePointF<Character>(new RectangleF(25000.0f, 15000.0f, 2000.0f, 2000.0f));
qtree.AddRange(new List<Character>
new Character("Dallasdevin", 26000.0f, 50.0f, 16000.0f),
new Character("TargetAcquired", 25500.0f, 50.0f, 15500.0f)
Character stuff = new Character("beebs", 25750.0f, 50.0f, 15750.0f);
var list = new List<Character>();
qtree.GetObjects(stuff.createRectangle(), list);
Console.Write($"Characters near point:");
foreach(Character c in list)
Console.Write($" {c.myName}");
Console.WriteLine(" present in list.");
var list1 = qtree.GetAllObjects();
Console.Write($"Characters present in quadtree:");
foreach(Character c in list1)
Console.Write($" {c.myName}");
static public void Reset(Character[] MyList)
for(int i = 0; i < MyList.Count(); i++)
public class Character : IPointFQuadStorable
public Character(string name, float X, float Y, float Z)
_rect = new PointF(X, Z);
public RectangleF createRectangle()
return new RectangleF(x, z, 250, 250);