编程语言
首页 > 编程语言> > javascript – 有效确定点在2d空间中的哪个矩形

javascript – 有效确定点在2d空间中的哪个矩形

作者:互联网

我有一大堆在html5画布上绘制的矩形.

我希望能够使用鼠标跟踪与此图像进行交互(我不能使用SVG,因为它不能扩展到10-100k矩形).有没有任何数据结构/算法,给定鼠标x,y坐标能够告诉你鼠标在哪个框(使用矩形的计算位置)?我在想像k-d树,但不确定.

解决方法:

如果您的数据始终是显示的形式,我认为您应该能够比空间树数据结构做得更好.

由于数据的结构为y,因此您应该能够根据O(1)时间内的偏移量计算点所在的矩形“条带”.

如果按排序顺序存储每个“条带”中的单个矩形(使用xmax表示),则应该能够使用二进制搜索(在O(log(n))中找到条带内的特定矩形).

希望这可以帮助.

标签:javascript,algorithm,data-structures,html5-canvas,kdtree
来源: https://codeday.me/bug/20190529/1181163.html