d3,四叉树,quadtree

四叉树是一种二维空间的递归划分,应用在计算n体的力,或者碰撞检测。


http://bl.ocks.org/patricksurry/6478178 

以最近邻查找为例子。

var quadtree = d3.geom.quadtree()
    .extent([[-1, -1], [width + 1, height + 1]])
    (data);
//初始化

extent是空间范围映射

后面是数据

 quadtree.visit(function(node, x1, y1, x2, y2) {
    node.x1 = x1;
    node.y1 = y1;
    node.x2 = x2;
    node.y2 = y2;
    nodes.push(node);
    for (var i=0; i<4; i++) {
        if (node.nodes[i]) node.nodes[i].depth = node.depth+1;
    }
  });
visit是遍历函数,可以遍历所有节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值