Як переключити базові шари, коли користувач збільшує зображення, щоб зробити карту в OpenLayers?


13

У мене є карта, яка перекриває дані Open Street Map щодо зображень для Пенсільванії. В якості базового шару для доріг (і, зрештою, інших шарів) я маю два базових шару - Blue Marble NG та USGS EROS 1ft. Я хотів би мати можливість об'єднати ці два шари в єдиний об'єкт базової карти, який автоматично перемикається, коли користувач збільшує зображення, оскільки немає сенсу переглядати 1-кратне зображення для цілого стану або зображення Блакитного мармуру, коли ви збільшуєте масштаб.

В ідеалі я хотів би зробити це на стороні клієнта, оскільки я перетягую зображення з двох різних сайтів.


У цьому питанні є ламане посилання, на яке було вказано на gis.stackexchange.com/questions/173775/… Прикро, що тут не було зроблено коментарів, аби попереджати вас раніше.
PolyGeo

Відповіді:


17
  1. Додайте на карту 2 базових шару
  2. Підпишіться на подію zoomend на карті
  3. Перевірте рівень масштабування та просто переключіть базову карту для свого користувача

Ось зразок сторінки з обробником подій для zoomend - http://www.openlayers.org/dev/examples/events.html .


1
Це працює дуже добре - < ian01.geog.psu.edu/geoserver/www/pa/pa2.html >
Іан Тертон

@iant, Будь-який шанс, що я міг би змусити вас вставити фрагмент коду? Я намагаюся зробити так, і це просто баггі. Спасибі!

У цій відповіді є ламане посилання, на яке було вказано на gis.stackexchange.com/questions/173775/… Прикро, що тут не було зроблено коментарів, аби попереджати вас раніше.
PolyGeo

-1 за єдине розірване посилання у 5-річній відповіді? Серйозно? Мені все одно не важливо, але я не можу уявити, що адміністратори просять усіх підтримувати посилання на зовнішні посилання. Зауважте, що відповідь у відмітках 1,2,3 повна, а посилання API все ще працюють. Якщо читачеві потрібно знайти зразок, якому я вірю, він може знайти його самостійно. За останні 5 років OL змінився і змінився.
Вадим

0

Інший спосіб ... за допомогою контролю непрозорості

Спробуйте цей приклад https://github.com/openlayers/ol2/blob/master/examples/layer-opacity.html

комбо з USGS_EDC_Elev_NED_3 (затінене полегшення) та карт Topo з контролем непрозорості

Працює досить добре.


Не тихий ефект, який я намагався, але приємний приклад.
Ян Тертон

У цій відповіді є ламане посилання, на яке було вказано на gis.stackexchange.com/questions/173775/… Прикро, що тут не було зроблено коментарів, аби попереджати вас раніше.
PolyGeo

оновити посилання на джерело github
Mapperz
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.