2D对象分发算法

时间:2015-12-30 09:04:42

标签: algorithm gis graphics2d

我必须以这样的方式对齐元素以避免它们相交,但不要将它们移动太远:

Before and after

为简单起见,元素是矩形(实际上是边界框)。元素只能通过它的法线向量移动(可以是任何角度)。

有没有可以在这里使用的众所周知的算法?每次大约需要对齐50-200个元素(延迟很重要,应该是几毫秒),我不知道认为,蛮力是一个好主意(但还没有尝试)

更深入:我必须实施街道名称标签。让我们说,我有矢量线(街道),现在,文本应该沿着这些矢量显示(它可以旋转,而不是扭曲)。但是文本不应该重叠很多,所以我必须沿着它的矢量线移动它。也许是这个东西的一些算法?

所有这些都发生在运行时,当用户在街道上导航时。

PS:我使用Qt(简单的QPainter,而不是图形框架)

1 个答案:

答案 0 :(得分:0)

好的,经过很长一段时间,我发现了一些合适的内容:Automatic label placementDynamic Label Placement in Practice