空间四叉树分割
已知条件:整个地球是[-180,180],[-90,90]
root:{
rectangle:[minx,maxx],[miny,maxy],
nodes:[node1,node2,node3,node4],
Objects:all,
level:0
}
node
{
rectangle:[minx,maxx],[miny,maxy],
nodes:[node1,node2,node3,node4],
Objects:1/2*all(近似),
level:1
}
leafnode
{
rectangle:[minx,maxx],[miny,maxy],
nodes:[],
Objects:1,
level:18
}
参考:Cesium的quadtreePrimitive类(好像cesium里的quatreenode不叫node,叫quadtreetile)
参考2:https://www.cnpython.com/java/27316
参考3:https://www.freesion.com/article/8600351208/#google_vignette
参考4:https://download.csdn.net/download/weixin_42099815/18578309 or varunpant/Quadtree: Quadtree implementation (github.com)
参考5:https://download.csdn.net/download/weixin_42131405/18338928 or leonardodlana/quadtree-geolocation: Small project showing the power of the quadtree structure to improve geolocation (github.com)
quadtree{
type:Point(Line,Polygon),
root:
}
方法:
createQuadtree()
AddRootToQuadtree()
AddNodeToRoot()