Более

ArcGIS Desktop от GetCapabilities до GetMap

ArcGIS Desktop от GetCapabilities до GetMap


При отправке запроса GetCapabilities из ArcGis Desktop, как он получает информацию, необходимую для выполнения запроса GetMap, и как запрос GetMap обрабатывается их «образцом сервера»?

Например (взято из собственного ресурсного центра http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//005300000046000000):

Если я использую их собственный пример сервера и сделаю следующий запрос GetCapabilities: http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?version=1.3.0&request=GetCapabilities&service=WMS

Но как получить информацию, необходимую для выполнения следующего запроса GetMap ?: http: /sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer? Version = 1.3.0 & request = GetMap & CRS = CRS: 84 & bbox = - 178.217598,18.924782, -66.969271,71.406235 & width = 760 & height = 360 & Layers = 0 & styles = default & format = image / png

Это только взято из XML-ответа GetCapabilities или я что-то здесь упускаю? Мне сложно понять, как ArcGis Desktop создает запрос GetMap и получает изображения, когда я только ввожу запрос GetCapabilities. Есть ли какая-то документация, которую мне где-то не хватает? И есть ли какие-то рекомендации относительно того, как их «примерный сервер» может обрабатывать входящие запросы?


URL-адрес GetMap создается автоматически с использованием ответа GetCapabilities.

Здесь вы видите, откуда берутся параметры GetMap в XML-документе GetCapabilities:

  • CRS = CRS: 84 => Это система координат всех слоев. Просто попробуйте найти в xml-файле CRS: 84.
  • bbox = -178.217598,18.924782, -66.969271,71.406235 => Найдите EX_GeographicBoundingBox в xml, и вы увидите ограничивающую рамку всех слоев и ограничивающую рамку каждого слоя отдельно.
  • width = 760 & height = 360 => просто найдите MaxWidth или MaxHeight, и вы увидите два числа. Вы можете указать любое число, меньшее или равное этим числам
  • Layers = 0 => Найдите теги Layer. В вашем примере GetCapabilities xml есть групповой слой вверху, а под ним - 3 слоя. Вы можете запросить каждый слой с их номерами. допустимые значения 0,1,2
  • styles = default => ищите стиль в GetCapabilities xml

  • format = image / png => ищите формат в GetCapabilities xml

Все службы WMS (служба веб-карт) по умолчанию поддерживают запрос GetMap. Если вы не отключили его, вы можете использовать тот же URL-адрес сервера, но с другим параметром запроса. Обратите внимание на оба ваших URL. Они точно такие же до тех пор, пока не будет запрошена часть запроса:

http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?version=1.3.0

Отсюда вы можете установить для параметра запроса значение GetCapabilities или GetMap. Например:

http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?version=1.3.0&request=GetMap