Add SEO metadata and security headers

This commit is contained in:
2026-05-23 11:17:29 +08:00
parent cc65395b59
commit 582a4214b6
40 changed files with 15323 additions and 5 deletions
@@ -0,0 +1,988 @@
## 自有数据图层
用于加载展示开发者自己拥有的数据或者图像的图层类型
## HeatMap
热力图,基于第三方heatmap.js实现,以特殊高亮的形式显示数据密集程度。根据密集程度的不同,图上会呈现不同的颜色,以直观的形式展现数据密度。API引用了heatmap.js最新版本v2.0,v2.0基于新的渲染模型,具有更高的渲染效率和更强的性能。支持chrome、firefox、safari、ie9及以上浏览器。
### Parameters
- `map` **Map** 要叠加热力图的地图对象
- `opts` **HeatMapOptions** 热力图属性配置
- `opts.radius` **number** 热力图中单个点的半径,默认:30,单位:pixel
- `opts.gradient` **object** 热力图的渐变区间,热力图按照设置的颜色及间隔显示热力图,例{0.4:'rgb(0, 255, 255)',0.85:'rgb(100, 0, 255)',},其中 key 表示间隔位置,取值范围: [0,1],value 为颜色值。默认:heatmap.js标准配色方案
- `opts.opacity` **array** 热力图透明度区间数组,取值范围[0,1],0表示完全透明,1表示不透明,默认:[0,1]
- `opts.zooms` **array** 支持的缩放级别范围,取值范围[3-20],默认:[3,20]
- `opts.visible` **boolean** 是否可见
- `opts.zIndex` **number** 热力图层在地图上的叠加顺序,默认 130
- `opts.3d` **HeatMap3DOptions** 3D热力图属性
- `opts.3d.heightScale` **number** 高度缩放因子,表示在单位高度上的缩放比例, 默认为 1
- `opts.3d.heightBezier` **array** 影响高度平滑度的贝塞尔曲线因子,默认 [0.5, 0, 1, 0.5],
- `opts.3d.gridSize` **number** 取样精度,越小越平滑,越大性能越高
### Examples
```javascript
var heatmap;
var points = [
{"lng":116.191031,"lat":39.988585,"count":10},
{"lng":116.389275,"lat":39.925818,"count":11},
{"lng":116.287444,"lat":39.810742,"count":12},
{"lng":116.481707,"lat":39.940089,"count":13},
{"lng":116.410588,"lat":39.880172,"count":14},
{"lng":116.394816,"lat":39.91181,"count":15},
{"lng":116.416002,"lat":39.952917,"count":16},
];
// 加载热力图插件
map.plugin(["AMap.HeatMap"],function(){
// 在地图对象叠加热力图
heatmap = new AMap.Heatmap({map:map});
// 设置热力图数据集
heatmap.setDataSet({data:points,max:100});
});
```
### getMap
获取热力图叠加地图对象
Returns **Map**
### setMap
设置热力图要叠加的地图实例,也可以在Map中的layers属性中设置为默认显示的图层
#### Parameters
- `map` **Map** 地图实例
### getOptions
获取热力图的属性信息
Returns **HeatMapOptions**
### setOptions
设置热力图属性,请参考 HeatMapOptions 列表中的说明
#### Parameters
- `options` **HeatMapOptions** 热力图配置
### getDataSet
输出热力图的数据集,数据结构同setDataSet中的数据集
Returns **object**
### setDataSet
设置热力图展现的数据集,dataset数据集格式为:
{
max: Number 权重的最大值,
data: Array 坐标数据集
}
其中max不填则取数据集count最大值
例: {
max: 100,
data: [{lng: 116.405285, lat: 39.904989, count: 65},{}, …]
}
也可以通过url来加载数据,格式为
{
datajsonp格式数据的服务地址URL,
dataParser: 数据格式转换function //当jsonp返回结果和官方结构不一致的时候,用户可以传递一个函数用来进行数据格式转换;
}
例:
{
data:'[http://abc.com/jsonp.js'][61],
dataParser:function(data){
return doSomthing(data);//返回的对象结果应该与上面例子的data字段结构相同
}
}
#### Parameters
- `dataset` **object** 数据集
### addDataPoint
向热力图数据集中添加坐标点,count不填写时默认:1
#### Parameters
- `longitude` **string** 经度
- `latitude` **string** 纬度
- `count` **number** 权重
### getzIndex
获得热力图层叠加层级
Returns **number**
### setzIndex
设置热力图层叠加层级
#### Parameters
- `zIndex` **number** 热力图层叠加层级
### show
显示热力图
### hide
隐藏热力图
## VectorLayer
**Extends \_Layer.CoreVectorLayer**
### add
添加矢量覆盖物到集合中,不支持添加重复的覆盖物
#### Parameters
- `vectors` **(VectorOverlay | Array<VectorOverlay>)** 矢量覆盖物或矢量覆盖物数组
### remove
删除矢量覆盖物
#### Parameters
- `vectors` **(VectorOverlay | Array<VectorOverlay>)** 矢量覆盖物或矢量覆盖物数组
### show
显示图层
### hide
隐藏图层
### has
判断传入的矢量覆盖物实例是否在VectorLayer这中
#### Parameters
- `vector` **VectorOverlay**
Returns **boolean**
### clear
清空 VectorLayer
### setOptions
批量修改矢量覆盖物属性(包括线样式、样色等等)
#### Parameters
- `opt` **Object**
### query
根据经纬度查询矢量覆盖物信息
#### Parameters
- `geometry` **LngLatLike**
Returns **(VectorOverlay | undefined)** vector 矢量覆盖物
### getBounds
获取 VectorOverlay 所有覆盖物显示的范围
Returns **(Bounds \| undefined)** 经纬度范围值
## VectorLayer
**Extends \_Layer.CoreVectorLayer**
### Parameters
- `opts` **Object**
- `opts.visible` **boolean** 是否显示 (optional, default `true`)
- `opts.zIndex` **number** 是否显示 (optional, default `110`)
### Examples
```javascript
var layer = new AMap.VectorLayer();
map.add(layer);
var circle = new AMap.circle({center: [116.4, 39.9], radius:1000});
layer.add(circle);
```
### add
添加矢量覆盖物到集合中,不支持添加重复的覆盖物
#### Parameters
- `vectors` **(VectorOverlay | Array<VectorOverlay>)** 矢量覆盖物或矢量覆盖物数组
### remove
删除矢量覆盖物
#### Parameters
- `vectors` **(VectorOverlay | Array<VectorOverlay>)** 矢量覆盖物或矢量覆盖物数组
### show
显示图层
### hide
隐藏图层
### has
判断传入的矢量覆盖物实例是否在VectorLayer这中
#### Parameters
- `vector` **VectorOverlay**
Returns **boolean**
### clear
清空 VectorLayer
### setOptions
批量修改矢量覆盖物属性(包括线样式、样色等等)
#### Parameters
- `opt` **Object**
### query
根据经纬度查询矢量覆盖物信息
#### Parameters
- `geometry` **LngLatLike**
Returns **(VectorOverlay | undefined)** vector 矢量覆盖物
### getBounds
获取 VectorOverlay 所有覆盖物显示的范围
Returns **(Bounds \| undefined)** 经纬度范围值
## LabelsLayer
标注层
### Parameters
- `opts` **LabelsLayerOptions** 标注层参数
- `opts.visible` **boolean** 标注层是否可见,默认值:true
- `opts.zIndex` **number** 标注层与其它图层的叠加顺序,默认值:120
- `opts.opacity` **number** 标注层透明度
- `opts.collision` **boolean** 标注层内的标注是否避让
- `opts.allowCollision` **boolean** 标注层内的标注是否允许其它标注层对它避让
- `opts.zooms` **\[number, number]** 标注层展示层级范围
### Examples
```javascript
// 创建一个标注层实例
var labelsLayer = new AMap.LabelsLayer({
collision: true,
opacity: 1,
zIndex: 120,
allowCollision: true,
});
// 将标注层添加到地图上
map.add(labelsLayer);
```
### getCollision
获取标注层是否支持内部标注避让
Returns **any**
### setCollision
设置标注层是否支持内部标注避让
#### Parameters
- `collision` **boolean** 默认值: true
### getAllowCollision
获取标注层是否允许其它层标注避让
Returns **boolean**
### setAllowCollision
设置标注层是否允许其它层标注避让,开启该功能可实现地图标注对 LabelMarker 的避让,[相关示例][63]
#### Parameters
- `allowCollision` **boolean**
### getOpacity
获取标注层透明度
Returns **number**
### setOpacity
设置标注层透明度
#### Parameters
- `opacity` **number**
### getZooms
获取标注层显示层级范围
Returns **any**
### setZooms
设置标注层显示层级范围
#### Parameters
- `zooms` **\[number]**
### getzIndex
获取标注层叠加顺序
Returns **number**
### setzIndex
设置标注层叠加顺序
#### Parameters
- `zIndex` **number**
### add
将 labelMarker 添加到标注层上
#### Parameters
- `labelMarkers` **Array<LabelMarker>** 可添加单个标注或标注数组
### remove
将 labelMarker 从标注层上移除
#### Parameters
- `labelMarkers` **(LabelMarker \| Array<LabelMarker>)** 可移除单个标注或标注数组
### clear
清空标注层上的标注
### show
显示标注层
### hide
隐藏标注层
### getAllOverlays
获取标注层内的所有标注对象
Returns **Array<any>**
## CustomLayer
**Extends \_Layer.CoreCustomLayer**
### Parameters
- `canvas`
- `opts`
### getOptions
获取图层参数信息
Returns **Object** 图层参数信息
### getzIndex
获取图层层级
Returns **Number** zIndex 图层层级
### setzIndex
设置图层层级,数字越大图层层级越高
#### Parameters
- `zIndex` **Number** 图层层级值
### setzIndex
设置图层层级
#### Parameters
- `zIndex` **number** 图层层级
### getOpacity
获取图层透明度
Returns **Number** opacity 图层透明度
### setOpacity
设置图层透明度,范围 [0 ~ 1]
#### Parameters
- `opacity` **Number** 图层透明度
### getZooms
获取该图层可显示的级别范围,默认取值范围为[2-20]
Returns **\[Number, Number]** 缩放范围
### setZooms
获取该图层可显示的级别范围
#### Parameters
- `zooms` **\[Number, Number]** 缩放范围
### show
设置图层可见
### hide
设置图层隐藏
### setMap
添加到地图上
#### Parameters
- `地图实例对象` **Map**
## CustomLayer
**Extends Layer**
自定义图层是一种完全由开发者来指定绘制方法的图层 </br>
[相关示例][65]
### Parameters
- `canvas` **HTMLCanvasElement** canvas 对象
- `opts` **CustomLayerOption** 默认图层参数
- `opts.render` **Function** 绘制函数,初始化完成时候,开发者需要给该图层设定render方法, </br>
该方法需要实现图层的绘制,API会在合适的时机自动调用该方法
- `opts.zooms` **\[Number, Number]** 图层缩放等级范围,默认 [2, 20] (optional, default `[2,20]`)
- `opts.opacity` **Number** 图层透明度,默认为 1 (optional, default `1`)
- `opts.visible` **Boolean** 图层是否可见,默认为 true (optional, default `true`)
- `opts.zIndex` **Number** 图层的层级,默认为 120 (optional, default `120`)
- `opts.alwaysRender` **Boolean** 是否主动 (optional, default `false`)
### Examples
```javascript
var cLayer = new AMap.CustomLayer(canvas, {
zooms: [2, 18],
zIndex: 120,
render() {
// 对 canvas 进行绘制
}
})
```
### getOptions
获取图层参数信息
Returns **Object** 图层参数信息
### getzIndex
获取图层层级
Returns **Number** zIndex 图层层级
### setzIndex
设置图层层级,数字越大图层层级越高
#### Parameters
- `zIndex` **Number** 图层层级值
### setzIndex
设置图层层级
#### Parameters
- `zIndex` **number** 图层层级
### getOpacity
获取图层透明度
Returns **Number** opacity 图层透明度
### setOpacity
设置图层透明度,范围 [0 ~ 1]
#### Parameters
- `opacity` **Number** 图层透明度
### getZooms
获取该图层可显示的级别范围,默认取值范围为[2-20]
Returns **\[Number, Number]** 缩放范围
### setZooms
获取该图层可显示的级别范围
#### Parameters
- `zooms` **\[Number, Number]** 缩放范围
### show
设置图层可见
### hide
设置图层隐藏
### setMap
添加到地图上
#### Parameters
- `地图实例对象` **Map**
## Flexible
**Extends TileLayer**
灵活切片图层,继承自AMap.TileLayer,开发者可通过构造时传入给其传入createTile字段来指定每一个切片的内容 </br>
[相关示例][67]
### Parameters
- `opts` **FlexibleLayerOptions**
- `opts.cacheSize` **Number** 缓存瓦片数量
- `opts.createTile` **function (x, y, z, success, fail)** 由开发者实现,由API自动调用,xyz分别为切片横向纵向编号和层级,切片大小
256。假设每次创建的贴片为A(支持img或者canvas),当创建或者获取成功时请回调success(A),不需要显示或者失败时请回调fail()
- `opts.zooms` **\[Number, Number]** 支持的缩放级别范围,默认范围 [2-30] (optional, default `[2,30]`)
- `opts.opacity` **Number** 透明度,默认 1 (optional, default `1`)
- `opts.visible` **Boolean** 是否显示,默认 true (optional, default `true`)
- `opts.zIndex` **Number** 图层叠加的顺序值,1 表示最底层。默认 zIndex4 (optional, default `4`)
- `opts.tileSize` **Number** 切片大小,取值: </br>
256,表示切片大小为256_256 </br>
128,表示切片大小为128_128 </br>
64,表示切片大小为64\*64。默认值为256 (optional, default `256`)
### getOptions
获取图层参数信息
Returns **Object** 图层参数信息
### getzIndex
获取图层层级
Returns **Number** zIndex 图层层级
### setzIndex
设置图层层级,数字越大图层层级越高
#### Parameters
- `zIndex` **Number** 图层层级值
### getOpacity
获取图层透明度
Returns **Number** opacity 图层透明度
### setOpacity
设置图层透明度,范围 [0 ~ 1]
#### Parameters
- `opacity` **Number** 图层透明度
### getZooms
获取该图层可显示的级别范围,默认取值范围为[2-30]
Returns **\[Number, Number]** 缩放范围
### setZooms
获取该图层可显示的级别范围
#### Parameters
- `zooms` **\[Number, Number]** 缩放范围
### show
设置图层可见
### hide
设置图层隐藏
### destroy
销毁图层
## ImageLayer
**Extends Layer**
图片图层类,用户可以将一张静态图片作为图层添加在地图上,图片图层会随缩放级别而自适应缩放。 </br>
[相关示例][68]
### Parameters
- `opts` **ImageLayerOptions** 传入默认参数列表
- `opts.url` **String** 图片地址链接
- `opts.zooms` **\[Number, Number]** 图层缩放等级范围,默认 [2, 30] (optional, default `[2,30]`)
- `opts.bounds` **(\[Number, Number, Number, Number] | Bounds)** 图片的范围大小经纬度,如果传递数字数组类型: [minlng,minlat,maxlng,maxlat]
- `opts.opacity` **Number** 图层透明度,默认为 1 (optional, default `1`)
- `opts.visible` **Boolean** 图层是否可见,默认为 true (optional, default `true`)
- `opts.zIndex` **Number** 图层的层级,默认为 6 (optional, default `6`)
### Examples
```javascript
var imageLayer = new AMap.ImageLayer({
url: 'https://amappc.cn-hangzhou.oss-pub.aliyun-inc.com/lbs/static/img/dongwuyuan.jpg',
bounds: new AMap.Bounds(
[116.327911, 39.939229],
[116.342659, 39.946275]
),
zooms: [10, 18]
});
```
### getImageUrl
获取图片的地址
### setImageUrl
设置图片的地址
#### Parameters
- `url` **String** 图片地址
### getBounds
获取 ImageLayer显示的范围
Returns **Bounds** 经纬度范围值
### setBounds
设置 ImageLayer显示的范围
### getOptions
获取图层参数信息
Returns **object** 图层参数信息
### getzIndex
获取图层层级
Returns **Number** zIndex 图层层级
### setzIndex
设置图层层级,数字越大图层层级越高
#### Parameters
- `zIndex` **Number** 图层层级值
### getOpacity
获取图层透明度
Returns **Number** opacity 图层透明度
### setOpacity
设置图层透明度,范围 [0 ~ 1]
#### Parameters
- `opacity` **Number** 图层透明度
### getZooms
获取该图层可显示的级别范围,默认取值范围为[2-20]
Returns **\[number, number]** 缩放范围
### setZooms
获取该图层可显示的级别范围
#### Parameters
- `zooms` **\[number, number]** 缩放范围
### show
设置图层可见
### hide
设置图层隐藏
## CanvasLayer
**Extends ImageLayer**
Canvas图层类,用户可以将一个 Canvas 作为图层添加在地图上,Canvas图层会随缩放级别而自适应缩放。 </br>
[相关示例][69]
### Parameters
- `opts` **ImageLayerOptions** 传入默认参数列表
- `opts.canvas` **HTMLCanvasElement** Canvas DOM 对象
- `opts.zooms` **\[Number, Number]** 图层缩放等级范围,默认 [2, 30] (optional, default `[2,30]`)
- `opts.bounds` **(\[Number, Number, Number, Number] | Bounds)** canvas 的范围大小经纬度, 如果传递数字数组类型: [minlng,minlat,maxlng,maxlat]
- `opts.opacity` **Number** 图层透明度,默认为 1 (optional, default `1`)
- `opts.visible` **Boolean** 图层是否可见,默认为 true (optional, default `true`)
- `opts.zIndex` **Number** 图层的层级,默认为 6 (optional, default `6`)
### setCanvas
修改显示的Canvas
#### Parameters
- `canvas` **HTMLCanvasElement**
### getElement
返回 Canvas 对象
Returns **HTMLCanvasElement** canvas 对象
### getBounds
返回 canvas 范围的经纬度
Returns **Bounds** 范围经纬度
### getBounds
当canvas的内容发生改变是用于刷新图层,3D视图下调用,2D视图不需要调用
### setBounds
设置 CanvasLayer 显示的范围
### getOptions
获取图层参数信息
Returns **object** 图层参数信息
### getzIndex
获取图层层级
Returns **number** zIndex 图层层级
### setzIndex
设置图层层级,数字越大图层层级越高
#### Parameters
- `zIndex` **number** 图层层级值
### getOpacity
获取图层透明度
Returns **number** opacity 图层透明度
### setOpacity
设置图层透明度,范围 [0 ~ 1]
#### Parameters
- `opacity` **number** 图层透明度
### getZooms
获取该图层可显示的级别范围,默认取值范围为[2-20]
Returns **\[number, number]** 缩放范围
### setZooms
获取该图层可显示的级别范围
#### Parameters
- `zooms` **\[number, number]** 缩放范围
### show
设置图层可见
### hide
设置图层隐藏
## GLCustomLayer
3d 自定义图层
### Parameters
- `opts` **GlCustomLayerOptions**
- `opts.init` **Function** 初始化的时候,开发者可以在这个函数参数里面获取 gl 上下文,进行一些初始化的操作。
- `opts.render` **Function** 绘制函数,初始化完成时候,开发者需要给该图层设定render方法, </br>
该方法需要实现图层的绘制,API会在合适的时机自动调用该方法
- `opts.zooms` **\[Number, Number]** 图层缩放等级范围,默认 [2, 20] (optional, default `[2,20]`)
- `opts.opacity` **Number** 图层透明度,默认为 1 (optional, default `1`)
- `opts.visible` **Boolean** 图层是否可见,默认为 true (optional, default `true`)
- `opts.zIndex` **Number** 图层的层级,默认为 120 (optional, default `10`)
### Examples
```javascript
var glCustomLayer = new GLCustomLayer({
init: function(gl){
// init shader or sth...
},
render: function(gl, state){
// render every frame
},
});
```
### getMap
获取GLCustomLayer所属地图实例
Returns **(Map | null)**
### getzIndex
获取GLCustomLayer叠加顺序
Returns **number**
### setzIndex
设置GLCustomLayer叠加顺序
#### Parameters
- `zIndex` **number** 叠加值
Returns **void**
### getOpacity
获取GLCustomLayer透明度
Returns **number**
### setOpacity
设置GLCustomLayer透明度
#### Parameters
- `opacity` **number** 透明度
Returns **void**
### getZooms
获取GLCustomLayer显示层级范围
Returns **number**
### setZooms
设置GLCustomLayer显示层级范围
#### Parameters
- `zooms` **Vector** 显示层级范围,默认[3, 20]
Returns **number**
### show
显示GLCustomLayer
Returns **void**
### hide
隐藏GLCustomLayer
Returns **void**