四叉树学习

自己学习四叉树总结

结构:

QuadTree:树

QuadTreeNode:树的节点

ITreeObj:树对象的接口

Detector:检测器

BoundsDetector:包围盒检测器

……

图片:

功能实现结构大致如下:

对象添加:

添加的条件一般是节点完全包围和深度,如果这两个条件符合会再创建四象相的子节,不断递深下去,直到深度或四象相节点不能完合包围时停止

对象移除:

相比添加转为简单。移除并更新父节点的数量

对象更新:

这个较复杂,主要功能是在物体移动时,需要更新对应的节点中去

1.当前节点是否可以完全包含物体,如果不能转调用父节点处理

2.判断子节点是否存在,如果四象相子节点不存在且深度满足条件,那么创建子节点。

3.四象相子节点判断是否可以完全包围,如果可以跳出

4.子节点查找失败,那么就把对象加到自身节点中

下载:

工程是Unity2017.3 https://download.csdn.net/download/c332937586/12718923

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值