Summary
Methods:
addOverlay |
添加单个叠加物。 |
addOverlays |
添加多个叠加物。 |
getAllOverlays |
获取图层上所有的叠加物对象。 |
getId |
获取叠加图层的id。 |
getLayerType |
获取图层类型 |
getLayerZIndex |
获取当前图层的顺序。 |
getMap |
获取拥有该图层的地图对象。 |
getMaxVisibleZoom |
获取图层的最大显示层级。 |
getMinVisibleZoom |
获取图层的最小显示层级。 |
getName |
获取图层名称。 |
getOverlayByAttribute |
根据自定义属性获取叠加物。 |
getOverlaysByDomId |
根据属性值里的domId值获取叠加物。 |
getVisibility |
获取图层的可见性。 |
redraw |
重新绘制 |
removeAllOverlays |
移除图层上所有的叠加物对象。 |
removeOverlay |
移除图层上单个叠加物对象。 |
removeOverlaysByAttribute |
根据自定义属性删除叠加物对象。 |
removeOverlaysByFilter |
根据回调函数删除叠加物对象。 |
setLayerZIndex |
设置当前图层的顺序。 |
setMaxVisibleZoom |
设置图层的最大显示层级。 |
setMinVisibleZoom |
设置图层的最小显示层级。 |
setVisibility |
设置图层的可见性。 |
Constructor
new OverlayLayer(name, options)
Parameters:
Name | Type | Description | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
name |
String | 图层名称 |
|||||||||||||||
options |
Object | 可选项。给出的属性都将被绑定到该图层对象上。
|
Example
let overlayLayer = new hmap.layer.OverlayLayer("叠加物图层");
Methods
-
addOverlay(overlay) → {module:layer~OverlayLayer}
-
添加单个叠加物。
Parameters:
Name Type Description overlay
module:overlay~Overlay 要添加的叠加物
Throws:
Example
let content = document.createElement("div"); content.textContent = "弹框内容"; let location = new hmap.basetype.Coordinate(120, 30, 0); let overlay = new hmap.overlay.SimplePopup({ "location":location, "domId":"domId", "element":content }); overlayLayer.addOverlay(overlay);
-
addOverlays(overlays) → {module:layer~OverlayLayer}
-
添加多个叠加物。
Parameters:
Name Type Description overlays
Array.<module:overlay~Overlay> 要添加的叠加物数组
Example
let content = document.createElement("div"); content.textContent = "弹框内容"; let location = new hmap.basetype.Coordinate(120, 30, 0); let overlay = new hmap.overlay.SimplePopup({ "location":location, "domId":"domId", "element":content }); let overlayLayer = overlayLayer.addOverlays([overlay]);
-
getAllOverlays() → {Array.<module:overlay~Overlay>}
-
获取图层上所有的叠加物对象。
Example
let overlayArr = overlayLayer.getAllOverlays();
-
getId() → {String}
-
获取叠加图层的id。
Returns:
String -图层id
-
getLayerType() → {String}
-
获取图层类型
Returns:
String -图层类型
-
getLayerZIndex()
-
获取当前图层的顺序。
Returns:
-当前图层的zindex
-
getMap() → {module:Map}
-
获取拥有该图层的地图对象。
Example
let map = overlayLayer.getMap();
-
getMaxVisibleZoom() → {Number}
-
获取图层的最大显示层级。
Returns:
Number -图层的最大显示层级
-
getMinVisibleZoom() → {Number}
-
获取图层的最小显示层级。
Returns:
Number -图层的最小显示层级
-
getName() → {String}
-
获取图层名称。
Returns:
String -图层名称
-
getOverlayByAttribute(key, value) → {Array.<module:overlay~Overlay>}
-
根据自定义属性获取叠加物。
Parameters:
Name Type Description key
String 键
value
String 键对应的值
Example
let content = document.createElement("div"); content.textContent = "弹框内容"; let location = new hmap.basetype.Coordinate(120, 30, 0); let overlay = new hmap.overlay.SimplePopup({ "location":location, "domId":"domId", "element":content, "name":"popup1"//自定义key-value }); overlayLayer.addOverlays([overlay]); let overlays = overlayLayer.getOverlayByAttribute("name","popup1");
-
getOverlaysByDomId(domId) → {Array.<module:overlay~Overlay>}
-
根据属性值里的domId值获取叠加物。
Parameters:
Name Type Description domId
String 叠加物的domid
Throws:
TypeError -当参数不是字符串时发生
Example
let content = document.createElement("div"); content.textContent = "弹框内容"; let location = new hmap.basetype.Coordinate(120, 30, 0); let overlay = new hmap.overlay.SimplePopup({ "location":location, "domId":"domId", "element":content }); overlayLayer.addOverlays([overlay]); let overlays = overlayLayer.getOverlaysByDomId("domId");
-
getVisibility() → {Boolean}
-
获取图层的可见性。
Returns:
Boolean -当前图层的可见性
-
redraw()
-
重新绘制
-
removeAllOverlays() → {Number}
-
移除图层上所有的叠加物对象。
Returns:
Number -返回移除的叠加物数量
Example
overlayLayer.removeAllOverlays();
-
removeOverlay(overlay) → {Number}
-
移除图层上单个叠加物对象。
Parameters:
Name Type Description overlay
module:overlay~Overlay 叠加物对象
Throws:
Returns:
Number -返回移除的叠加物数量
Example
overlayLayer.removeOverlay(overlay);
-
removeOverlaysByAttribute(key, value) → {Number}
-
根据自定义属性删除叠加物对象。
Parameters:
Name Type Description key
String 键
value
String 键对应的值
Returns:
Number -返回删除的叠加物数量
Example
let content = document.createElement("div"); content.textContent = "弹框内容"; let location = new hmap.basetype.Coordinate(120, 30, 0); let overlay = new hmap.overlay.SimplePopup({ "location":location, "domId":"domId", "element":content, "name":"popup1"//自定义key-value }); overlayLayer.addOverlays([overlay]); overlayLayer.removeOverlaysByAttribute("name","popup1");
-
removeOverlaysByFilter(filterFunction) → {Number}
-
根据回调函数删除叠加物对象。
Parameters:
Name Type Description filterFunction
function 回调函数,以叠加物为参数,返回true删除,返回false不删除。
Returns:
Number -被删除的叠加物的数量
Example
let content = document.createElement("div"); content.textContent = "弹框内容"; let location = new hmap.basetype.Coordinate(120, 30, 0); let overlay = new hmap.overlay.SimplePopup({ "location":location, "domId":"domId", "element":content, "name":"popup1"//自定义key-value }); overlayLayer.addOverlays([overlay]); overlayLayer.removeOverlaysByFilter (function(overlay){ if(overlay.get("name") == "popup1"){ return true;//返回true,表示删除; } });
-
setLayerZIndex(zIndex)
-
设置当前图层的顺序。
Parameters:
Name Type Description zIndex
Number 新的索引值。
-
setMaxVisibleZoom(maxVisibleZoom)
-
设置图层的最大显示层级。
Parameters:
Name Type Default Description maxVisibleZoom
Number 24 当缩放级别大于该层级时,不显示图层。
Throws:
Error -当参数不在[0, 24]区间范围时,抛出异常。
-
setMinVisibleZoom(minVisibleZoom)
-
设置图层的最小显示层级。
Parameters:
Name Type Default Description minVisibleZoom
Number 0 当缩放级别小于该层级时,不显示图层。
Throws:
Error -当参数不在[0, 24]区间范围时,抛出异常。
-
setVisibility(visible) → {module:layer~OverlayLayer}
-
设置图层的可见性。
仅设置该图层是否可见,而图层本身依然存在。Parameters:
Name Type Default Description visible
Boolean true 是否可见,可见设置true,不可见设置false。
Throws:
TypeError -当传入的参数不是Boolean时,抛出异常"visible must be boolean type!"
Example
overlayLayer.setVisibility(false);