MultiLabel


    表示地图上的多个文本标注,可以自定义每个文本标注的样式。

构造函数
TMap.MultiLabel(options:MultiLabelOptions)
方法                             返回值                             说明
setMap(map:Map) this 设置地图对象,如果map为null意味着将多个文本标注同时从地图中移除。
setGeometries(geometries: LabelGeometry[]) this 更新多文本标注数据,如果参数为null或undefined不会做任何处理。
setStyles(styles:MultiLabelStyleHash) this 设置MultiLabel图层相关样式信息,如果参数为null或undefined不会做任何处理。
getMap() Map 获取地图对象,若为空返回null。
getId() this 获取图层的id。
getGeometries() LabelGeometry[] 获取多文本标注数据。
getStyles() MultiLabelStyleHash 获取图层相关样式信息。
setVisible(visible: Boolean) this 设置图层是否可见。
getVisible() visible 获取可见状态。
getGeometryById(id:String) LabelGeometry 根据多文本数据id来获取点数据。
updateGeometries(geometry:LabelGeometry[]) this 更新多文本数据,如果geometry的id存在于集合中,会更新对id的数据,如果之前不存在于集合中,会作为新的文本标注添加到集合中;如果参数为null或undefined不会做任何处理。
add(geometries: LabelGeometry[]) this 向图层中添加文本,如果geometry的id已经存在集合中,则该geometry不会被重复添加,如果geometry没有id或者id不存在于集合中会被添加到集合,没有id的geometry会被赋予一个唯一id;如果要添加到集合中的文本存在重复id,这些文本会被重新分配id;如果参数为null或undefined不会做任何处理。
remove(ids: String[]) this 移除指定id的文本,如果参数为null或undefined不会做任何处理。
on(eventName:String, listener:Function) this 添加listener到eventName事件的监听器数组中。
off(eventName:String, listener:Function) this 从eventName事件的监听器数组中移除指定的listener。
事件名                             参数                                        说明
click GeometryOverlayEvent 点击事件
dblclick GeometryOverlayEvent 双击事件
mousedown GeometryOverlayEvent 鼠标在地图区域中左键按下时触发,只在桌面浏览器中触发
mouseup GeometryOverlayEvent 鼠标在地图区域中左键按下又弹起时触发,只在桌面浏览器中触发
mousemove GeometryOverlayEvent 鼠标在地图上移动时触发,只在桌面浏览器中触发
hover GeometryOverlayEvent 鼠标在图层上悬停对象改变时触发,事件对象中的geometry属性会指向交互位置所在图形的LabelGeometry,无图形时事件对象为null,只在桌面浏览器中触发
touchstart GeometryOverlayEvent 在地图区域触摸开始时触发,只在移动浏览器中触发
touchmove GeometryOverlayEvent 在地图区域触摸移动时触发,只在移动浏览器中触发
touchend GeometryOverlayEvent 在地图区域触摸结束时触发,只在移动浏览器中触发



MultiLabelOptions


    MultiLabel配置参数。

属性名称 类型 说明
id String 图层id,若没有会自动分配一个。
map Map 显示文本标注图层的底图。
styles MultiLabelStyleHash 文本标注的相关样式。
enableCollision Boolean 是否开启图层内部的文本标注碰撞。
geometries LabelGeometry[] 文本标注数据数组。



MultiLabelStyleHash


    一个key-value形式对象, 表示文本标注的相关样式信息,key使用字符串,value是 LabelStyle 对象。



LabelStyle


    表示应用于多标注图层的样式类型。

构造函数
TMap.LabelStyle(options:LabelStyleOptions)
名称                             类型                             说明
color String 颜色属性,支持rgb(),rgba(),#RRGGBB等形式,默认为rgba(0,0,0,1)。
size Number 文字大小属性,默认为14。
offset Object 文字偏移属性单位为像素,以PointGeometry的位置点所对应屏幕位置为原点,x轴向右为正向左为负,y轴向下为正向上为负,默认为{x:0, y:0}。
angle Number 文字旋转属性,单位为度,以PointGeometry的位置点所对应屏幕位置为原点,逆时针为正,默认为0。
alignment String 文字水平对齐属性,默认为center,可选值为left(文字左侧与位置锚点对齐)、right(文字右侧与位置锚点对齐)、center(文字水平中心与位置锚点对齐)。
verticalAlignment String 文字垂直对齐属性,默认为middle,可选值为top(文字顶部与位置点对齐)、bottom(文字底部与位置点对齐)、middle(文字垂直中心与位置点对齐)。



LabelGeometry


    文本数据。

属性名称 类型 说明
id String 点图形数据的标志信息,不可重复,若id重复后面的id会被重新分配一个新id,若没有会随机生成一个。
styleId String 对应MultiLabelStyleHash中的样式id,如果样式表中没有包含geometry指定的styleId,则该geometry不会被绘制出来。
position LatLng 标注点位置。
content String 标注文本。
rank Number 当开启文本碰撞时,值越大碰撞优先级越高。关闭碰撞时,表示标注文本的图层内绘制顺序。
properties Object 标注点的属性数据。

这篇文章对您解决问题是否有帮助?

已解决
未解决