Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 5 Min.

CartoType: Karte nach Maß

Mit CartoType gibt es ein System, das Google Maps und Co. ersetzen kann und dabei das kompakte Dateiformat CTM1 nutzt. Mit durchaus vertretbarem Aufwand lassen sich solche CTM1-Kartendateien auch nach eigenen Bedürfnissen selbst erstellen.
© EMGenie

Dass CartoType auf CTM1-Dateien setzt, haben wir beispielsweise unter [1] besprochen. Nun ist es an der Zeit, die Erstellung eigener CTM1-Dateien vorzustellen. CTM1-Dateien sind ein hochoptimiertes Containerformat, das die normalerweise sehr umfangsreichen OSM-Dateien in ein kompakteres Format zu bringen sucht. Für die Generierung ist in jedem Fall ein auf der eigenen Workstation installiertes System nötig – die Art und Weise der Datenbeschaffung dagegen hängt vom Umfang der Karte ab.

Kleinere und mittlere Kartenabschnitte mit direktem Download konvertieren

Voraussetzung für die Arbeit mit hauseigenen Karten ist zunächst das Beschaffen der OpenStreetMap-Informationen. Dabei existieren jedoch Hürden: Zur Vermeidung unbotmäßiger Serverkosten beschränkt das OpenStreetMap-Entwicklerteam die Downloadmöglichkeiten für Kartendaten hinsichtlich des Datenumfangs.

Der einfachste Weg ist das Besuchen eines nach dem Schema https://www.openstreetmap.org/export#map=11/47.5214/19.1183 aufgebauten URL, wo über die Exportieren-Funktion das Herunterladen kleiner Map-Tiles möglich ist.

Bei Auswahl vergleichsweise großer Bereiche wirft das Programm stattdessen wie in Bild 1 gezeigt eine Fehlermeldung, die auf blockierte Downloadfunktion im Browser hinweist.

Dieser Kartenziegel ist zu groß (Bild 1)

Dieser Kartenziegel ist zu groß (Bild 1)

© Autor

Als Nächstes bietet sich das Anklicken des Links Overpass API an, der in vielen Fällen größere Tiles bereitstellt. Die heruntergeladene Datei map sollte danach sofort unter Nutzung des Windows Explorers in map.osm umbenannt werden – zu beachten ist, dass selbst der kleine in Bild 1 gezeigte Ausschnitt bereits 1,3 GByte Daten umfasst.

Sodann ist der von CartoType bereitgestellte Kartenkonverter makemap notwendig. Zu beachten ist, dass die Version des dort hochgeladenen Programms – siehe auch Bild 2 – zur lokal verwendeten CartoType-Version passen muss. Die rund 9,5 MByte große Datei ist dabei ohne weitere Installation ausführbar.

Ein Versionsabgleich ist dringend empfohlen (Bild 2)

Ein Versionsabgleich ist dringend empfohlen (Bild 2)

© Autor

Im nächsten Schritt gilt es, die heruntergeladenen Daten unter Verwendung von makemap in eine normale CartoType-Datei umzuwandeln. Hierzu ist folgende Parametrierung ideal:

 

PS C:\Users\tamha\Desktop\NMGCartoType\Online - Make Maps> .\makemap.exe .\map.osm

 

Die Ausgabe von nach dem folgenden Schema aufgebauten Statusinformationen zeigt dann an, dass das Programm mit dem Einlesen und der Verarbeitung der als XML-Datei vorliegenden Informationen begonnen hat:

 

info: 10000 raw OSM objects loaded
info: 20000 raw OSM objects loaded
info: 30000 raw OSM objects loaded
info: 40000 raw OSM objects loaded

 

Nach getaner Arbeit informiert makemap nach folgendem Schema über die erzeugten Ausgabedateien:

 

info: output file 'map.ctm1' now fully written and closed
info: generated file in 0d, 00h:02m:36s (156 seconds in total)
PS C:\Users\tamha\Desktop\NMGCartoType\Online - Make Maps>

 

Die resultierende CTM1-Datei kann danach in die CartoType-Maps-Demoapplikation geladen werden, um das korrekte Funktionieren der konvertierten Datei zu verifizieren.

Parametrierung von makemap zur Erreichung der optimalen Kartenergebnisse

Angesichts der immensen Datenmengen ist klar, dass ein schlecht parametriertes Geoinformationssystem ein Garant für Performanceprobleme ist. CartoType bietet aus diesem Grund verschiedene Einstellungsmethoden zur Steigerung der Leistung an.

Beispielsweise ist es in CartoType möglich, verschiedene Daten vorauszuberechnen oder – zwecks geringerem Speicherplatzbedarf – aus der Enddatei zu entfernen. Die Eingabe von .\makemap.exe -help führt dabei zur Ausgabe der in Bild 3 gezeigten Hilfeinformationen.

makemap zeigt sich durchaus hilfsbereit (Bild 3)

makemap zeigt sich durchaus hilfsbereit (Bild 3)

© Autor

In der CartoType-Dokumentation finden sich einige durchgerechnete Beispiele, die beispielsweise auf die Optimierung von CartoType-Weltkarten für Telefone mit geringem Arbeitsspeicher eingehen.

Herunterladen und Konvertieren großer Datenmengen

Bei großen Datenmengen kann das Herunterladen aus verschiedenen Gründen scheitern. Geofabrik.de stellt deshalb eine Webseite bereit, die ganze Länder oder Regionen als komprimierte OSM-Dateien anbietet. Für die nachfolgend gezeigten Schritte wollen wir die rund 300 MByte große Datei slovakia-latest.osm.pbf verwenden.

Diese Datei liegt im ProtoBuffer-Format vor, für dessen Umwandlung das Konversionswerkzeug Osmconvert notwendig ist. Zu beachten ist hier, dass das Werkzeug unter Windows in der 64-Bit-Variante verschiedene Probleme aufweist, die in Bild 4 aufgelistet sind – die Verwendung der Linux-Version kann zu stabileren Ergebnissen führen.

Die 64-Bit-Version verursacht mitunter Probleme (Bild 4)

Die 64-Bit-Version verursacht mitunter Probleme (Bild 4)

© Autor

Die unter http://m.m.i24.cc/osmconvert.exe bereitstehenden Binärdateien gelten dabei als „Canonical Source“ – zu beachten ist, dass der Download wegen der Nicht-Unterstützung des unsicheren HTTP-Protokolls in einigen modernen Browsern etwas Zureden voraussetzt.

Eine naive Ausführung des Programms liefert dann – wie gezeigt – die diversen OSM-Objekte in die Standardausgabe:

 

PS C:\Users\tamha\Desktop\NMGCartoType\Online - Make Maps>
    <node id="270324301" lat="48.3685122" lon="18.6080048" version="2" timestamp="2013-03-15T12:33:26Z" changeset="0"/>
    <node id="270324302" lat="48.3672542" lon="18.6113352" version="1" timestamp="2008-06-14T17:46:15Z" changeset="0"/>
    <node id="270324303" lat="48.3673775" lon="18.6129036" version="2" timestamp="2013-03-15T12:33:26Z" changeset="0"/>
    ...

 

Eine für makemap brauchbare Datei entsteht nur unter folgender Parametrierung:

 

PS C:\Users\tamha\Desktop\NMGCartoType\Online - Make Maps> .\osmconvert.exe .\slovakia-latest.osm.pbf > slovakia.osm

 

Zu beachten ist, dass dieser Prozess einige Zeit in Anspruch nimmt und aufgrund der Komplett-Umleitung in die Datei keine Statusausgaben liefert. Nach getaner Arbeit lässt sich die Datei slovakia.osm dann nach folgendem Schema an das weiter oben beschriebene makemap verfüttern:

 

PS C:\Users\tamha\Desktop\NMGCartoType\Online - Make Maps> .\makemap.exe slovakia.osm
notice: C:\Users\tamha\Desktop\NMGCartoType\Online - Make Maps\makemap.exe built using CartoType 8.12-68-g2e7fd9f32
...

 

Als Ergebnis erhalten wir die Datei slovakia.ctm1, die danach beispielsweise in der Maps-Demoapplikation geladen werden kann. Auf der vergleichsweise betagten AMD-FX8320-Workstation des Autors gab das Programm folgende Informationen über die Rechenzeit aus:

 

info: generated file in 0d, 00h:12m:49s (769 seconds in total)

 

Interessant ist hier auch die Möglichkeit zu einem Größenvergleich: Bild 5 zeigt, wie sich die verschiedenen Dateiformate in Bezug auf den Platzbedarf verhalten.

Die drei Datenformate im Größenvergleich (Bild 5)

Die drei Datenformate im Größenvergleich (Bild 5)

© Autor

Fazit

Die hier besprochenen Vorgehensweisen demonstrieren, wie OpenStreetMap-Informationen in ein für CartoType brauchbares Format gebracht werden können. Zu bedenken ist, dass angesichts der hohen Ansprüche an die Systemleistung die Verwendung eines Cloudservers sinnvoll sein kann.

[1] Tam Hanna, Mapping, Marke Eigenbau, dotnetpro 4/2026, Seite 122 ff.

Neueste Beiträge

Haben wir nichts gelernt? - Verständnis statt Fertiglösung – auch beim Umgang mit KI
Ein KI-Experiment des Autors schlug hohe Wellen – die Reaktionen offenbaren jedoch einen alten Fehler der Softwareentwicklung: die Suche nach der Abkürzung.
7 Minuten
26. Aug 2026
Planen, patchen, prüfen mit Kimi - Kimi K3 – das Modell hinter dem Agenten, Teil 3
Ein starkes Modell allein schreibt noch keinen verlässlichen Code. Erst im Repository zeigt sich, ob aus künstlicher Intelligenz ein brauchbarer Entwicklungspartner entsteht oder aber ein Risiko mit Shell-Zugriff.
5 Minuten
Wenn Tests mitdenken
Wie KI-Agenten die Validierung von Embedded-Systemen neu definieren.
7 Minuten

Das könnte Dich auch interessieren

C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
DDC hakt nach: Steiniger Weg von WPF zu Avalonia?
WPF hat ausgedient? Wer ein modernes User Interface über alle Plattformen hinweg entwickeln will, kommt an Avalonia UI kaum vorbei. Doch was taugt Avalonia im Vergleich zu MAUI oder Blazor? Dieses Interview räumt mit Mythen auf – und zeigt, worauf sich Entwickler:innen einstellen müssen.
5 Minuten
13. Okt 2025
WPF unter Linux und macOS
Mit Avalonia XPF tauscht das Avalonia-Team den Unterbau von WPF aus, um das UI-Framework für Linux und macOS fit zu machen.
6 Minuten
27. Aug 2025
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige