Meskipun saya menggunakan Leaflet dalam aplikasi webGIS saya, OpenLayers memiliki lebih banyak keunggulan dibandingkan Leaflet. Sebagai contoh jika Anda ingin menggunakan aplikasi Anda di perangkat seluler, OpenLayers adalah suatu keharusan untuk saat ini.
Ada banyak sumber daya yang terkait dengan OpenLayers, namun saya pikir mengembangkan aplikasi dengan Leaflet lebih mudah daripada OpenLayers (lebih mudah untuk membaca kode dan memahami strukturnya). Jika Anda memiliki batasan waktu dan memiliki sedikit pengalaman dengan Javascript, menggunakan Leaflet mungkin merupakan solusi yang lebih baik untuk menyelesaikannya dengan lebih cepat. Atau jika Anda ingin mengembangkan aplikasi yang sangat sederhana, Leaflet bisa lebih mudah untuk beradaptasi pada awalnya.
Tetapi setelah saya mengembangkan aplikasi dengan Leaflet, sekarang saya mengatakan saya berharap saya telah menggunakan OpenLayers di awal. Karena ketika aplikasi Anda menjadi kompleks (seperti memanggil lapisan kompleks dari basis data, mengembangkan aplikasi seluler yang kuat, dll.), Leaflet mulai membatasi kemampuan Anda. Jadi, saya pikir menghabiskan sedikit lebih banyak waktu untuk memahami dan mempelajari struktur OpenLayers pada tahap pembelajaran pada akhirnya akan sia-sia.
Karena rincian proyek dipertimbangkan;
Gunakan antarmuka peta untuk mengambil Info Fitur:
Leaflet dan OpenLayers dapat melakukannya dengan sempurna. Intinya di sini adalah untuk mendapatkan koordinat acara klik dan mengirim permintaan ke server. Tautan permintaan akan sama untuk kedua aplikasi.
Buat alat yang disesuaikan yang membawa lat / lon dari pengguna ke tempat ia mengklik peta dan kemudian mengambil Data Iklim dari raster (yang ditangani oleh skrip py di server):
Saya mencapainya sendiri di Leaflet (saya juga menyebut data iklim). Saya tidak mengambil data raster dari server tetapi intinya di sini adalah membuat tautan permintaan, yang mudah untuk kedua aplikasi. Namun jika Anda ingin memilih poligon pada tahap ini agak sulit dicapai di Leaflet.
Mengizinkan pengguna mengunggah excel, yang dikirim ke skrip py, yang mengembalikan GeoJSON, yang membuat Fitur Vektor di peta:
Kira-kira garis pekerjaan yang sama untuk Leaflet dan OpenLayers. Saya tidak bisa mengatakan mana yang lebih baik.
Izinkan pengguna untuk membuat poligon vektor, yang akan mengambil Fitur yang berpotongan dari Lapisan WFS:
Saya tidak tahu tentang kemampuan mengedit OpenLayers tetapi Leaflet memiliki plugin bernama Leaflet Draw, yang mudah digunakan dan memanipulasi gambar (di sisi javascript) setelah menggambar selesai. Leaflet juga memiliki dukungan WFS-T jika Anda ingin memanipulasi data spasial pada server WFS. OpenLayers mungkin lebih baik dari itu, saya tidak tahu.
Mengambil Layer dari PostGIS Datastore di GeoServer dan menampilkan layer pada peta:
OpenLayers jelas lebih baik untuk pekerjaan ini karena lebih mudah untuk menghubungkan server PostGIS.
Omong-omong, ada suite aplikasi yang disebut OpenGeo Suite yang mencakup OpenLayers, GeoServer, dan PostGIS; yang akan menyelesaikan semua masalah yang dimiliki pengembang aplikasi GIS berbasis web.