Saya memiliki layer marker, dua layer vektor dan dua layer raster. Lapisan marker akan ditutupi oleh dua layer raster.
Apakah ada cara untuk memindahkan layer marker selalu di atas?
Diedit: Urutan indeks-Z bekerja dengan baik di lapisan vektor, tetapi ketika saya menambahkan lapisan raster WMS pada peta dengan indeks-Z yang lebih rendah, lapisan raster masih menutupi lapisan vektor.
Diedit: Adakah yang bisa menunjukkan perbedaan urutan render dalam hal "LayerIndex" dan "Z-Index" dari suatu Layer? Saya pikir indeks lapisan berurusan dengan urutan overlay dan penawaran Zindex dengan urutan fitur dalam layer vektor, apakah saya benar?
openlayers-2
markers
Terlihat
sumber
sumber
Jawaban:
Mengatur indeks-z untuk setiap lapisan akan membantu: http://www.openlayers.org/dev/examples/ordering.html
Diedit
Contoh yang saya tautkan awalnya tidak terlalu membantu. Anda ingin mengatur indexindex / z-indeks dari lapisan, bukan pembuat dalam lapisan (seperti contoh pemesanan menunjukkan). Saya mengumpulkan contoh (berdasarkan contoh ini ) yang menunjukkan pengindeksan lapisan kustom. Perhatikan bahwa ketika Anda mengaktifkan Canada Raster, layer Marker tetap di atas.
Berikut adalah kode yang relevan:
Dokumentasi untuk kode setLayerIndex ada di sini: http://dev.openlayers.org/releases/OpenLayers-2.11/doc/apidocs/files/OpenLayers/Map-js.html#OpenLayers.Map.setLayerIndex
sumber
Anda dapat melakukannya, jika Anda ingin layer vektor Anda selalu teratas hanya dengan kode ...
Semoga itu mudah!
sumber
tidak ada di atas yang berfungsi untuk saya, tetapi hanya melakukan ini setiap kali saya menambahkan lapisan baru berhasil memperlakukan untuk menjaga lapisan penanda saya di atas:
myMarkerLayer.setZIndex (1001);
sumber
Anda bisa memikirkan menambahkan layer ke peta sebagai meletakkan lembar baru di atas yang sudah ada. Jika lembar baru tidak transparan itu akan menyembunyikan semua yang di bawah.
Sayangnya OpenLayers tidak memiliki metode insertLayerAt , jadi Anda harus menyusun ulang layer Anda setelah dimasukkan. Solusinya kemudian menambahkan layer dan kemudian memindahkannya ke bawah tumpukan ke kedalaman yang diinginkan atau memindahkan yang Anda inginkan di atas kembali ke atas.
Anda dapat melakukannya sebagai berikut:
sumber