Картографический Веб-сервис запрос карты
A WMSMapRequest
объект содержит запрос на сервер WMS для получения карты, которая представляет географическую информацию. Сервер WMS отображает карту как цветное или полутоновое изображение. Объект содержит свойства, которые можно задать, чтобы управлять географическим размерами, визуализацией или размером запрашиваемой карты.
Вы можете
mapRequest = WMSMapRequest(layer)
создает WMSMapRequest
объект, установка Layer
свойство. The WMSMapRequest
объект обновляет свойства Layer
, при необходимости.
mapRequest = WMSMapRequest(layer,server)
создает WMSMapRequest
объект, установка Layer
и Server
свойства. The ServerURL
свойство layer
должен совпадать с ServerURL
свойство server
. The Server
обновления объектов Layer
свойства.
Server
- Сервер веб-картыWebMapServer
объектСервер веб-карты, заданный как скалярный WebMapServer
объект. Если сервер не передан в качестве аргумента при создании WMSMapRequest
, значение Server
устанавливается в ServerURL
от Layer
.
Layer
- Слои Web Map ServiceWMSLayer
объектыКартографический Веб-сервис слои, заданные как массив WMSLayer
объекты.
Layer
содержит одну уникальную ServerURL
, который должен совпадать с ServerURL
свойство Server
. The Server
свойство обновляет свойства Layer
когда задано свойство.
CoordRefSysCode
- Код системы координат-ссылок'CRS:84'
| 'EPSG:4326'
Система координат, заданный как вектор символов 'CRS:84'
для WMS версии 1.3.x и 'EPSG:4326'
для всех других версий.
Если 'EPSG:4326'
не найден в Layer.CoordRefSysCodes
, затем CoordRefSysCode
значение устанавливается из первого CoordRefSysCode
найдено в Layer.Details.BoundingBox
массив структур.
Когда CoordRefSysCode
установлено в 'EPSG:4326'
или 'CRS:84'
, а XLim
и YLim
для свойств задано значение []
и Latlim
и Lonlim
свойства заданы в географической степени, заданной Layer
массив.
Когда CoordRefSysCode
задано значение, отличное от 'EPSG:4326'
или 'CRS:84'
, затем XLim
и YLim
свойства заданы из значений, найденных в Layer.Details.BoundingBox
структура и Latlim
и Lonlim
для свойств задано значение []
.
Автоматические проекции не поддерживаются. (Автоматические проекции начинаются с 'AUTO'
.)
Типы данных: char
RasterReference
- Карта или географическая растровая ссылкаMapCellsReference
или GeographicCellsReference
Карта или географическая растровая ссылка, заданная как MapCellsReference
или GeographicCellsReference
объект. RasterReference
привязка растровой карты к внутренней системе координат
Latlim
- Пределы широтыПределы широты, заданные как двухэлементный вектор. Latlim
содержит южные и северные широтные пределы запроса в единицах степеней. Пределы должны быть возрастающими. По умолчанию пределы широты охватывают все широтные пределы, найденные в Layer.Latlim
свойство.
Lonlim
- Пределы долготыПределы долготы, заданные как двухэлементный вектор. Lonlim
содержит западный и восточный продольные пределы запроса в единицах степеней. Пределы должны быть возрастающими и находиться в области значений [-180, 180] или [0, 360]. По умолчанию пределы долготы охватывают все продольные пределы, найденные в Layer.Lonlim
свойство.
XLim
- Западные и восточные пределы в единицах координатной системы координат[]
(по умолчанию) | двухэлементный векторЗападные и восточные пределы запрашиваемой карты в единицах измерения системы координат-привязок, заданные как двухэлементный вектор. Пределы должны быть возрастающими. Можно задать XLim
только если вы задаете CoordRefSysCode
к значению, отличному от EPSG:4326
.
YLim
- Юг и север в единицах измерения системы координат[]
(по умолчанию) | двухэлементный векторЮжные и северные пределы запрашиваемой карты в единицах системы координат-привязок, заданных как двухэлементный вектор. Пределы должны быть возрастающими. Можно задать YLim
только если вы задаете CoordRefSysCode
к значению, отличному от EPSG:4326
.
ImageHeight
- Высота в пикселях для требуемой растровой картыВысота в пикселях для требуемой растровой карты, заданная как положительное целое число. Свойство MaximumHeight
определяет максимальное значение для ImageHeight
. The WMSMapRequest
объект инициализирует ImageHeight
свойство либо 512, либо целочисленное значение, которое лучше всего сохраняет соотношение сторон координатных пределов, не меняя координатных пределов.
ImageWidth
- Ширина в пикселях для запрошенной растровой картыШирина в пикселях для запрошенной растровой карты, заданная как положительное целое число. Свойство MaximumWidth
определяет максимальное значение для ImageWidth
. The WMSMapRequest
объект инициализирует ImageWidth
свойство либо 512, либо целочисленное значение, которое лучше всего сохраняет соотношение сторон координатных пределов, не меняя координатных пределов.
MaximumHeight
- Максимальная высота в пикселях запрашиваемой картыЭто свойство доступно только для чтения.
Максимальная высота в пикселях для запрашиваемой карты, заданная как число 8192.
Типы данных: double
MaximumWidth
- Максимальная ширина в пикселях запрашиваемой картыЭто свойство доступно только для чтения.
Максимальная ширина в пикселях для запрашиваемой карты, заданная как число 8192.
Типы данных: double
Elevation
- Протяженность требуемой карты по повышению''
(по умолчанию) | вектор символовСтепень повышения требуемой карты, заданная как вектор символов. Когда вы устанавливаете свойство, 'elevation'
должно быть значением Layer.Details.Dimension.Name
поле.
Time
- Временной объем запрашиваемой картыВременной объем запрашиваемой карты, заданный как вектор символов или числовой скаляр. Смотрите WMSMapRequest.Time
Страница с описанием для получения дополнительной информации.
Типы данных: double
| char
SampleDimension
- Имя и значение размерности образцаИмя и значение размерности выборки, заданные как двухэлементный массив ячеек из векторов символов. Имя невозможно 'time'
или 'elevation'
. SampleDimension{1}
должно быть значением Layer.Details.Dimension.Name
поле.
Transparent
- Флаг, указывающий прозрачность фона картыФлаг, указывающий прозрачность фона карты, заданный как логический скаляр. Когда вы задаете Transparent
на true
сервер устанавливает все пиксели, не представляющие функции или значения данных на этом слое, на прозрачное значение, получая составную карту. Когда вы задаете Transparent
на false
сервер устанавливает все пиксели, не являющиеся пикселями неданных, в значение цвета фона.
Типы данных: logical
BackgroundColor
- Цвет фона (не-неданные) пикселей картыЦвет фона (не-неданные) пикселей карты, заданный как трехэлементный числовой вектор. Значения варьируются от 0 до 255. Значение по умолчанию, [255,255,255]
, задает цвет фона как белый. Можно задать BackgroundColor
использование в не- uint8
числовые значения, но они приводятся и хранятся как uint8
.
Типы данных: uint8
StyleName
- Стиль, используемый при визуализации изображения{}
(по умолчанию) | вектор символов или массив ячеек из векторов символовСтиль, используемый при визуализации изображения, заданный как вектор символов или массив ячеек из векторов символов. The StyleName
должна быть допустимой записью в Layer.Details.Style.Name
поле. Массив ячеек из векторов символов содержит то же количество элементов, что и Layer
.
ImageFormat
- Желаемый формат изображения, используемый для визуализации карты как изображенияЖелаемый формат изображения, используемый для визуализации карты как изображения, заданный как вектор символов. Если задан, формат должен совпадать с записью в Layer.Details.ImageFormats
массив ячеек и запись в ImageRenderFormats
свойство. Если не задать, формат по умолчанию равен значению в ImageRenderFormats
свойство.
ImageRenderFormats
- Предпочтительные форматы визуализации изображений при Transparent
установлено в false
Это свойство доступно только для чтения.
Предпочтительные форматы визуализации изображений при Transparent
установлено в false
, заданный как массив ячеек. Первая запись является наиболее предпочтительным форматом изображения. Если предпочтительный формат не сохранен в Layer
свойство, затем выбирается следующий формат из списка до тех пор, пока не будет найден формат. The ImageRenderFormats
массив не используется, если ImageFormat
задано свойство.
ImageTransparentFormats
- Предпочтительные форматы визуализации изображений при Transparent
установлено в true
Это свойство доступно только для чтения.
Предпочтительные форматы визуализации изображений при Transparent
установлено в true
, заданный как массив ячеек. Первая запись является наиболее предпочтительным форматом изображения. Если предпочтительный формат не сохранен в Layer
свойство, затем выбирается следующий формат из списка до тех пор, пока не будет найден формат. Если прозрачный формат изображения не найден в списке, или если ImageFormat
Свойство задается значение, отличное от значения по умолчанию, затем ImageFormat
не изменяется.
ServerURL
- URL-адрес сервера для GetMap
WMS
запросURL-адрес сервера для GetMap
WMS запрос, заданный как вектор символов. В целом,
ServerURL
соответствует ServerURL
от Layer
. Однако некоторые серверы WMS, такие как Microsoft® TerraServer, требуется другой URL для GetMap
запросов, чем для WMS GetCapabilities
запросы. По умолчанию ServerURL
является Layer(1).ServerURL
.
Типы данных: char
RequestURL
- Полный URL-адрес для GetMap
WMS
запросЭто свойство доступно только для чтения.
Полный URL-адрес для GetMap
WMS запрос, заданный как вектор символов. Он состоит из
ServerURL
с дополнительными парами параметр/значение WMS.
boundImageSize | Связанный размер растровой карты |
Прочитайте глобальную температурную карту с полустепенью разрешением для поверхности моря за ноябрь 2009 года. Карта с датчика AMSR-E на спутнике NASA Aqua использует данные, предоставленные сервером WMS НАСА Earth Observations (NEO).
sst = wmsfind('AMSRE_SSTAn_M'); sst = sst(1); server = WebMapServer(sst.ServerURL); mapRequest = WMSMapRequest(sst, server); timeRequest = '2009-11-01'; mapRequest.Time = timeRequest; samplesPerInterval = .5; mapRequest.ImageHeight = ... round(abs(diff(sst.Latlim))/samplesPerInterval); mapRequest.ImageWidth = ... round(abs(diff(sst.Lonlim))/samplesPerInterval); mapRequest.ImageFormat = 'image/png'; sstImage = server.getMap(mapRequest.RequestURL);
Прочитайте легенду для слоя, используя OnlineResource
URL-адрес в LegendURL
структура. Легенда показывает, что температура колеблется от -2 до 35 степени Цельсия. The WMSMapRequest
объект обновляет информацию о слое с сервера.
url = mapRequest.Layer.Details.Style(1).LegendURL.OnlineResource; [legendImg,cmap] = imread(url); if ~isempty(cmap) % Convert indexed image to RGB. legendRGB = ind2rgb(legendImg,cmap); else % Already have an RGB image. legendRGB = legendImg; end
Отобразите температурную карту и легенду.
fig = figure; ax = worldmap('world'); setm(ax,'MlabelParallel',-90,'MlabelLocation',90) geoshow(sstImage,mapRequest.RasterReference); title({mapRequest.Layer.LayerTitle,timeRequest}) figurePosition = fig.Position; centerWidth = figurePosition(3)/2; axleft = centerWidth-size(legendImg,2)/2; axbottom = 30; axwidth = size(legendRGB,2); axheight = size(legendRGB,1); axes('Units','pixels','Position',[axleft axbottom axwidth axheight]) image(legendRGB) axis off
Чтение абстрактной информации для этого слоя из MetadataURL
поле.
options = weboptions('ContentType','xmldom','Timeout',10); xml = webread(mapRequest.Layer.Details.MetadataURL,options); abstract = xml.getElementsByTagName('abstract').item(0).getTextContent
Считывайте и отображайте глобальный слой повышений и батиметрии для залива Мэн с интервалом дискретизации 30 угловых секунд. Значения указаны в единицах измерения.
info = wmsinfo('https://worldwind26.arc.nasa.gov/wms/elev?'); layers = info.Layer; layer = refine(layers,'SRTM','SearchField','layername'); server = WebMapServer(layer.ServerURL); mapRequest = WMSMapRequest(layer,server); mapRequest.Latlim = [40 46]; mapRequest.Lonlim = [-71 -65]; samplesPerInterval = 30/3600; mapRequest.ImageHeight = ... round(abs(diff(mapRequest.Latlim))/samplesPerInterval); mapRequest.ImageWidth = ... round(abs(diff(mapRequest.Lonlim))/samplesPerInterval); mapRequest.ImageFormat = 'image/tiff'; Z = getMap(server, mapRequest.RequestURL); R = mapRequest.RasterReference;
Отображение карты и график контурных линий на уровне моря. Применить палитру, подходящую для данных о повышении. Добавьте шкалу палитры и заголовок.
figure worldmap(mapRequest.Latlim,mapRequest.Lonlim) geoshow(double(Z),R,'DisplayType','texturemap') contourm(double(Z),R,[0,0],'Color','k') demcmap(double(Z)) colorbar title({'Gulf of Maine',mapRequest.Layer.LayerTitle}, ... 'Interpreter','none','FontWeight','bold')
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.