Merender gaya OpenStreetMaps khusus (tanah = putih, air = hitam): apakah saya perlu komputer khusus untuk melakukan ini?

10

EDIT: Tujuan saya BUKAN untuk menggunakan OpenStreetMap atau cloudmade sebagai peta web. Saya menggambarkan dengan tepat apa yang saya inginkan ("satu set ubin penuh yang dirasterisasi untuk seluruh dunia dengan zoom = 10 (sekitar 68 Gigapixels, air = hitam, tanah = putih, tanpa label"). Saya hanya bermaksud menggunakan cloudmade.com Tautan sebagai contoh untuk menggambarkan apa yang saya potret. (Seperti itu, gaya cloudmade hanya 90% dari perjalanan ke sana.) Saya perlu ubin offline. Saya perlu gambar (68 Gpix) yang saya jelaskan sebagai topeng dalam tugas peta raster yang lebih besar untuk peta khusus yang saya bangun menggunakan data NASA dan USGS.


Sebagai ilustrasi

Saya membuat gaya khusus yang menunjukkan apa yang saya inginkan:

(Tidak ada label, tidak ada jalan, tidak ada fitur apa pun kecuali semua fitur air (sungai, danau, samudera, sebut saja) sebagai hitam dengan tanah yang berwarna putih pekat, dan Mapnik antialiasing nilai yang bagus di antaranya.)


Apa yang sebenarnya saya inginkan

Saya ingin satu set ubin penuh raster untuk seluruh dunia dengan zoom = 10 (sekitar 68 Gigapixels).

Saya mempertimbangkan untuk mengunduh dan menginstal Planet.osm (11 GB terkompresi) dan menjalankan Mapnik (selama berhari-hari / minggu?) Untuk mendapatkan data ini. Namun, Planet.osm sepertinya akan memakan 100GB atau bahkan mungkin 1TB setelah basis data dan indeks dibangun. Saya tidak memiliki ruang disk seperti itu di laptop saya dan karena saya tidak memerlukan dataset lengkap, apakah ada subset data yang lebih kecil yang dapat saya unduh (katanya di sini bahwa data poligon hanya 700 MB)? Sebenarnya dari apa yang saya tahu, data telah dua kali lipat dalam satu tahun terakhir sehingga saya akan membutuhkan mesin gemuk untuk menangani ini.

Apakah ada cara langsung yang lebih mudah untuk mendapatkan ubin-ubin ini (level 10, hitam dan putih, cukup mendarat di atas air), atau apakah saya pada dasarnya memerlukan komputer khusus untuk melakukan ini?

Jared Updike
sumber
peta cloud itu terlihat sangat bagus. Sederhana tapi bagus. Putih hitam dengan biru muda bekerja sangat baik.
Nathan W
Tindak lanjut (dengan beberapa hasil awal yang sukses dari naturalearthdata.com): gis.stackexchange.com/questions/1917/…
Jared Updike

Jawaban:

7

Apakah Anda harus menggunakan OSM? atau apakah dataset vektor yang serupa tetapi lebih kecil cocok untuk Anda? Jika demikian pertimbangkan Bumi Alami ( http://naturalearthdata.com ) yang memiliki garis pantai skala 1: 10M yang bagus, luas daratan, samudera, sungai dan lapisan danau. Anda kemudian dapat menggunakan GeoServer atau MapServer secara lokal (atau pada server jarak jauh) untuk membuat ubin Anda pada kedalaman apa pun yang Anda butuhkan dengan cache ubin yang biasa (TileCache, GeoWebCache dll.)

Dari pertanyaan Anda bahkan tidak jelas bagi saya bahwa Anda perlu ubin - jika semua yang Anda inginkan adalah topeng maka Anda mungkin dapat melakukan ini menggunakan GRASS - v.toRaster () (saya pikir).

Ian Turton
sumber
Saya pikir maksud Anda naturalearthdata.com
Jared Updike
Anda benar - saya sudah memperbaikinya.
Ian Turton
4

Anda tidak perlu mengunduh seluruh dataset.

Anda cukup mengunduh file poligon dari

http://downloads.cloudmade.com/

atau

Sedikit lebih mutakhir (31/08/2010) http://download.geofabrik.de/osm/

hack kotor (tidak disarankan)

Ubin default (256x256px)

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

Perhatikan 1 = StyleID jadi jika Anda mengganti Style dengan ID Anda

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

http://b.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/ 22688 /256/15/17599/10746.png Anda mendapatkan ubin 256x256px dalam format png dengan gaya Anda. Sebuah skrip dapat digunakan untuk mengunduh semua yang diperlukan.

Meskipun saya akan mendaftar untuk kunci api web lite dan hanya menggunakan api untuk menanamkan dalam iframe. (seperti yang direkomendasikan cloudmade)

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

Mapperz
sumber
3

Saya tidak mengerti mengapa Mapperz berpikir bahwa menggunakan API yang terdokumentasi adalah "hack kotor", tetapi - Anda dapat menggunakannya secara bebas tanpa batas untuk mengunduh semua ubin yang Anda butuhkan. Ini pasti akan lebih mudah dilakukan daripada:

  • unduh datanya
  • instal dan atur Mapnik
  • menulis gaya Mapnik XML
  • coba jalankan generate_tiles.py
  • paling pasti mengalami masalah dengan salah satu dari langkah-langkah ini

Jadi, jawaban untuk pertanyaan OP adalah: cukup tulis skrip yang akan menggunakan API HTTP CloudMade untuk mengunduh ubin.

EDIT: Jika Anda bermaksud melakukan rendering sendiri, maka saya sarankan Anda mulai dengan membaca instalasi Mapnik dan panduan XML . Untuk menghasilkan ubin Anda harus menggunakan utilitas ini dari repo OpenStreetMap.

Untuk pertanyaan apa pun tentang Mapnik, Anda dapat menggunakan milis mapnik-pengguna atau mengunjungi saluran #mapnik IRC di FreeNode.

mishok13
sumber
2
The in the Terms: cloudmade.com/terms_conditions Anda harus menggunakan API - alih-alih langsung 'menggores ubin' Istilah yang sama berlaku untuk Google Maps API Penting: Menggores gambar ubin dari server Google karena alasan apa pun melanggar persyaratan layanan dan tidak disarankan.
Mapperz
Saya pikir itu akan sangat keren untuk membuat Mapnik mengatur dan melempar Planet.osm ke dalamnya tetapi kedengarannya seperti komputer / hard disk saya saat ini tidak memadai. Tapi saya akan menyimpannya di daftar opsi saya. Setelah dipikir-pikir, mungkin saja ada seseorang dengan Planet.osm yang sudah diimpor ke Mapnik untuk membuat dump OSM dari hanya lapisan (air / tanah) yang saya butuhkan. Setidaknya saya harus bertanya di saluran IRC. Itu bisa bermanfaat.
Jared Updike
3

Jika yang Anda butuhkan hanyalah garis pantai, garis pantai itu hanya bisa dimiliki 260MB: http://hypercube.telascience.org/~kleptog/

Saya mendukung saran Bumi Alam di atas; Anda akan merasa lebih tampan dan lebih cepat membuat tingkat yang lebih rendah. Anda hanya perlu repot dengan OSM itu sendiri pada zoom 8 ke atas, atau lebih (coba beberapa tes untuk melihat)

Michal Migurski
sumber
Apakah ini air tawar? (Danau, evakuasi, sungai?) Saya dapat menghitung garis pantai saya sendiri dari set data ketinggian SR 50m / 500m. Sejujurnya saya berharap untuk mendapatkan ubin raster dari semua air (segar dan garam) bersama karena itu akan bekerja secara seragam dalam pengaturan (kustom) saya saat ini. Gaya Cloudmade saya tunjukkan dalam beberapa inci menjadi sempurna, tetapi tidak - itu tidak benar-benar hitam dan putih (tidak yakin bagaimana cara memperbaikinya) dan untuk beberapa alasan ada label acak di sana-sini, yang saya benar-benar tidak inginkan dan tidak tahu cara menghapus.
Jared Updike