Я создал карту с использованием OpenLayers3, которая содержит два слоя. Первый слой - это слой открытой карты улиц, а второй - слой WMS, предоставляемый сервером карт.
Проблема- Когда я визуализирую первый слой, это не проблема. но когда я визуализирую второй слой (предоставляемый картографическим сервером), он отображается неправильно, что означает, что он не подходит для своего контейнера и не синхронизирован с первым слоем с точки зрения местоположения. Дополнительную информацию см. В этом снимке карт. В верхнем слое снимка находится слой wms, предоставленный картографическим сервером.
Также, когда я масштабирую или перемещаю карту, оба слоя работают правильно, но после задержки в несколько секунд второй слой (слой wms с картографического сервера) снова переключается обратно в исходное положение (положение, которое показано на прикрепленном выше снимке).
Это код, который я использую для использования службы wms.
var layer = new ol.layer.Image({
source: new ol.source.ImageWMS({
url: 'http://localhost:19090/rasters/world/wms',
params: {
'LAYERS': 'world',
'mode': 'map',
},
serverType: 'mapserver'
})
});
Это мой файл карты.
MAP NAME "world" CONFIG "MS_ERRORFILE" "/home/neelesh/Projects/georbis/data/logs/mapservice_errors.log" CONFIG "PROJ_LIB" "/home/neelesh/Projects/georbis/deps/proj.4-master/share/proj" CONFIG "ON_MISSING_DATA" "LOG" DEBUG 5 EXTENT -180.000 -90.000 180.000 90.000 SHAPEPATH "/home/neelesh/Projects/georbis/data/service_data/data/wms" IMAGECOLOR 255 255 255 SIZE 1350 675 WEB METADATA "wms_title" "Georbis WMS Server" "wms_author" "VizExperts" "wms_onlineresource" "http://192.168.1.36:19090/rasters/world/wms?" "wms_enable_request" "*" "wms_srs" "EPSG:4326 EPSG:3857" "wms_feature_info_mime_type" "text/html" "wms_format" "image/jpg" END END PROJECTION "init=epsg:4326" END LAYER NAME world TYPE RASTER DATA "world.tif" METADATA "wms_title" "BlueWorld Map" "wms_srs" "epsg:4326" "wms_server_version" "1.1.1" END PROJECTION "init=epsg:4326" END END END
Я попробовал метод ol.view.fit, чтобы подогнать слой к его контейнеру, но значение layer.getExtent () strong> для слоя не определено.
Пожалуйста, помогите мне узнать, что не так. есть ли проблема с форматом запроса wms или файлом карты?