quadtree 相关问题

四叉树是用于在二维空间中存储点的几何数据结构。 Quadtrees递归地将空间划分为四个象限。

从使用 FloPy 构建的 MODFLOW-USG 四叉树模型写入 .gsf 文件

我在 FloPY(使用 Gridgen 的四叉树网格)中构建了 MODFLOW USG-Transport 模型,我希望能够在 Vistas 等 GUI 中打开它,以便其他不使用 FloPy 的人也可以使用它。 我需要一个 .gsf...

回答 2 投票 0

Rust 四叉树实现

我正在尝试在 Rust 中实现一个四叉树实现,它以 Array2 作为输入。任何包含所有相同值的节点都应该成为叶子。问题是它总是在分裂......

回答 1 投票 0

递归添加到嵌套结构(四叉树)中的列表

我在 C# 中制作了一个四叉树,当我当前尝试检索四叉树中存储的所有点时。 目前,我的检索函数代码如下所示: ...

回答 1 投票 0

如何在四叉树中强制执行从 LOD 到 LOD 的恒定 2:1 细分?

首先感谢TARN4T1ON。他建议使用边界框进行距离检测帮助我解决了我的问题。 现在我有了新的障碍。 我想要径向对称的渐变

回答 1 投票 0

使用 load_from_data_pointer() 而不是 Numba 中的错误

在 nopython=True 模式下对我的一个函数使用 Numba 给我以下错误 在 nopython 模式管道中失败(步骤:nopython 前端) 处的内部错误 在 nopython=True 模式下对我的一个函数使用 Numba 会出现以下错误 Failed in nopython mode pipeline (step: nopython frontend) Internal error at <numba.core.typeinfer.CallConstraint object at 0x7f7f38074970>. Failed in nopython mode pipeline (step: native lowering) use load_from_data_pointer() instead During: resolving callee type: type(CPUDispatcher(<function locate_photon_cell_by_tree at 0x7f7faf9dd2d0>)) 这里是有问题的功能 @njit def locate_photon_cell_by_tree(r, z, c, grid): """ Given r and z and start from c, find out a cell containing (r,z). """ NMAX = 1e6 found = False cout = c for j in range(int(NMAX)): if ((cout['xmin']**2 <= r <= cout['xmax']**2) and (cout['ymin'] <= z <= cout['ymax'])): if (cout['children'][0] == 0): found = True break # return cout, found flag = True non_zero_indices = np.nonzero(cout['children'])[0] child_indices = cout['children'][non_zero_indices] idx = np.where((grid[child_indices]['xmin']**2 <= r) & (r <= grid[child_indices]['xmax']**2) & (grid[child_indices]['ymin'] <= z) & (z <= grid[child_indices]['ymax']))[0] if idx.size > 0: cout = grid[child_indices[idx[0]]] flag = False break # for index in child_indices: # if ((grid[index]['xmin']**2 <= r <= grid[index]['xmax']**2) and # (grid[index]['ymin'] <= z <= grid[index]['ymax'])): # cout = grid[index] # flag = False # break if (flag): # cout = None break # return cout, found else: if cout['parent'] is not None: cout = grid[cout['parent']] else: # cout = None break # return cout, found # cout = None return cout, found 这是一个基本函数,它在二维空间 (r,z) 中取一个点,然后递归地在四叉树中找到包含它的单元格。在我的程序中,每个单元格都是一个结构化的 numpy 数组,其字段包含它的空间信息以及有关其在树中的父项和子项的信息。 我试着查了一下,显然这是 Numba 中的一个bug。我想了解两件事:这种行为的原因是什么,是否有任何解决方法?

回答 0 投票 0

递归地在四叉树中找到包含给定点的单元格

作为一个更大程序的一部分,我有这个函数,它有 4 个参数:r、z、c 和网格。 r 和 z 代表点的坐标。 c 是我们首先检查的父单元...

回答 0 投票 0

将四叉树展平为二维数组

我正在尝试创建一个使用四叉树的游戏。块游戏。如图所示,块是树的元素,它们可以有 0 个或 4 个孩子。最大的块在 0 级 ...

回答 0 投票 0

当我使用另一个文件中的类时,我一直得到一个错误,说 "找不到符号"。

我试图在Quadtree文件中单独创建一个Quadtree。四叉树 blocky = new Quadtree (rand.nextInt(5),new Quadtree.Boundry(0,0,rand.nextInt(750),rand...)。

回答 1 投票 0

如何在Quadtree[Python]中读取和使用CSV文件中的坐标?

我正在用python构建一个Quadtree,并设法创建了一个随机生成点的解决方案,主类是QTree类: class QTree(): def __init__(self, treshold, ...)。

回答 1 投票 0

THREE.JS:四叉树地形故障

我有一个非常简单的代码,可以根据伪四叉树算法从不同缩放级别的图块可视化地形。由于跨域限制和StackOverflow限制,我正在发布...

回答 1 投票 0

JavaScript:四叉树比较

我没有找到任何快速算法来获取以下格式的四叉树差异。假设我们有两个任意的4级树:var tree1 = [{id:“ 1.1”,子代:[{id:...

回答 1 投票 1

我如何有效地修剪和合并四叉树中的节点?

我正在使用四叉树来允许我有效地收集特定2D区域中的粒子。随着时间的流逝,粒子逐渐消失并最终消失,因此我需要将它们从四叉树中移除,因为...

回答 1 投票 0

c ++四叉树是不完整的类型

我正在库中实现四叉树,并且编译器不断抛出有关不完整类型的错误:quadtree.h template

回答 1 投票 0

什么是粗略和细网格搜索?

我正在阅读此答案高效(且已充分解释)用于2D碰撞检测的四叉树实现,并且遇到了此段落好吧,所以实际上四叉树不是我的...

回答 1 投票 3

构造四叉树,使得相邻节点(LOD)之间只有一个层级差]]

我正在尝试构建一个四叉树,该四叉树根据位置和最大深度来细分区域。我想用它来实现地形的详细程度。换句话说,我有一个位置(x,y),一个...

回答 1 投票 6

Python递归四叉树问题

我一直在编写一个递归四叉树构造函数以用于某些n体仿真,但是我当前的实现似乎无法正常工作,并且在进行大量调试之后,我很沮丧。 ...

回答 1 投票 0

重新整理了四叉树/八叉树数据

我工作的实施体素八叉树raycaster,而唯一剩下的重新排列数据来填充八叉树的叶级别,这样的数据则可以被平均建...

回答 1 投票 6

RecursiveFree函数 - 警告:从不兼容的指针类型初始化[-Wincompatible-pointer-types]

我有一个递归释放的函数:#include“treeStructure.h”void destroyTree(Node * p){if(p == NULL)return; Node * free_next = p - > child; //获取...的地址

回答 1 投票 -1

如何在每个节点上增长该Quadtree

我做了一个Quadtree,它最初是一个统一的2级四叉树。 struct qnode {int level; double xy [2]; struct qnode * child [4]; }; typedef struct qnode Node; int main(int argc,char ** ...

回答 1 投票 0

混淆复合Python语句的语法错误

我试图从pygame运行一个四叉树示例(该页面上的第一位代码)但是在一个非常令人困惑的行上得到语法错误:in_nw = item.left <= cx和item.top <= cy ... 。

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.