gpt4 book ai didi

c# - 在 map 上视觉分离重叠车辆的最佳算法是什么?

转载 作者:太空狗 更新时间:2023-10-29 23:48:27 25 4
gpt4 key购买 nike

我正在寻找一种算法,使我能够在 map 上足够靠近的大量车辆中以视觉方式将任意两到四辆车辆分开,从而使它们相互遮挡。我需要过滤掉超过四辆车的情况,因为车辆会大量聚集在某些区域,在这些情况下将它们分开并不重要。该算法还应标记已经处理过的车辆。

在我的问题空间中,知道车辆存在并能够看到有关它们的信息比获得关于它们位置的绝对准确信息更为重要。

想法是增加大约 10 码(考虑到正在使用的 map 比例尺),以便可以看到个别车辆,而不是被附近的其他车辆遮挡。

我想过几种方法来做到这一点,但考虑到这里答案的质量以及有人可能已经这样做的事实,我想我会发布这个问题。

我正在添加当前显示的图像,以帮助澄清建议的评论之一(好吧,这不是图表,但这是实际显示给用户的图像)。

一些答案​​需要更改用于指示给定位置有多少车辆(高尔夫球车)的视觉队列。我不想改变用户在视觉上的期望,而必须向用户解释其含义。使用正方形的答案最接近我正在寻找的答案,但这只是视觉部分。我也在寻找一种算法,用于如何最好地遍历列表,找到彼此相距 n(比方说 5)码以内的 2 到 4 辆高尔夫球车的组,同时忽略更大的组(手推车谷仓、 snackbar 等)。图标上的数字对应于购物车编号。

此应用程序还允许用户放大/缩小 map ,因此 map 缩小得越远,汽车之间的距离就越大,这样它们就不会在视觉上重叠。

请注意图片中的汽车 78 和 62 遮挡了它们后面的汽车。

alt text

最佳答案

Google 术语是 label placement .总的来说,这本身就是一个完整的研究领域,并没有真正好的通用解决方案,但对于像这样的特定场景,有几个合适的实现。 Wikipedia/Automatic label placement也是一个很好的起点。

根据您的图像,您预计重叠标签很少,那么您可以采用针对速度进行优化的简单贪心算法。

关于c# - 在 map 上视觉分离重叠车辆的最佳算法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3928429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com