A WMSMapRequest
объект содержит свойства для изменения географического экстента и времени запрашиваемой карты. Этот пример демонстрирует, как изменить ваш запрос карты для отображения температуры поверхности моря для океана, окружающего южный совет Африки. Полный список свойств см. в разделе WMSMapRequest
.
Поиск по базе данных WMS для всех слоев на сервере NASA Earth Observations (NEO) WMS.
neowms = wmsfind('neowms', 'SearchField', 'serverurl');
Уточните поиск, включив только слои с 'sea surface temperature'
в полях заголовка слоя или имени слоя базы данных WMS.
sst = neowms.refine('sea surface temperature');
Уточните свой поиск, чтобы включать только слои с месячными значениями от датчика MODIS на спутнике Aqua.
sst = sst.refine('month*modis');
Создайте WebMapServer
объект из URL-адреса сервера, хранящийся в ServerURL
свойство WMSLayer
sst объекта
.
server = WebMapServer(sst(1).ServerURL);
Создайте WebMapRequest
объект из WMSLayer
массив и WebMapServer
объект.
mapRequest = WMSMapRequest(sst, server);
Используйте Latlim
и Lonlim
свойства WMSMapRequest
для установки пределов широты и долготы.
mapRequest.Latlim = [-45 -25]; mapRequest.Lonlim = [15 35];
Установите временной запрос на 1 марта 2009 года.
mapRequest.Time = '2009-03-01';
Отправьте запрос на сервер с WebMapServer.getMap
способ. Проходите в WMSMapRequest.RequestURL
.
sstImage = server.getMap(mapRequest.RequestURL);
Настройте пустые оси карты с заданными географическими пределами.
figure
worldmap(mapRequest.Latlim, mapRequest.Lonlim);
setm(gca, 'mlabelparallel', -45)
Проецируйте и отобразите изображение, привязанное к широте и долготе. Используйте объект растровой привязки, предоставленную RasterReference
свойство WMSMapRequest
объект.
geoshow(sstImage, mapRequest.RasterReference); title({'South Africa', sst.LayerTitle}, ... 'FontWeight', 'bold', 'Interpreter', 'none')
URL-адрес запроса сопоставления можно изменить вручную.
Получите URL-адрес запроса карты.
nasa = wmsfind('nasa', 'SearchField', 'serverurl'); layer = nasa.refine('bluemarbleng', 'SearchField', 'layername', ... 'MatchType', 'exact'); layer = layer(1); mapRequest = WMSMapRequest(layer);
Установите URL-адрес запроса сопоставления на переменную.
mapURL = mapRequest.RequestURL;
Измените ограничивающий прямоугольник, включив в него южное полушарие. Для этого создайте новую переменную с именем modifiedURL
путем копирования и вставки содержимого mapURL
. Затем измените ограничивающий прямоугольник URL-адреса следующим образом:
&BBOX=-180.0,-90.0,180.0,0.0
Введите URL-адрес как один непрерывный вектор символов.
Отобразите измененную карту.
[A, R] = wmsread(modifiedURL); figure axesm globe axis off geoshow(A, R) title('Blue Marble: Southern Hemisphere Edition')
Изображение предоставлено НАСА/JPL-Caltech.