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

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

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

  1. Ищите Базу данных WMS все слои на Наблюдениях Земли НАСА (NEO) сервер WMS.

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

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

    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 путем ввода 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
    
  3. Измените ограничительную рамку, чтобы включать южное полушарие путем прямого изменения mapRequest.RequestURL. Введите следующее в командной строке:

    modifiedURL = 

    Затем введите длинный 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')
    

Смотрите также

| |

Похожие темы