Gibt es Open Source-Mapping-APIs / Toolkits zum Zeichnen von Achsen, Beschriftungen, Raster usw.?

9

Ich habe versucht, eine allgemeinere Frage an Meta zu senden, aber es ist meine erste Frage, daher hatte ich noch keinen Ruf.

Die erste Frage, die ich habe, ist, ob dies ein geeigneter Ort ist, um Fragen zur Verfügbarkeit von Softwarekomponenten zu stellen - APIs oder Toolkits für Kartierungen und geografische / geodätische Funktionen.

Wenn dies der richtige Ort ist: Ich würde sehr gerne eine Open-Source-Mapping-API finden, die entweder OpenGL oder eine der QT-Grafik-APIs wie QPaint verwendet - etwas, das Achsen und Raster, Skalen usw. zeichnet und beschriftet - wenn dies der Fall ist hatte geografische Einstiegspunkte (lat, lang) umso besser. Kartenunterlagen wären wunderbar.

Ich konnte trotz wiederholter Suche nichts finden, habe also viel Eigenes mit C ++ / QT / OpenGL geschrieben. Aber ich verbringe genauso viel Zeit mit meiner Infrastruktur wie mit meiner Anwendung, und ich möchte, wenn möglich, aus dieser Situation herauskommen.

Meine Anwendung ist in der Regel das Echtzeit-Plotten von Positionen von Unterwasserfahrzeugen und zugehörigen Daten.

jhowland
quelle
Ich denke, dies ist das perfekte Forum für diese Art von Fragen.
jswise

Antworten:

5

Klingt so, als ob die QGIS-API genau das sein könnte, wonach Sie suchen. Es ist in C ++ und Qt-basiert geschrieben. API-Dokumente finden Sie hier: http://doc.qgis.org/ . Mit dieser API können Sie alle Arten von Geodaten für Ihre Hintergrundkarte laden, Features beschriften usw.

Es gibt auch eine Anleitung zum Entwickeln eigener Anwendungen basierend auf der QGIS-API .

Da Ihr Anwendungsfall die Verfolgung von Fahrzeugen ist, könnte Sie auch der Code von QGIS GPS Tracker interessieren .

Unterdunkel
quelle
Die QGIS-API sieht ziemlich gut aus - ich hatte QGIS schon einmal gesehen, aber es war eine Weile her und ich wusste nicht, dass die API verfügbar war. Ich bin mir nicht sicher, ob es alles tut, was ich will, aber ich werde es weiter untersuchen. Viele der anderen Vorschläge bezogen sich auf Java-APIs und dergleichen - wenn sie keine C ++ - Bindung haben, sparen sie mir keine Zeit.
Jhowland
2

Ich würde Mapnik empfehlen . Es ist ein großartiges Werkzeug, um Karten und Kartenebenen zu erstellen. Es hat eine schöne Pythonic-Oberfläche ( Tutorial ) und ist weit verbreitet. Einer der bekanntesten Benutzer ist OpenStreetMap :

Mapnik ist die Software, mit der wir den Haupt-Slippy Map-Layer für OSM zusammen mit anderen Layern wie dem Layer "Cycle Map" und dem Layer "Noname" rendern.

Ein beeindruckendes Beispiel aus ihrem flickr-Fotostream: Alt-Text

Adam Matan
quelle
Mapnik sieht ziemlich gut aus - was ich jedoch nicht sehe, sind Äxte und Raster. Vielleicht kenne ich nicht die richtigen Suchbegriffe, um diese Dinge zu finden - es gibt viele Mapping-Toolkits, aber nur sehr wenige setzen Kartenmaßstäbe, Achsen, Tics und andere kartografische Elemente auf die Karte - für meine Anwendung, wo wir arbeiten häufig im offenen Ozean, dies sind wichtige Hilfsmittel für Benutzer, um die Karten zu verstehen
jhowland
1
AFAIK, das Hinzufügen von Achsen und Skalen erfolgt manuell. Weitere Informationen finden Sie in diesem kurzen Artikel: britishideas.com/2009/09/22/map-scales-and-printing-with-mapnik
Adam Matan