Class: GraphicLayer

mapboxgl.supermap.GraphicLayer

高效率点图层。

new mapboxgl.supermap.GraphicLayer(id, options)

mapboxgl/overlay/GraphicLayer.js, line 25
Name Type Description
id string 可选

图层id。默认使用 CommonUtil.createUniqueID("graphicLayer_") 创建专题图层 ID。

options Object

图层配置项。

Name Type Default Description
graphics Array.<mapboxgl.supermap.Graphic>

点要素对象数组 。

color Array.<number> [0, 0, 0, 255] 可选

颜色,目前只支持 rgba 数组。

radius number 10 可选

半径。

opacity number 0.8 可选

不透明度。

highlightColor Array.<number> [0, 0, 128, 128] 可选

高亮颜色,目前只支持 rgba 数组。

radiusScale number 1 可选

点放大倍数。

radiusMinPixels number 0 可选

半径最小值(像素)。

radiusMaxPixels number Number.MAX_SAFE_INTEGER 可选

半径最大值(像素)。

strokeWidth number 1 可选

边框大小。

outline boolean false 可选

是否显示边框。

Members

graphicsArray.<mapboxgl.supermap.Graphic>

点要素对象数组。

idstring

高效率点图层 id。

visibilityboolean

图层显示状态属性。

Default Value:
true

Methods

addGraphics(graphics)

mapboxgl/overlay/GraphicLayer.js, line 215

添加点要素,不会覆盖之前的要素。

Name Type Description
graphics Array.<mapboxgl.supermap.Graphic>

点要素对象数组。

addTo(map)

mapboxgl/overlay/GraphicLayer.js, line 64

图层添加到地图,将在下个版本废弃,请使用 onAdd() 代替。

Name Type Description
map mapboxgl.Map

Mapbox GL 地图对象。

Returns:
this

clear()

mapboxgl/overlay/GraphicLayer.js, line 337

释放图层资源。

draw()

mapboxgl/overlay/GraphicLayer.js, line 454

绘制图层。

getGraphicBy(property, value){ol.Graphic}

mapboxgl/overlay/GraphicLayer.js, line 233

在 Vector 的要素数组 graphics 里面遍历每一个 graphic,当 graphic[property]===value 时,返回此 graphic(并且只返回第一个)。

Name Type Description
property string

graphic 的某个属性名称。

value string

property 所对应的值。

Returns:
Type Description
ol.Graphic 一个匹配的 graphic。

getGraphicById(graphicId){ol.Graphic}

mapboxgl/overlay/GraphicLayer.js, line 251

通过给定一个 id,返回对应的矢量要素。

Name Type Description
graphicId string

矢量要素的属性 id

Returns:
Type Description
ol.Graphic 一个匹配的 graphic。

getGraphicsByAttribute(attrName, attrValue){Array.<ol.Graphic>}

mapboxgl/overlay/GraphicLayer.js, line 261

通过给定一个属性的 key 值和 value 值,返回所有匹配的要素数组。

Name Type Description
attrName string

graphic 的某个属性名称。

attrValue string

property 所对应的值。

Returns:
Type Description
Array.<ol.Graphic> 一个匹配的 graphic 数组。

getState(){Object}

mapboxgl/overlay/GraphicLayer.js, line 405

获取当前地图及图层状态。

Returns:
Type Description
Object 地图及图层状态,包含地图状态信息和本图层相关状态。

moveTo(layerID, before)

mapboxgl/overlay/GraphicLayer.js, line 366

将图层移动到某个图层之前。

Name Type Default Description
layerID string

待插入的图层 ID。

before boolean true 可选

是否将本图层插入到图层 id 为 layerID 的图层之前(如果为 false 则将本图层插入到图层 id 为 layerID 的图层之后)。

onAdd(map){mapboxgl.supermap.GraphicLayer}

mapboxgl/overlay/GraphicLayer.js, line 74

图层添加到地图。

Name Type Description
map mapboxgl.Map

Mapbox GL 地图对象。

Returns:
Type Description
mapboxgl.supermap.GraphicLayer

remove()

mapboxgl/overlay/GraphicLayer.js, line 346

删除该图层。

removeFromMap()

mapboxgl/overlay/GraphicLayer.js, line 356

删除该图层。

Deprecated
  • Yes

removeGraphics(graphics)

mapboxgl/overlay/GraphicLayer.js, line 282

删除要素数组,默认将删除所有要素

Name Type Default Description
graphics Array.<ol.Graphic> null 可选

删除的 graphics 数组

setGraphics(graphics)

mapboxgl/overlay/GraphicLayer.js, line 195

设置绘制的点要素数据,会覆盖之前的所有要素。

Name Type Description
graphics Array.<mapboxgl.supermap.Graphic>

点要素对象数组。

setStyle(styleOptions)

mapboxgl/overlay/GraphicLayer.js, line 164

设置图层整体样式。

Name Type Description
styleOptions Object

样式对象。

Name Type Default Description
color Array.<number> [0, 0, 0, 255] 可选

点颜色。

radius number 10 可选

点半径。

opacity number 0.8 可选

不透明度。

highlightColor Array [0, 0, 128, 128] 可选

高亮颜色,目前只支持 rgba 数组。

radiusScale number 1 可选

点放大倍数。

radiusMinPixels number 0 可选

半径最小值(像素)。

radiusMaxPixels number Number.MAX_SAFE_INTEGER 可选

半径最大值(像素)。

strokeWidth number 1 可选

边框大小。

outline boolean false 可选

是否显示边框。

setVisibility(visibility)

mapboxgl/overlay/GraphicLayer.js, line 392

设置图层可见性,设置图层的隐藏,显示,重绘的相应的可见标记。

Name Type Description
visibility boolean 可选

是否显示图层(当前地图的 resolution 在最大最小 resolution 之间)。

update()

mapboxgl/overlay/GraphicLayer.js, line 320

更新图层。