【发布时间】:2017-10-27 09:17:02
【问题描述】:
给定的问题是找到一种方法来有效地返回所有被射线击中的盒子。
所以我想出了一个主意,但我想在浪费时间编写不起作用的东西之前先了解您的意见。
基本上,这个想法是有一个高度 = 宽度的盒子网格,所有这些盒子的大小相同,彼此之间没有间隙,我还有一个计算盒子索引的函数属于一个点。(该点在哪个框内)
现在我计算网格周围的一个框,并计算带有边缘的射线的命中点。 所以我知道相交点,当然还有光线的方向,现在我确定方向,对其进行归一化并将其除以 2。(我不确定是否需要 /2,但我感觉更好) 结果向量现在是我的“步长”。 (我称这个向量为 v) 因此,如果我现在将我的第一个交点添加 v,计算属于结果点的框并一次又一次地执行此操作,直到我到达我的第二个交点,我不应该错过任何框。 (对吧?)
但我不确定,所以我征求您的意见。
【问题讨论】:
-
So I came up with an idea but I want toknow your oppinion before I waste time in programming something not working.对您的解决方案进行编程以查看其是否正常工作绝不是浪费时间。 -
我投票结束这个问题作为离题,因为作者甚至没有尝试自己实施和测试他的想法。
-
顺便说一下,这里有一个提示:光线会在它接触到的每个块中进入和退出恰好一个位置。出口位置与进入下一个街区的入口位置相同。