16 Commits

Author SHA1 Message Date
85fcd2358f Remove entity boundaries from Quadtree
The Quadtree did no meaningful management of entity boundaries. All it did was store the maximum and inflate the query rectangle accordingly. The caller can easily take over this responsibility. Consequently, this simplifies queries.
2025-09-27 23:23:38 +02:00
157fea7761 Fix Rectangle docs 2025-09-27 23:20:48 +02:00
83141aeb14 Remove dependency on IWorldObject by introducing callbacks, and change terminology from "world object" to "(world) entity" 2025-09-27 21:37:58 +02:00
3bea3f5a9b Rename class BoundingBox2 to Rectangle 2025-09-25 19:11:18 +02:00
263e215f41 Add some basic unit tests 2025-08-27 19:38:43 +02:00
eee2cd5be4 Add Quadtree.Count 2025-08-27 19:38:05 +02:00
a52b19bfa4 Move project to sub-directory, add empty test project, and fix namespace 2025-08-27 18:40:29 +02:00
504ec41ebc Add BoundingBox2.Include() from Quadtree.IncludeInBoundingBox() 2025-08-27 17:59:56 +02:00
e84746fab0 Fix some IntelliSense messages 2025-08-27 17:57:30 +02:00
235178be3d Rename file BoundingBox to BoundingBox2 and remove dedicated namespace for it 2025-08-27 17:57:04 +02:00
07dc369c2c Add BoundingBox2 implementation 2025-08-27 17:47:08 +02:00
0aad311a32 Fix inconsistent private member naming style 2025-08-27 17:28:17 +02:00
6523d469cc Change local stack to be member field for reuse, and add documentation for both private stacks 2025-08-27 17:26:28 +02:00
510ee1e705 Update comments and todos 2025-08-27 17:19:08 +02:00
be8682e902 Add quadtree files, missing implementation of BoundingBox2 2025-08-22 20:17:30 +02:00
697170e6dd Initial commit 2025-08-22 14:40:03 +02:00