QTree 1.0.4

There is a newer version of this package available.
See the version list below for details.
dotnet add package QTree --version 1.0.4                
NuGet\Install-Package QTree -Version 1.0.4                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="QTree" Version="1.0.4" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add QTree --version 1.0.4                
#r "nuget: QTree, 1.0.4"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install QTree as a Cake Addin
#addin nuget:?package=QTree&version=1.0.4

// Install QTree as a Cake Tool
#tool nuget:?package=QTree&version=1.0.4                

QTree

A simple quadtree implementation.

Installation

Raw:
dotnet add package QTree --version 1.0.4
MonoGame .net framework 4.7.2:
dotnet add package QTree.MonoGame --version 1.0.3
MonoGame .net standard 2.1
dotnet add package QTree.MonoGame.Standard --version 1.0.3
MonoGame .net 8
dotnet add package QTree.MonoGame.Common --version 1.0.1

Example usage

// create the quadtree

// this tree is faster but constrained to the initial bounds 
var quadTree = new QuadTree<string>(x: 0, y: 0, width: 2000, height: 2000);

// this tree is a bit slower but has no constrictions in space
var dynamicTree = new DynamicQuadTree<string>();

// add some objects to the tree
for(var x = 0; x < 2000; x += 20)
{
    for(var y = 0; y < 2000; y += 20)
    {
        quadTree.Add(x, y, 10, 10, "whatevs");
        dynamicTree.Add(x, y, 10, 10, "whatevs");
    }
}

// find some objects
var objectsInArea = quadTree.FindNode(500, 500, 50, 50);
var otherObjectsInSameArea = dynamicTree.Add(x, y, 10, 10, "whatevs");

// remove an object
quadTree.Remove(objectsInArea[0]);
dynamicTree.Remove(objectsInArea[0]);

// clear the tree
quadTree.Clear();
dynamicTree.Clear();
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.5 105 10/12/2024
1.0.4 89 10/12/2024
1.0.3 3,096 11/20/2021
1.0.1 285 11/16/2021
1.0.0 270 11/16/2021