我正在查看 Kd-tree 并找到了该算法的一些实现。所有这些都是存储点(大多数情况下是 2d)。我想要实现的是在其中存储不同的形状,如矩形、三角形等。那么在 kd-trees 中是否可以存储形状?我有一些四叉树的代码。形状被存储在其中。
最佳答案
这与用于四叉树的方法没有太大区别。
对于每个形状,您应该能够计算:
它的质心。
它的信封。
计算中位数时,使用质心。形状的包络应该适合四边形。在四边形中插入一个形状时,检查它的包络线是否穿过超平面。如果为真,则将形状存储在四边形中。如果为假,请将此形状放入左侧或右侧四边形的适当形状列表中 施工电话。
干杯
关于c# - 在 KD 树中存储矩形/圆形/三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17651215/