13 KiB
行业标准图层
符合 OGC 标准或者行业通行规范的的图层类型
WMS
Extends TileLayer
用于加载OGC标准的WMS地图服务的一种图层类,仅支持EPSG3857坐标系统的WMS图层。
[查看 WMS的OGC标准][53]。
Parameters
optsWMSLayerOptions 默认图层参数opts.urlString wmts服务的url地址,如:'[https://services.arcgisonline.com/arcgis/rest/services/'+][54] 'Demographics/USA_Population_Density/MapServer/WMTS/'opts.blendBoolean 地图级别切换时,不同级别的图片是否进行混合,如图层的图像内容为部分透明请设置为falseopts.paramObject OGC标准的WMS地图服务的GetMap接口的参数,包括VERSION、LAYERS、STYLES、FORMAT、TRANSPARENT等,
CRS、BBOX、REQUEST、WIDTH、HEIGHT等参数请勿添加,例如:
{
LAYERS: 'topp:states',
VERSION:'1.3.0',
FORMAT:'image/png'
}opts.zooms[Number, Number] 支持的缩放级别范围,默认范围 [2-30] (optional, default[2,30])opts.opacityNumber 透明度,默认 1 (optional, default1)opts.visibleBoolean 是否显示,默认 true (optional, defaulttrue)opts.zIndexNumber 图层叠加的顺序值,1 表示最底层。默认 zIndex:4 (optional, default4)
setParams
设置OGC标准的WMS getMap接口的参数,包括VERSION、LAYERS、STYLES、FORMAT、TRANSPARENT等
Parameters
paramsObject 参数集合,{VERSION: '1.0', ...}
getParams
获取 OGC 标准的 WMS getMap 接口的参数
setUrl
设置 WMS 服务地址
Parameters
urlString 服务地址
setUrl
设置 WMS 服务地址
Parameters
urlString 服务地址
getOptions
获取图层参数信息
Returns Object 图层参数信息
getzIndex
获取图层层级
Returns Number zIndex 图层层级
setzIndex
设置图层层级,数字越大图层层级越高
Parameters
zIndexNumber 图层层级值
getOpacity
获取图层透明度
Returns Number opacity 图层透明度
setOpacity
设置图层透明度,范围 [0 ~ 1]
Parameters
opacityNumber 图层透明度
getZooms
获取该图层可显示的级别范围,默认取值范围为[2-30]
Returns [Number, Number] 缩放范围
setZooms
获取该图层可显示的级别范围
Parameters
zooms[Number, Number] 缩放范围
show
设置图层可见
hide
设置图层隐藏
WMTS
Extends TileLayer
用于加载 OGC 标准的 WMTS 地图服务的一种图层类,仅支持 EPSG3857 坐标系统的 WMTS 图层
[查看 WMTS 标准][55]
[相关示例][56]
Parameters
optsWMTSLayerOptions 默认图层参数opts.urlString wms服务的url地址,如'[https://ahocevar.com/geoserver/wms][57]'opts.blendBoolean 地图级别切换时,不同级别的图片是否进行混合,如图层的图像内容为部分透明请设置为falseopts.paramObject OGC标准的WMTS地图服务的GetTile接口的参数,包括Version、Layer、 Style、Format、Service等,TileMatrixSet、TileRow、TileCol、Request等参数请勿添加,例如:
{
Layer: '0',
Version:'1.0.0',
Format: 'image/png'
}opts.zooms[Number, Number] 支持的缩放级别范围,默认范围 [2-30] (optional, default[2,30])opts.opacityNumber 透明度,默认 1 (optional, default1)opts.visibleBoolean 是否显示,默认 true (optional, defaulttrue)opts.zIndexNumber 图层叠加的顺序值,1 表示最底层。默认 zIndex:4 (optional, default4)
setParams
设置 OGC 标准的 WMTS getTile接口的参数,包括Version、Layer、Style、Format、Service等
Parameters
paramsObject 参数集合,{VERSION: '1.0', ...}
getParams
获取 OGC 标准的 WMTS getMap 接口的参数
getUrl
获取 WMTS 服务地址
Returns String 地址
setUrl
设置 WMTS 服务地址
Parameters
urlString 服务地址
getOptions
获取图层参数信息
Returns Object 图层参数信息
getzIndex
获取图层层级
Returns Number zIndex 图层层级
setzIndex
设置图层层级,数字越大图层层级越高
Parameters
zIndexNumber 图层层级值
getOpacity
获取图层透明度
Returns Number opacity 图层透明度
setOpacity
设置图层透明度,范围 [0 ~ 1]
Parameters
opacityNumber 图层透明度
getZooms
获取该图层可显示的级别范围,默认取值范围为[2-30]
Returns [Number, Number] 缩放范围
setZooms
获取该图层可显示的级别范围
Parameters
zooms[Number, Number] 缩放范围
show
设置图层可见
hide
设置图层隐藏
MapboxVectorTileLayer
Extends Layer
为了满足基于矢量瓦片块的数据可视化、矢量瓦片边界展示等开发需求,通过 AMap.MapboxVectorTileLayer 插件提供了简易矢量瓦片图层
此图层可以使用标准的 MVT 瓦片服务作为数据源。
可以配合[GeoHub-数据中心][58]发布的矢量瓦片服务。
注意:使用高德数据平台发布服务,由于服务 URL 地址是明文,建议自行做服务代理转发,防止服务 ID 和 Key 明文传输导致数据泄露。
[相关示例][59]
Parameters
optsMapboxVTLayerOptions 图层初始化参数opts.zIndexNumber 图层的层级 (optional, default80)opts.opacityNumber 图层透明度 (optional, default1)opts.urlString? MVT 数据的链接地址opts.visibleBoolean 图层是否可见 (optional, defaulttrue)opts.zooms[number, number] 图层缩放等级范围 (optional, default[2,22])opts.dataZooms[number, number] 瓦片数据等级范围,超过范围会使用最大/最小等级的数据 (optional, default[2,18])opts.stylesMapboxVTLayerStyleopts.styles.polygonPolygonStyle? 面类型的样式opts.styles.polygon.sourceLayerString 使用数据中的哪个图层,默认使用 default 图层 (optional, default'default')opts.styles.polygon.color(String | Function)? 面填充颜色opts.styles.polygon.borderWidth(Number | Function)? 描边宽度opts.styles.polygon.dash(Array<Number> | Function)? 描边线的虚线配置,例如:[10,5,8,5]opts.styles.polygon.borderColor(String | Function)? 描边颜色opts.styles.polygon.injectionArray<Any>? 其他属性值中对于函数形式的值,假如需要获取外部变量,要使用数组的形式传入,便于在函数内部访问外部变量。请看下面的示例。opts.styles.polygon.visible(Boolean | Function)? 是否显示
opts.styles.lineLineStyle? 线类型数据的样式opts.styles.line.sourceLayerString 使用数据中的哪个图层,默认使用 default 图层 (optional, default'default')opts.styles.line.color(String | Function)? 线填充颜色opts.styles.line.lineWidth(Number | Function)? 宽度opts.styles.line.dash(String | Function)? 虚线配置,例如:[10,5,8,5]opts.styles.line.injectionArray<Any>? 其他属性值中对于函数形式的值,假如需要获取外部变量,要使用数组的形式传入,便于在函数内部访问外部变量。请看下面的示例。opts.styles.line.visible(Boolean | Function)? 是否显示
opts.styles.pointPointStyle? 点类型数据的样式opts.styles.point.sourceLayerString 使用数据中的哪个图层,默认使用 default 图层 (optional, default'default')opts.styles.point.radius(String | Function)? 圆点的半径,单位像素opts.styles.point.color(Number | Function)? 圆的填充颜色opts.styles.point.borderWidth(String | Function)? 描边的宽度opts.styles.point.borderColor(String | Function)? 描边的颜色opts.styles.point.injectionArray<Any>? 其他属性值中对于函数形式的值,假如需要获取外部变量,要使用数组的形式传入,便于在函数内部访问外部变量。请看下面的示例。opts.styles.point.visible(Boolean | Function)? 是否显示
opts.styles.polyhedronPolyhedronStyle? 多面体类型的样式opts.styles.polyhedron.sourceLayerString 使用数据中的哪个图层,默认使用 default 图层 (optional, default'default')opts.styles.polyhedron.topColor(String | Function)? 顶面颜色opts.styles.polyhedron.sideColor(String | Function)? 侧面颜色opts.styles.polyhedron.texture(String | Function)? 侧面纹理,优先级高于侧面颜色opts.styles.polyhedron.injectionArray<Any>? 其他属性值中对于函数形式的值,假如需要获取外部变量,要使用数组的形式传入,便于在函数内部访问外部变量。请看下面的示例。opts.styles.polyhedron.visible(Boolean | Function)? 是否显示
Examples
var globalVar = ['这是', '一个', '外部', '变量'];
var mvtl = new AMap.MapboxVectorTileLayer({
zIndex: 150,
opacity: 1,
// URL可以使用数据服务平台的服务,也可以使用自己发布的 MVT 数据服务
url: 'https://restapi.amap.com/rest/lbs/geohub/tiles/mvt?z=[z]&x=[x]&y=[y]&size=512&key=您申请的key值&id=数据服务ID',
dataZooms: [2, 18],
zooms: [2, 20],
tileSize: 256,
styles: {
point: {
sourceLayer: 'default',
visible: function (f, inject) {
// 这里的 inject 参数就是一个数组,他的值就是 injection 字段的数组值:[visis]。
return inject[0].indexOf('这是') > -1;
},
injection: [globalVar],
radius: function (props) {
return Math.random() * 20 + 5;
},
color: 'red',
borderWidth: 20 || function (props) {
return Math.random() * 5 + 2;
},
borderColor: 'rgba(255,255,255,1)',
},
polygon: {
sourceLayer: 'default',
color: function (props) {
return 'rgba(0,0,0,1)';
},
dash: [10, 0, 10, 0],
borderColor: 'rgba(30,112,255,1)',
borderWidth: 5,
},
line: {
sourceLayer: 'default',
color: 'rgba(20,140,40,1)',
lineWidth: 5,
dash: [10, 0, 10, 0],
},
polyhedron: {
sourceLayer: 'default',
topColor: 'rgba(230,230,230,0.9)',
sideColor: 'rgba(240,240,240,0.9)',
},
}
});
setStyles
设置样式信息
Parameters
stylesMapboxVTLayerStyle 样式信息
filterByRect
获取矩形范围的要素
Parameters
rectPolygon 多边型,例如:lng,lat],[lng,lat],[lng,lat],[lng,lat],[lng,lattypeString 想要获取的要素类型,默认选择所有:all。可选值:all、point、polygon、line (optional, default"all")
Returns Array<Feature>
getStyles
获取样式信息
Returns MapboxVTLayerStyle 样式
on
图层级别监听鼠标事件 获取当前图层中鼠标位置的要素
Parameters
typeString 监听事件类型,目前支持 click、mousemovefnFunction 监听的回调函数,参数中的 features 是获取的鼠标位置的要素optionObject 拾取参数,featType:代表需要拾取的要素类型,参考 filterByRect() 函数中的 type;buffer:5, 代表以鼠标为中心点,范围为 5 的方形区域为鼠标拾取范围。值越大,拾取的范围越大,建议使用默认值。
hide
设置图层隐藏
hide
设置图层隐藏
getOptions
获取图层参数信息
Returns object 图层参数信息
getzIndex
获取图层层级
Returns Number zIndex 图层层级
setzIndex
设置图层层级,数字越大图层层级越高
Parameters
zIndexNumber 图层层级值
getOpacity
获取图层透明度
Returns Number opacity 图层透明度
setOpacity
设置图层透明度,范围 [0 ~ 1]
Parameters
opacityNumber 图层透明度
getZooms
获取该图层可显示的级别范围,默认取值范围为[2-20]
Returns [number, number] 缩放范围
setZooms
获取该图层可显示的级别范围
Parameters
zooms[number, number] 缩放范围
show
设置图层可见