Skip to Main Content
算法技术手册(原书第2 版)
book

算法技术手册(原书第2 版)

by George T.Heineman, Gary Pollice, Stanley Selkow
August 2017
Intermediate to advanced content levelIntermediate to advanced
360 pages
8h 35m
Chinese
China Machine Press
Content preview from 算法技术手册(原书第2 版)
空间树结构
289
空间树结构
10-14:使用四叉树的碰撞检测
10.7.1 输入 / 输出
输入是一棵四叉树,它由平面上的一个二维点集
P
构建而成。
为了获得最佳性能,范围查询会返回四叉树中的
结点
,这样可以在目标矩形完全覆盖子
树中点时直接返回。碰撞检测的结果是目标点与已有点的交集。
10.7.2 决方案
在例
10-4
中,
QuadTree
QuadNode
结构
展示了基本的四叉树
Python
实现
smaller2k
larger2k
辅助方法确保初始区域的边长为
2
的幂次
Region
类表示一块矩形区域。
10-4
:四叉树的
QuadNode
实现
class Region:
def __init__(self, xmin,ymin, xmax,ymax):
"""
从两点
(xmin, ymin)
(xmax, ymax)
出发创建区域。
如果这两个点不是区域的左下角和右上角坐标,相应地进行调整。
"""
self.x_min = xmin if xmin < xmax else xmax
self.y_min = ymin if ymin < ymax else ymax
self.x_max = xmax if xmax > xmin else xmin
self.y_max = ymax if ymax > ymin else ymin
class QuadNode:
def __init__(self, region, pt = ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

Aurélien Géron
Go语言编程

Go语言编程

威廉·肯尼迪
C++语言导学(原书第2版)

C++语言导学(原书第2版)

本贾尼 斯特劳斯特鲁普

Publisher Resources

ISBN: 9787111562221