Rendern eines benutzerdefinierten OpenStreetMaps-Stils (Land = Weiß, Wasser = Schwarz): Benötige ich dazu einen dedizierten Computer?

10

BEARBEITEN: Mein Ziel ist es NICHT, OpenStreetMap oder Cloudmade als Webkarte zu verwenden. Ich habe genau beschrieben, was ich will ("ein vollständiger, gerasterter Satz Kacheln für die ganze Welt bei Zoom = 10 (ca. 68 Gigapixel, Wasser = Schwarz, Land = Weiß, keine Beschriftungen"). Ich wollte nur cloudmade.com verwenden Link als Beispiel, um zu veranschaulichen, wofür ich fotografiere. (Der Cloudmade-Stil ist nur zu 90% vorhanden.) Ich benötige die Kacheln offline. Ich benötige das Bild (68 Gpix), das ich als Maske beschrieben habe In einer größeren Rasterkartenaufgabe für eine benutzerdefinierte Karte erstelle ich mit NASA- und USGS-Daten.


Als Illustration

Ich habe einen benutzerdefinierten Stil erstellt, der zeigt, was ich will:

(Keine Beschriftungen, keine Straßen, keine Merkmale jeglicher Art außer allen Wasserspielen (Flüsse, Seen, Ozeane, wie Sie es nennen) als schwarz mit festem Weiß und dem netten Mapnik-Antialiasing von Werten dazwischen.)


Was ich wirklich will

Ich hätte gerne einen vollständigen, gerasterten Satz Kacheln für die ganze Welt bei Zoom = 10 (ca. 68 Gigapixel).

Ich habe überlegt, Planet.osm (11 GB komprimiert) herunterzuladen und zu installieren und Mapnik (für Tage / Wochen?) Auszuführen , um diese Daten zu erhalten. Planet.osm sieht jedoch so aus, als würde es 100 GB oder sogar 1 TB dauern, sobald die Datenbank und der Index erstellt sind. Ich habe nicht so viel Speicherplatz auf meinem Laptop und da ich nicht den vollständigen Datensatz benötige, gibt es eine kleinere Teilmenge der Daten, die ich herunterladen könnte ( hier steht, dass die Polygondaten nur 700 MB groß sind)? Soweit ich weiß, haben sich die Daten im letzten Jahr verdoppelt, sodass ich eine leistungsfähige Maschine benötigen würde, um damit fertig zu werden.

Gibt es eine einfachere und direktere Möglichkeit, diese Kacheln (Stufe 10, Schwarzweiß, nur auf dem Wasser landen) zu stapeln, oder benötige ich dazu einen dedizierten Computer?

Jared Updike
quelle
Diese Wolkenkarte sieht wirklich gut aus. Einfach aber nett. Das Weiß auf Schwarz mit dem Hellblau funktioniert wirklich gut.
Nathan W
Follow-up
Jared Updike

Antworten:

7

Haben Sie haben zu OSM verwenden? oder würde ein ähnlicher, aber kleinerer Vektordatensatz für Sie funktionieren? Wenn ja, ziehen Sie die natürliche Erde ( http://naturalearthdata.com ) in Betracht, die eine schöne Küstenlinie, Landfläche, Ozean-, Fluss- und Seeschichten im Maßstab 1: 10M aufweist. Sie können dann GeoServer oder MapServer lokal (oder auf einem Remote-Server) verwenden, um Ihre Kacheln in einer beliebigen Tiefe mit einem der üblichen Kachel-Caches (TileCache, GeoWebCache usw.) zu erstellen.

Aus Ihrer Frage geht mir nicht einmal klar hervor, dass Sie Kacheln benötigen. Wenn Sie nur eine Maske benötigen, können Sie dies wahrscheinlich mit GRASS - v.toRaster () tun (glaube ich).

Ian Turton
quelle
Ich denke du meinst naturalearthdata.com
Jared Updike
Sie haben Recht - ich habe es behoben.
Ian Turton
4

Sie müssen nicht den gesamten Datensatz herunterladen.

Sie können die Polygondateien einfach von herunterladen

http://downloads.cloudmade.com/

oder

Etwas aktueller (31.08.2010) http://download.geofabrik.de/osm/

Dirty Hack (nicht empfohlen)

Eine Standardkachel (256x256px)

http://b.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/ 1 / 256/15/17599/10746.png

Beachten Sie die 1 = StyleID , wenn Sie den Style durch Ihre ID ersetzen

http://maps.cloudmade.com/?styleId= 22688 #

http://b.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/ 22688 /256/15/17599/10746.png Sie erhalten die Kachel 256x256px im PNG-Format mit Ihrem Stil. Ein Skript kann verwendet werden, um alle erforderlichen Dateien herunterzuladen.

Obwohl ich mich für den Web-Lite-API-Schlüssel anmelden und die API nur zum Einbetten in einen Iframe verwenden würde. (wie von cloudmade empfohlen)

Quelle: http://developers.cloudmade.com/projects/tiles/documents

Mapperz
quelle
3

Ich verstehe nicht, warum Mapperz die Verwendung der dokumentierten API für einen "schmutzigen Hack" hält, aber trotzdem - Sie können sie ohne Einschränkungen frei verwenden, um alle benötigten Kacheln herunterzuladen. Es wird definitiv einfacher sein als:

  • Laden Sie die Daten herunter
  • Installieren und Einrichten von Mapnik
  • Schreiben Sie das XML im Mapnik-Stil
  • Versuchen Sie, generate_tiles.py auszuführen
  • Auf jeden Fall stoßen Sie bei einem dieser Schritte auf obskure Probleme

Die Antwort auf die Frage von OP lautet also: Schreiben Sie einfach das Skript, das die HTTP-API von CloudMade zum Herunterladen der Kacheln verwendet.

BEARBEITEN: Wenn Sie das Rendern tatsächlich selbst durchführen möchten, sollten Sie zunächst die Mapnik- Installations- und XML- Anleitungen lesen . Um die Kacheln zu generieren, müssen Sie dieses Dienstprogramm aus OpenStreetMap Repo verwenden.

Bei Fragen zu Mapnik können Sie gerne die Mailingliste der Mapnik -Benutzer verwenden oder den IRC-Kanal #mapnik auf FreeNode besuchen.

mishok13
quelle
2
Die in den Nutzungsbedingungen: cloudmade.com/terms_conditions Sie müssen die API verwenden - und nicht das direkte "Kacheln". Die gleichen Bestimmungen gelten für die Google Maps-API. Wichtig: Das Verschrotten der Kachelbilder von den Servern von Google verstößt aus irgendeinem Grund gegen die Nutzungsbedingungen und wird nicht empfohlen.
Mapperz
Ich denke, es wäre ziemlich cool, Mapnik einzurichten und Planet.osm hineinzuwerfen, aber es klingt so, als ob mein aktueller Computer / meine aktuelle Festplatte nicht ausreicht. Aber ich werde es auf meiner Liste der Optionen behalten. Beim zweiten Gedanken ist es möglicherweise möglich, jemanden mit Planet.osm, der bereits in Mapnik importiert wurde, dazu zu bringen, einen OSM-Dump mit nur den Schichten (Wasser / Land) zu erstellen, die ich benötige. Ich sollte zumindest auf dem IRC-Kanal fragen. Das könnte fruchtbar sein.
Jared Updike
3

Wenn Sie nur die Küsten benötigen, können Sie diese für nur 260 MB nutzen: http://hypercube.telascience.org/~kleptog/

Ich stimme dem Vorschlag der natürlichen Erde oben zu; Sie werden feststellen, dass es besser aussieht und schneller für die niedrigeren Ebenen gerendert werden kann. Sie müssen sich nur bei Zooms 8 und höher mit OSM selbst beschäftigen (versuchen Sie es mit ein paar Tests).

Michal Migurski
quelle
Hat das Süßwasser? (Seen, Stauseen, Flüsse?) Ich kann meine eigene Küste aus den SRTM-Höhendatensätzen von 50 m / 500 m berechnen. Ehrlich gesagt hatte ich gehofft, gerasterte Kacheln mit allem Wasser (frisch und salzig) zusammen zu bekommen, da dies in meinem aktuellen (benutzerdefinierten) Setup einheitlich funktionieren würde. Der Cloudmade-Stil, den ich gezeigt habe, ist nur wenige Zentimeter von der Perfektion entfernt, aber nicht - er ist nicht wirklich schwarz und weiß (ich weiß nicht, wie ich das beheben soll) und aus irgendeinem Grund gibt es hier und da zufällige Beschriftungen, die ich wirklich nicht will und kann nicht herausfinden, wie man entfernt.
Jared Updike