WMSMapRequest
объект содержит свойства изменить географическую степень и время требуемой карты. Этот пример демонстрирует, как изменить вашу просьбу карты сопоставить температуру поверхности моря для океана, окружающего южный совет Африки. Для полного списка свойств смотрите WMSMapRequest
.
Ищите Базу данных WMS все слои на Наблюдениях Земли НАСА (NEO) сервер WMS.
neowms = wmsfind('neowms', 'SearchField', 'serverurl');
Совершенствуйте свой поиск, чтобы включать только слои с 'sea surface temperature'
в заголовке слоя или полях имени слоя базы данных WMS.
sst = neowms.refine('sea surface temperature');
Совершенствуйте свой поиск, чтобы включать только слои с ежемесячными значениями от датчика MODIS на спутнике Воды.
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 путем ввода mapRequest.RequestURL
в командной строке.
Демонстрационный Выход:
ans = http://neowms.sci.gsfc.nasa.gov/wms/wms?... SERVICE=WMS... &LAYERS=BlueMarbleNG... &EXCEPTIONS=application/vnd.ogc.se_xml... &FORMAT=image/jpeg... &TRANSPARENT=FALSE... &HEIGHT=256... &BGCOLOR=0xFFFFFF... &REQUEST=GetMap&WIDTH=512... &BBOX=-180.0,-90.0,180.0,90.0... &STYLES=&SRS=EPSG:4326... &VERSION=1.1.1
Измените ограничительную рамку, чтобы включать южное полушарие путем прямого изменения mapRequest.RequestURL
. Введите следующее в командной строке:
modifiedURL =
Затем введите длинный URL как показано в предыдущий пример кода, но измените ограничительную рамку:
&BBOX=-180.0,-90.0,180.0,0.0
Отобразите модифицированную карту.
[A, R] = wmsread(modifiedURL); figure axesm globe axis off geoshow(A, R) title('Blue Marble: Southern Hemisphere Edition')