使用什么算法在2D中查找空白区域?

时间:2018-08-17 08:28:03

标签: algorithm unity3d 3d 2d

我有3d元素(触发器),当单击它们时会生成内容框。我正在搜索一个算法,该算法会在靠近触发器的空白区域生成元素。 2d方法可能就足够了,因为内容框需要面对用户。 生成的内容框不应与触发器对象重叠,也不应与其他3d元素/内容框重叠。

示例 : 如果触发器是长竖管,则第一个内容框可能会在其左侧生成,第二个内容框可能会在右侧生成,因为左侧已被内容框1占用。第三个内容框则可能在第一个内容框上方/下方生成。或如果还有其他东西,则在第一个内容框的左侧。

这应该实时工作,它不一定是实际的最接近点,但应旨在使所有内容紧密地结合在一起。我认为这是很多人在我之前解决的问题,但是以某种方式我找不到足够的信息,也许我缺少正确的搜索词,很高兴听到有关不同方法,提示和想法的信息。

谢谢

星期五

1 个答案:

答案 0 :(得分:1)

尝试在平面或空间中的现有点上创建网格。该网格可以是每个存在点上的两条垂直线。之后,创建一棵树以在该空间上搜索。或者只是在这些点上创建一个kd树。您可以在计算几何上下文中找到更多有关这些的信息。