Apakah mungkin di Leaflet atau OpenLayers untuk membandingkan dua peta dengan bilah untuk meluncur di antara keduanya?
Contohnya termasuk:
http://www.esri.com/services/disaster-response/hurricanes/hurricane-sandy-the-aftermap- http://www.arcgis.com/apps/StorytellingSwipe/index.html?appid=c62112f6ba834227978d8f1cf2b6f5af
- http://www.abc.net.au/news/specials/qld-floods/ (bukan peta)
Saya tahu itu mungkin, saya tidak tahu bagaimana melakukannya. Ada yang punya ide? Contohnya?
openlayers-2
web-mapping
leaflet
swipe
Alex Leith
sumber
sumber
Jawaban:
Apa yang ingin Anda lakukan, biasanya disebut alat 'Gesek'.
Tidak ada alat bawaan atau kontrol untuk ini di OpenLayers, tapi untungnya, ada contoh di sini: Kontrol Gesek dengan Google dan OSM berdasarkan kelas kustom.
Anda hanya perlu memasukkan file JavaScript ini ke dalam aplikasi Anda.
Sebagian besar Alat Swipe / kontrol yang saya lihat online, didasarkan pada klip CSS sederhana. Sangat mudah untuk mengintegrasikan Kontrol semacam ini di aplikasi Anda bahkan tanpa tambalan eksternal.
sumber
Mangga melakukannya dengan Leaflet. Lihat contoh di sini .
Tentu saja Anda bisa menghemat waktu untuk membuat kode sendiri dan cukup membuat peta secara gratis menggunakan Mango.
sumber
Ini adalah contoh Leaflet yang berfungsi menggunakan dua layer WMS dan leaflet 0.5. Itu memang perlu sedikit penyesuaian, misalnya lapisan tidak terpotong saat menggeser. Tapi itu bekerja dengan cukup baik.
Lihat di sini: https://github.com/gccgisteam/leaflet-examples/blob/master/leafletSwipe.html
sumber
Lihatlah WMS Split for Leaflet.
sumber
itu mungkin dengan selebaran. di sini yang saya lakukan adalah menggesek peta dengan leaflet dan jquery.
sumber
Anda mungkin harus melihat ke dalam OpenLayers 3. Anda dapat melihat kode contoh dengan menggunakan CTRL + U: Kode juga tidak terlihat terlalu rumit:
http://openlayers.org/en/v3.1.1/examples/layer-swipe.html
sumber
Saya menggunakan ekstensi Openlayers 3 dan 4 yang bagus oleh viglino. Anda dapat menemukan contoh alat Gesek dan Peta yang disinkronkan di sini.
http://viglino.github.io/ol3-ext/examples/map.control.swipe.html
http://viglino.github.io/ol3-ext/examples/map.interaction.synchronize.html
Repositori GitHubnya berada di sini: https://github.com/Viglino/ol3-ext
Contoh-contoh itu termasuk dalam repositori GitHub.
sumber