主要内容

wmsfind

搜索Web地图服务器和本地数据库层

描述

例子

= wmsfind (querystr)安装搜索的字段WMS数据库部分匹配的querystr,它是一个字符串,字符串数组,特征向量,或单元阵列特征向量。默认情况下,wmsfind搜索LayerName属性,但你可以使用的其他领域包括在搜索searchfield参数。

wmsfind返回一个数组的WMSLayer对象包含一个对象名称或标题的每一层部分匹配querystr。WMS服务器生成的地图空间栅格数据引用,如温度或高程,被称为

= wmsfind (querystr,名称,值)修改搜索WMS数据库的基于参数的值。你可以缩写参数名称和案例并不重要。

例子

全部折叠

在WMS数据库搜索温度数据。

层= wmsfind (“温度”);

wmsfind搜索的功能LayerNameLayerTitle部分匹配的WMS数据库的字段。该函数返回一个数组WMSLayer对象,它包含一个对象名称或标题的每一层部分匹配“温度”

细化搜索,包括来自美国国家海洋和大气管理局的温度数据。显示第一层信息。

layersNOAA =提炼(层,美国国家海洋和大气管理局的);layersNOAA (1)
ans = WMSLayer属性:指数:1 ServerTitle:“WMS风场和海温异常,NOAA全球珊瑚白化监控、5公里,V.3.1,月刊,1985年至今的ServerURL: https://coastwatch.pfeg.noaa.gov/erddap/wms/NOAA_DHW_monthly/request?LayerTitle:风场和海温异常,NOAA全球珊瑚白化监控、5公里,V.3.1,月刊,1985 -现在sea_surface_temperature”LayerName:“NOAA_DHW_monthly: sea_surface_temperature”Latlim: [-89.9750 - 89.9750] Lonlim:[-179.9750 - 179.9750]的方法

一个WMSLayer对象包含三个属性不出现在WMS数据库:文摘,CoordRefSysCodes,细节。通过使用填充这些属性wmsupdate函数。

updatedLayers = wmsupdate (layersNOAA (1));updatedLayers (1)
ans = WMSLayer属性:指数:1 ServerTitle:“WMS风场和海温异常,NOAA全球珊瑚白化监控、5公里,V.3.1,月刊,1985年至今的ServerURL: https://coastwatch.pfeg.noaa.gov/erddap/wms/NOAA_DHW_monthly/request?LayerTitle:风场和海温异常,NOAA全球珊瑚白化监控、5公里,V.3.1,月刊,1985 -现在sea_surface_temperature”LayerName:“NOAA_DHW_monthly: sea_surface_temperature”Latlim: [-89.9750 - 89.9750] Lonlim:[-179.9750 - 179.9750]文摘:“CoordRefSysCodes: {“EPSG: 4326}细节:[1 x1 struct]的方法

你的结果可能会不同,因为每个版本的WMS数据库更改。

数据库搜索整个世界媒体峰会

在WMS数据库搜索层包含“温度”这个词。的wmsfind函数返回一个数组WMSLayer对象。

层= wmsfind (“温度”);

找到包含全球气温数据层。查询包括星号通配符“*”。

层= wmsfind (“全球*温度”);

WMS数据库中搜索特定字段

搜索LayerTitle字段的所有层包含这个词的精确匹配“河流”。你必须使用MatchType参数指定一个精确匹配。

层= wmsfind (“河流”,“MatchType”,“准确”,“IgnoreCase”假的,“searchfield”,“layertitle”);

搜索LayerName字段的所有层包含部分匹配的“高度”。默认情况下,wmsfind搜索部分匹配。

层= wmsfind (“高度”,“searchfield”,“layername”);

搜索LayerName字段包含的所有独特的服务器“BlueMarbleNG”

层= wmsfind (“BlueMarbleNG”,“searchfield”,“layername”,“MatchType”,“准确”);url =服务器(层);

限制你的搜索特定的地理区域

寻找科罗拉多层包含高程数据。使用LatlimLonlim参数指定的位置。

latlim = (35 43);lonlim = (-111 - -101);层= wmsfind (“高度”,“Latlim”latlim,“Lonlim”,lonlim);

发现所有层包含温度数据点在珀斯,澳大利亚。使用LatlimLonlim参数指定的位置。

lat = -31.9452;朗= 115.8323;层= wmsfind (“温度”,“Latlim”纬度,“Lonlim”、经度);

找到所有的独特的所有政府服务器url。

层= wmsfind (“* gov *”,“searchfield”,“serverurl”);url =服务器(层);

同时搜索多个字段和精炼你的搜索

搜索的LayerTitleLayerName字段的所有层包含“温度”这个词。

字段= [string (“layertitle”)字符串(“layername”));温度= wmsfind (“温度”,“searchfield”、字段);

完善你的体温搜索的结果发现只有那些层处理海洋表面温度。使用WMSLayer对象完善方法。

风场=提炼(温度、“海面”);

完善你的海洋表面温度只搜索进一步找到那些应对全球海洋表面温度的层。

global_sst =提炼(sst,“全球”);

搜索整个WMS数据库,并逐步完善你的搜索

注意,找到所有的层WMS数据库可能需要几秒钟才能执行,需要大量的记忆。数据库包含超过100000层。

找到所有的层WMS数据库和排序为一组只包含独特的层标题。

层= wmsfind (‘*’);layerTitles =排序(独特({layers.LayerTitle})) ';

完善你的原始搜索,与全球覆盖,只包括这些层。使用WMSLayer对象refineLimits方法。

global_layers = refineLimits(层,“Latlim”(-90 90),“Lonlim”180年[-180]);

完善全球层搜索的结果只包含层与全球范围,包括“地形”这个词。使用WMSLayer对象完善方法。

global_topography_layers =提炼(global_layers,“地形”);

完善你的原始搜索,只包含层,有一些术语“油”和“气”LayerTitle字段。

oil_gas_layers =提炼(层,“油*气”,“searchfield”,“layertitle”);

在WMS数据库搜索层包含“海拔”这个词。搜索指定数据库的在线版本版本名称-值对的论点是“在线”。如果你不指定版本wmsfind从安装数据库读取。

海拔= wmsfind (“高度”,“版本”,“在线”);

输入参数

全部折叠

字符WMS数据库中搜索字段,指定为一个字符串标量,字符串数组,特征向量,或单元阵列的特征向量。querystr可以包含星号通配符(*)。

数据类型:字符|字符串

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:[R] = wmsfind(“海拔”,“searchfield”,“layername”);

忽略大小写比较字段值的时候出现querystr,指定为逻辑值真正的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

纬度的限制的搜索,指定为一个双元素向量的形式[southern_limit northern_limit]或一个标量值代表一个单点的纬度。值范围内(-90、90)。所有的角度都在单位的度。如果提供的和非空,给定层出现在结果只有其局限性完全包含指定的“Latlim”限制。部分重叠并不匹配。

数据类型:|int16|int32|int64|int8||uint8|uint16|uint32|uint64

纵向限制的搜索,指定为一个双元素向量的形式[western_limit eastern_limit]或标量值代表一个单点的经度。所有的角度都在单位的度。如果提供的和非空,给定层出现在结果只有其局限性完全包含指定的“Lonlim”限制。部分重叠并不匹配。

数据类型:|int16|int32|int64|int8||uint8|uint16|uint32|uint64

严格的匹配,指定为特征向量或字符串“部分”“准确”。如果“MatchType”“准确”querystr‘*’,一场比赛发生在搜索字段匹配的字符‘*’

数据类型:字符|字符串

WMS数据库字段来搜索,指定为一个特征向量,单元阵列的特征向量,字符串或字符串数组。函数搜索指定字段的值的WMS数据库部分或完全匹配querystr。下表列出了有效值。

行为
“layername” 搜索LayerNameWMS数据库中的字段。层名称的缩写形式LayerTitle场和服务器使用的关键字来检索层。
“layertitle” 搜索LayerTitleWMS数据库中的字段。层标题包括描述性信息层和促进理解的意义光栅层的值。
“层” 搜索的LayerTitleLayerName字段。
“servertitle” 搜索ServerTitleWMS数据库中的字段。一个服务器标题包含描述性的信息服务器。
“serverurl” 搜索ServerURLWMS数据库中的字段。服务器URL和光栅层的图层信息便于阅读功能wmsread
“服务器” 搜索的ServerTitleServerURL字段。
“任何” 搜索所有字段。

数据类型:字符|细胞|字符串

版本的WMS数据库读取指定为以下值之一。

价值 描述
“安装” 从安装读取数据库。这是默认的。安装数据库中的信息是静态的,是不会自动更新的软件发布时进行验证。
“在线”

读取数据库的版本MathWorks网站托管。这个版本的数据库包含更多的服务器,因为它是定期更新的最新的信息。但是请注意,这个在线搜索数据库需要连接到互联网。

如果你的网络使用防火墙或者另一种方法的保护限制上网,你可以提供你的代理服务器信息MATLAB®。有关更多信息,请参见代理服务器认证

“自定义” 读的wmsdatabase.mat在MATLAB文件路径,如从先前的版本。

数据类型:字符|字符串

输出参数

全部折叠

层匹配搜索标准,作为一个数组返回WMSLayer对象,一个用于每一层。

更多关于

全部折叠

WMS数据库

映射工具箱™数据库包含超过1000个WMS服务器和存储超过100000层。MathWorks®创建这个数据库,称为WMS数据库,通过开展一系列的互联网搜索和符合条件的搜索结果。

请注意

MathWorks并不能保证WMS数据的稳定性和准确性。WMS数据库中列出的服务器位于互联网和独立于MathWorks。有时,您可能会收到错误消息从服务器经历困难。服务器可能下降或不可用。

wmsfind访问存储函数是唯一的WMS数据库。默认情况下,wmsfind函数的WMS数据库搜索与产品安装。你可以搜索一个版本的WMS数据库驻留在MathWorks网站或从先前版本使用WMS数据库版本名称-值参数。WMS安装数据库中的信息与产品是静态的。网站定期更新数据库。

WMS数据库包含这些字段:

字段名 数据类型 字段的内容
ServerTitle 特征向量 标题的WMS服务器,描述性的信息服务器
ServerURL 特征向量 WMS服务器的URL
LayerTitle 特征向量 层的标题,描述性的信息层
LayerName 特征向量 层,名称关键字检索层服务器使用
Latlim 双元素向量 南部和北部的纬度限制层
Lonlim 双元素向量 西部和东部经度层的极限

LayerTitleLayerName有时有相同的值的字段。的LayerName指出一个代码所使用的服务器,如“29:2”,而LayerTitle领域提供了更多的描述性信息。例如,海拔和河流与背景可能是一个条目LayerTitle字段。

提示

  • WMSLayer返回的对象wmsfind包含属性相同的名称的字段名WMS数据库,以及三个附加属性:“抽象”,“CoordRefSysCodes”,“细节”。WMS数据库不包含这些属性的信息。得到这个信息服务器,您必须使用wmsupdate更新这些属性的函数WMSLayer对象从服务器下载信息。要查看这些属性,使用WMSLayer.disp方法,指定“属性”参数值“所有”。如果你想知道更多关于WMS服务器,使用wmsinfo函数与特定的服务器URL。

版本历史

介绍了R2009b