2015-12-30 27 views
1

我必須對準以這樣的方式的元件,以避免它們的交點,但不能移動它們太遠:2D對象分佈ALGO

Before and after

爲簡單起見,元件是矩形的(實際上包圍盒)。元素只能移動它的法向量(可以是任何角度)。

是否有任何知名的算法,可以在這裏使用?每次約50-200個元素必須對齊(延遲是物質,應該是幾毫秒),我不認爲,這個蠻力是一個好主意(但還沒有嘗試)

更深入:我必須實施街道名稱標籤。比方說,我有矢量線(街道),現在,應該沿着這些矢量顯示文本(它可以旋轉,而不是扭曲)。但是文本不應該重疊太多,所以我必須沿着它的矢量線移動它。也許這個東西有些算法?

所有這一切都發生在運行時,當用戶瀏覽街道。

PS:我使用Qt(簡單QPainter的,而不是圖形框架)

回答