Ich habe mich gefragt, ob jemand die Mathematik oder die Ressourcen zum Erlernen der Mathematik kennt, um die ideale Position, Skalierung und Drehung einer Beschriftung für eine Linie oder ein Polygon auf einer Karte zu finden.
Das Beste, was ich bisher habe, ist das Finden des Schwerpunkts für ein Polygon (obwohl es nicht ideal für konkave Polygone ist).
Antworten:
Ein Forschungsbericht, der sich mit diesem schwierigen Problem befasst: http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=4015429
quelle
Vielleicht ist die Dokumentation der PAL-Kennzeichnungsbibliothek ein guter Anfang für die weitere Forschung. Ich empfehle insbesondere "Von der Platzierung der Punkt-Feature-Beschriftung zur Kartenbeschriftung" .
quelle
Centroid ist nie die Antwort, aber es ist eine gute erste Vermutung. Die am einfachsten zu implementierenden Algorithmen, die ähnliche Probleme lösen, funktionieren normalerweise, indem einige reproduzierbare pseudozufällige Positionen ausprobiert und irgendwie bewertet werden, wobei die besten Stellen erhalten bleiben. Zum weiteren Lesen würde ich zunächst die Algorithmen zum Packen von Behältern nachlesen und von dort übernehmen.
quelle
Das Etikettieren ist ein böses Unterfangen.
In kleinem Maßstab: Sie haben Probleme mit der Überlappung von Etiketten. Welche entfernen Sie oder sollten alle angezeigt werden?
In großem Maßstab: Wenn Sie ein großes Polygon haben, wo zeigen Sie die Beschriftung an? Zeigen Sie es mehrmals an.
quelle
Ich habe Karten gesehen, auf denen sie nur einen Begrenzungsrahmen für ein komplexes Polygon berechnen und die Beschriftung in der Mitte davon platzieren.
Bei einfachen Linien ist es normalerweise nur die Mitte der beiden Endpunkte.
Ich denke, es hängt wirklich nur davon ab, was Sie von Ihren Daten erwarten und wie wichtig der Ort des Etiketts ist.
quelle
Sie können den Code in GeoTools und GeoServer überprüfen, wenn Sie Java verwenden. Dies ist ein sich ständig weiterentwickelndes Problem, da immer wieder neue Eckfälle auftreten, die behoben werden müssen.
quelle