ラベルはどのようにしてラインまたはポリゴンに動的に配置されますか?


9

マップ上のラインまたはポリゴンのラベルの理想的な位置、スケール、回転を見つける際に、関係する数学、または関係する数学を学習するためのリソースを誰かが知っているかどうか疑問に思いましたか?

私がこれまでに得た最大のものは、ポリゴンの重心を見つけることです(ただし、凹型ポリゴンには理想的ではありません)。


これは手動で行うのが最善だと思います。
ジョナス

関連リソース:citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.54.8844カートグラフィックラベル配置の計算の複雑さ。引用には、他の関連参照が含まれます。
グレノン2010

回答:




2

重心は決して答えではありませんが、それは良い最初の推測です。同様の問題を解決する、最も実装が簡単なアルゴリズムは、通常、再現可能な疑似ランダム位置をいくつか試し、何らかの方法でそれらをスコアリングして、最良のスポットを維持することによって機能します。さらに読むために、私はビンパッキングアルゴリズムを読んで、そこからそれをとることから始めます。


1

ラベル付けは厄介な作業です。

小規模:ラベルの重複問題があるので、どちらを削除するか、すべて表示する必要がありますか。

大規模:大きなポリゴンがある場合、どこにラベルを表示しますか。複数回表示しますか?


0

複雑なポリゴンの境界ボックスを計算し、その中央にラベルを配置するだけのマップを見てきました。

単純な線の場合、通常は2つの端点の真ん中です。

それは本当にあなたがあなたのデータが何であると期待しているか、そしてラベルの場所がどれほど重要であるかに依存するだけだと思います。


3
反対票はどうなっていますか?コメントが役に立つかもしれません。
ジョンブリングハースト2010

0

Javaを使用している場合は、GeoToolsとGeoServerのコードを検査できます。これは、修正が必要な新しいコーナーケースが次々と発生するため、常に進化している問題です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.