Измените запрос карты

Установите географические пределы и время запроса карты

A WMSMapRequest объект содержит свойства для изменения географического экстента и времени запрашиваемой карты. Этот пример демонстрирует, как изменить ваш запрос карты для отображения температуры поверхности моря для океана, окружающего южный совет Африки. Полный список свойств см. в разделе WMSMapRequest.

  1. Поиск по базе данных WMS для всех слоев на сервере NASA Earth Observations (NEO) WMS.

    neowms = wmsfind('neowms', 'SearchField', 'serverurl');
  2. Уточните поиск, включив только слои с 'sea surface temperature' в полях заголовка слоя или имени слоя базы данных WMS.

    sst = neowms.refine('sea surface temperature');
    
  3. Уточните свой поиск, чтобы включать только слои с месячными значениями от датчика MODIS на спутнике Aqua.

    sst = sst.refine('month*modis');
    
  4. Создайте WebMapServer объект из URL-адреса сервера, хранящийся в ServerURL свойство WMSLayer sst объекта.

    server = WebMapServer(sst(1).ServerURL);
    
  5. Создайте WebMapRequest объект из WMSLayer массив и WebMapServer объект.

    mapRequest = WMSMapRequest(sst, server);
    
  6. Используйте Latlim и Lonlim свойства WMSMapRequest для установки пределов широты и долготы.

    mapRequest.Latlim = [-45 -25];
    mapRequest.Lonlim = [15 35];
    
  7. Установите временной запрос на 1 марта 2009 года.

    mapRequest.Time = '2009-03-01';
    
  8. Отправьте запрос на сервер с WebMapServer.getMap способ. Проходите в WMSMapRequest.RequestURL.

    sstImage = server.getMap(mapRequest.RequestURL);
    
  9. Настройте пустые оси карты с заданными географическими пределами.

    figure
    worldmap(mapRequest.Latlim, mapRequest.Lonlim);
    setm(gca, 'mlabelparallel', -45)
  10. Проецируйте и отобразите изображение, привязанное к широте и долготе. Используйте объект растровой привязки, предоставленную RasterReference свойство WMSMapRequest объект.

    geoshow(sstImage, mapRequest.RasterReference);
    title({'South Africa', sst.LayerTitle}, ...
        'FontWeight', 'bold', 'Interpreter', 'none')

Изменить URL-адрес запроса веб-карты вручную

URL-адрес запроса сопоставления можно изменить вручную.

  1. Получите URL-адрес запроса карты.

    nasa = wmsfind('nasa', 'SearchField', 'serverurl');
    layer = nasa.refine('bluemarbleng', 'SearchField', 'layername', ...
       'MatchType', 'exact');
    layer = layer(1);
    mapRequest = WMSMapRequest(layer);
    
  2. Установите URL-адрес запроса сопоставления на переменную.

    mapURL = mapRequest.RequestURL;
  3. Измените ограничивающий прямоугольник, включив в него южное полушарие. Для этого создайте новую переменную с именем modifiedURL путем копирования и вставки содержимого mapURL. Затем измените ограничивающий прямоугольник URL-адреса следующим образом:

    &BBOX=-180.0,-90.0,180.0,0.0

    Введите URL-адрес как один непрерывный вектор символов.

  4. Отобразите измененную карту.

    [A, R] = wmsread(modifiedURL);
    figure
    axesm globe
    axis off
    geoshow(A, R)
    title('Blue Marble: Southern Hemisphere Edition')
    

    Изображение предоставлено НАСА/JPL-Caltech.

См. также

| |

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте