四叉树用于地理位置 四叉树是一种树数据结构,具有4个“子级”,通常称为节点,这些节点中的每个节点内还有4个以上的节点,依此类推,直到达到指定的粒度为止。 出于优化目的,仅在必要时才创建子代,例如,在下图中,我们可以看到四叉树的表示形式。 这种结构在许多方面都很漂亮,有很多用途可以真正改善应用程序。 最常见的用法是: 优化游戏渲染 动态光照效果对游戏的影响 地理位置 图像压缩 AI路径寻找 在此示例中,我们将使用四叉树优化地理位置。 想象一下,我们有一个应用程序可以向用户显示周围的其他用户或周围的图片。 传统方式是比较用户A和B之间的距离。使用两个点的经度和纬度,我们可以计算出以度为单位
2023-02-22 11:26:51 178KB java geolocation data-structures quadtree
1
如何设置和运行 克隆存储库 在存储库的根目录中运行以下命令: $ git clone https://github.com/anthony-nardi/2d-quadtree-js.git quadtree $ cd quadtree $ npm install && npm run dev 导航到浏览器: 本地主机:8000 / demos 本地主机:8000 / demos / space_game 如何在您的项目中使用 通过npm npm install 2d-quadtree : npm install 2d-quadtree 文件中的Require: var Quadtree = require('2d-quadtree'); 警告 这是我第一个发布的npm模块... 没有测试 没有好看的文档供您阅读 如果您想查看任何更改或发表评论,请随时给我发
2023-01-03 15:05:23 6.53MB JavaScript
1
使用c++实现一棵四叉树,每个叶节点最多只包含一个二维平面的点。四叉树可以进行遍历,删除,添加,查询操作。
2022-10-24 16:13:51 3KB 四叉树 c++
1
D3D11_QuadTree
2022-09-12 23:19:09 706KB QuadTree
1
四叉树 v0.1 描述 这是一个实现通用四叉树的基本 C 库。 它具有可选的线程安全性(通过使用互斥处理函数指针调用特定函数来启用)。 所有数据结构都是不透明的,以简化可用性; 只有顶级入口函数可用。 然而,结构类型定义被记录在案并且没有什么可以阻止您将它们移动到头文件中。 下载 存储库 最新的开发版本可以在 GitHub 上找到: 编译 四叉树带有一个简单的 Makefile 和一个用于设置构建选项的 config.mk 文件。 如果您要将其构建为静态库,我建议使用这些。 如果你有 clang,你应该可以简单地通过make来构建 lib; 但是您可能想要/需要修改 config.mk。 如果您想使用 Makefile 的“安装”和“卸载”目标,您可能需要修改 config.mk 中的 PREFIX 变量以指向安装位置。 您可以将其传递给 make 命令,而无需编辑 config.
2022-08-02 18:35:39 28KB C
1
四叉树 这是Quadtree的Java实现,Quadtree是一种树数据结构,可用于存储2D位置数据。 用法 创建新的四叉树 从点(0,0)开始以400 x 400尺寸初始化世界 // init. Dimension dimension = new Dimension ( 400 , 400 ); Position2D position = new Position2D ( 0 , 0 ); QuadTree< Point> KD = new QuadTree< Point> (position, dimension); // populate with random points. Random random = new Random (); List< Point> pointList = new LinkedList<> (); for ( int i = 0 ;
2022-05-21 14:41:16 14KB java algorithm data-structures quadtree
1
creator 四叉树 Quadtree.ts 用于优化碰撞检测
2022-04-06 03:04:45 5KB cocos-creator
1
clj-四叉树 使用四叉树进行空间索引和搜索的库。 查看以获取详细说明。 用法 ; ; Create a function for searching on a square divided into 2^15 tiles, ; ; each side of which is 64 ( use 'clj-quadtree.core) ( def search ( create-search-fn { :cache-method clojure.core.memoize/memo :depth 15 :tile-size 64 })) ; ; let's create some geometric shapes ( require '[cljts.geom :as g]) ( require '[cljts.analy
2021-12-12 16:25:52 55KB Clojure
1
四叉树 作为学习练习而编写的Python四叉树实现。 不应过于重视它,并且整个实现都包含在1个文件中。 因此,如果您要使用Quadtree的python实现,请随时将quadtree.py复制并粘贴到您的项目中。 整个实现在quadtree / quadtee.py文件中。 示例用法可在example / draw_quadtree.py和example / draw_quadtree_query.py中找到
2021-10-21 12:25:41 42KB Python
1