Buat Ubin Vektor untuk Polymaps

14

Ok, kemungkinan buruk saya karena tidak berhasil ke WhereCamp5280 dan meminta Geeks FortiusOne secara langsung, tapi apa proses untuk membuat 'ubin' GeoJSON untuk digunakan di Polymaps?

Contoh Population di polymaps.org mencatat bahwa data untuk demo berjalan di Google AppEngine, dan menyinggung "menggulung ubin Anda sendiri", tetapi sepertinya saya tidak dapat menemukan informasi lebih lanjut ...

Adakah yang punya wawasan yang bisa mereka bagikan?

Terima kasih!

Dave Bouwman
sumber

Jawaban:

12

TileStache pasti akan melakukannya, khususnya penyedia PostGeoJSON dalam koleksi penyedia tambahan . Perbedaan utama antara ini dan apa yang kami lakukan untuk contoh Polymaps adalah kliping poligon - setelah melihat seberapa besar Alaska bisa mendapatkan tingkat zoom yang lebih tinggi, kami memotong semua fitur dalam contoh Polymaps untuk mengurangi waktu muat dan sebagainya. Kami juga menghosting mereka dari AppSpot untuk memungkinkannya menambahkan tajuk Akses-Kontrol-Bolehkan-Asal untuk izin lintas-domain.

PostGeoJSON tidak keluar dari kotak, tetapi seperti yang tertulis di dokumen saya akan senang untuk mengembangkan kode lebih lanjut jika ada minat!

Pembaruan: Tampaknya pada Tilestache 1.9.0 Penyedia Vektor tampaknya lebih disukai daripada Penyedia PostGeoJSON .

Michal Migurski
sumber
2
Lihat komentar di bawah ini: Saya telah memperbarui penyedia PostGeoJSON agar lebih ramah- Polymaps
Michal Migurski
4

Saya sendiri pasti bertanya-tanya tentang ini karena ini adalah sesuatu yang ingin saya manfaatkan di Tile5 (http://tile5.org/) juga. Saya telah melihat Mike Bostock (yang bekerja dengan Stamen untuk memproduksi Polymaps) merespons melalui Twitter pada topik sebelum dan di sini adalah tautannya:

http://twitter.com/#!/mbostock/status/27659816563

Pasti ingin menemukan solusi mandiri yang bagus untuk masalah ini. Beberapa produk yang terlihat seperti langkah-langkah ke arah yang benar adalah:

  • Tilestache (http://tilestache.org/)
  • Geocouch (https://github.com/vmx/couchdb)

Akan menonton pertanyaan ini dengan penuh minat.

Bersulang,

Damon.

Damon Oehlman
sumber
Rupanya saya hanya bisa mengomentari jawaban saya sendiri: /
Damon Oehlman
@Michal - Pasti akan senang melihat kliping ditambahkan ke TileStache - kemungkinan membuatnya menangani parameter callback juga? Saya tahu JSONP bukan untuk selera semua orang, tapi saya pikir ini akan sangat berguna di sini ...
Damon Oehlman
Saya pasti dapat menambahkan kliping ke TileStache - akan memasukkannya ke dalam daftar! Kurang yakin tentang callback, sebagian besar karena hasilnya seharusnya sepenuhnya cacheable dan callback memecahnya. Mungkin saya membuat khusus kecuali untuk JSON karena itu adalah kebutuhan yang umum ...
Michal Migurski
Caching poin bagus di bagian depan JSONP. JSONP masih harus cukup cache mengingat panggilan balik di peta URL langsung ke pembungkus fungsi di output. Itu pasti akan menyebabkan cache mengasapi meskipun yang akan menjadi sakit. Saya pikir saya mungkin bercabang di Github dan bermain (waktu mengizinkan) :)
Damon Oehlman
Oke, saya menambahkan kliping sebagai opsi di TileStache: tilestache.org/doc/…
Michal Migurski
2

Anda dapat menggunakan ogr2ogr untuk membuat file GeoJSON statis untuk disajikan , tetapi tampaknya untuk saat ini Anda harus menulis layanan web Anda sendiri jika Anda ingin mengaktifkan kliping atau fungsi URL dinamis lainnya (tingkat zoom, dll) , dan saya tidak mengetahui adanya alat ubin yang akan membuat cache ubin dari kumpulan data, tapi sekali lagi itu bisa dilakukan dengan cukup mudah dengan proses batch dan berbagai -clip*opsi ogr2ogr . Meskipun untuk data vektor ini sepertinya tidak masuk akal karena akan memotong poligon menjadi potongan per ubin ketika mereka tumpang tindih, Anda mungkin akan lebih baik dengan pencarian kotak terikat.

Jason Scheirer
sumber
2

Dave - Sepertinya ada celah untuk diisi di sini. Pemotong ubin json yang berdiri sendiri yang bagus akan bagus untuk dimiliki (& bagus untuk mereka yang tidak menggunakan tilestache). Lihat modul python Bloch (via M. Migurski): https://github.com/migurski/Bloch (pikirkan mapshaper.org di baris perintah & python).

Seperti yang ditunjukkan Jason, proses pemasangan data agak mudah dan bisa dilakukan dengan cepat dengan menggunakan sesuatu seperti gdal2tiles sebagai titik awal dan mengubahnya menjadi dunia vektor.

Chris


sumber