示例中心
功能在线体验
控制台
您现在的位置: 开发 > 地图 JS API > 参考手册 > 自建图层 >

高德 开发 地图 JS API 参考手册 自建图层

更新时间:2018年02月05日

自建图层

自建图层,指的是除了高德自有图层和其他厂商图层之外的,可由开发者实现自定义绘制和添加的一类图层,包括如下几种

类名

说明

是否插件

AMap.TileLayer.Flexible

自定义切片图层,即可灵活自定义切片内容的栅格图层,继承自AMap.TileLayer

AMap.ImageLayer

图片图层,可将图片叠加在地图的对应区域

AMap.CanvasLayer

Canvas图层,可将Canvas叠加在地图的对应区域

AMap.VideoLayer

Video图层,可将视频叠加在地图的对应区域

AMap.CustomLayer

完全自定义绘制的图层

TileLayer.Flexible图层

灵活切片图层,继承自AMap.TileLayer,开发者可通过构造时传入给其传入createTile字段来指定每一个切片的内容(v1.4.2新增)

构造函数

说明

AMap.TileLayer.Flexible(opts:FlexibleOptions)

创建自定义切片图层

FlexibleOptions

类型

说明

createTile

function(x,y,z,success,fail)

由开发者实现,由API自动调用,xyz分别为切片横向纵向编号和层级,切片大小256。假设每次创建的贴片为A(支持img或者canvas),当创建或者获取成功时请回调success(A),不需要显示或者失败时请回调fail()

cacheSize

Number

内存中缓存的切片的数量上限

opacity

Number

图层的透明度,[0,1]

visible

Boolean

是否显示

map

AMap.Map

图层所属的地图对象

zIndex

Number

层级,缺省为12

zooms

[Number,Number]

设置可见级别,[最小级别,最大级别]

方法

返回值

说明

setMap(map:AMap.Map/null)


设置图层所属的地图对象,传入null时从当前地图移除

getMap()

AMap.Map

返回图层所属的地图对象

show()


显示

hide()


隐藏

setzIndex(zindex:Number)


设置层级

getzIndex()

Number

获取层级

ImageLayer类

图片图层类,用户可以将一张静态图片作为图层添加在地图上,图片图层会随缩放级别而自适应缩放。

构造参数

说明

AMap.ImageLayer(opts:ImageLayerOptions)

构造一个ImageLayer图层对象,需要提供一个Image的url,以及它覆盖的Bounds。Image的内容会根据Bounds大小显示

ImageLayerOptions

类型

说明

bounds

Bounds

ImageLayer显示的范围

url

String

需要显示的Image的Url

opacity

Number

图层的透明度,[0,1]

visible

Boolean

是否显示

map

AMap.Map

图层所属的地图对象

zIndex

Number

层级,缺省为12

zooms

[Number,Number]

设置可见级别,[最小级别,最大级别]

方法

返回值

说明

setMap(map:AMap.Map/null)


设置图层所属的地图对象,传入null时从当前地图移除

getMap()

AMap.Map

返回图层所属的地图对象

getBounds()

Bounds

返回ImageLayer显示的范围

setBounds(bounds:Bounds)


设置ImageLayer显示的范围

show()


显示

hide()


隐藏

setzIndex(zindex:Number)


设置层级

getzIndex()

Number

获取层级

getElement()

HTMLCanvasElement

返回Image对象

setImageUrl(String)


修改Image的Url

getImageUrl()

String

返回Image的Url

VideoLayer类

视频图层类,用户可以将一个视频作为图层添加在地图上,视频图层会随缩放级别而自适应缩放(v1.4.2新增)

构造参数

说明

AMap.VideoLayer(opts:VideoLayerOptions)

构造一个VideoLayer图层对象,需要提供一个Video的url,以及它覆盖的Bounds。Video的内容会根据Bounds大小显示

VideoLayerOptions

类型

说明

autoplay

Boolean

加载完成是否自动播放

loop

Boolean

是否循环播放

bounds

Bounds

VideoLayer覆盖的范围

url

String/[String]

需要显示的Video的Url,可使用同一视频的不同视频格式的url的数组来实现视频的浏览器兼容

opacity

Number

图层的透明度,[0,1]

visible

Boolean

是否显示

map

AMap.Map

图层所属的地图对象

zIndex

Number

层级,缺省为12

zooms

[Number,Number]

设置可见级别,[最小级别,最大级别]

方法

返回值

说明

setMap(map:AMap.Map/null)


设置图层所属的地图对象,传入null时从当前地图移除

getMap()

AMap.Map

返回图层所属的地图对象

show()


显示

hide()


隐藏

setzIndex(zindex:Number)


设置层级

getzIndex()

Number

获取层级

getElement()

HTMLVideoElement

返回Video对象

setVideoUrl(String/[String])


修改Video的Url

getVideoUrl()

String

返回Video的Url

CanvasLayer类

Canas图层类,用户可以将一个Canvas作为图层添加在地图上,Canvas图层会随缩放级别而自适应缩放(v1.4.2新增)

构造参数

说明

AMap.CanvasLayer(opts:CanvasLayerOptions)

构造一个CanvasLayer图层对象,需要提供一个Canvas,以及它覆盖的Bounds。显示的内容会根据Bounds大小显示

CanvasLayerOptions

类型

说明

bounds

Bounds

VideoLayer覆盖的范围

canvas

HTMLCanvasElement

需要显示的Canvas对象

opacity

Number

图层的透明度,[0,1]

visible

Boolean

是否显示

map

AMap.Map

图层所属的地图对象

zIndex

Number

层级,缺省为12

zooms

[Number,Number]

设置可见级别,[最小级别,最大级别]

方法

返回值

说明

reFresh()


当canvas的内容发生改变是用于刷新图层,3D视图下调用,2D视图不需要调用

setMap(map:AMap.Map/null)


设置图层所属的地图对象,传入null时从当前地图移除

getMap()

AMap.Map

返回图层所属的地图对象

show()


显示

hide()


隐藏

setzIndex(zindex:Number)


设置层级

getzIndex()

Number

获取层级

getElement()

HTMLCanvasElement

返回Canvas对象

setCanvas(HTMLCanvasElement)


修改显示的Canvas

CustomLayer类(插件)

自定义图层是一种完全由开发者来指定绘制方法的图层

构造函数

说明

AMap.CustomLayer(ops:CustomLayerOptions)

用于构建自定义图层

属性

类型

说明

render

function

初始化完成时候,开发者需要给该图层设定render方法,该方法需要实现图层的绘制,API会在合适的时机自动调用该方法

CustomLayerOptions

类型

说明

map

AMap.Map

所属的地图对象

zIndex

Number

层级

opacity

Number

透明度

zooms

[Number,Number]

显示级别

方法

返回值

说明

setOpacity()


设置透明度

setMap(map:AMap.Map/null)


设置图层所属的地图对象,传入null时从当前地图移除

getMap()

AMap.Map

返回图层所属的地图对象

show()


显示

hide()


隐藏

setzIndex(zindex:Number)


设置层级

getzIndex()

Number

获取层级



示例中心 功能
在线体验
常见问题