qq.maps.Polyline 类
继承自MVCObject
类
折线覆盖物。
构造函数
构造函数 |
---|
Polyline(options:PolylineOptions)
|
方法
方法 | 返回值 | 说明 |
---|---|---|
getBounds()
|
LatLngBounds
|
返回折线的地理区域范围。 |
getMap()
|
Map
|
获取折线所在的map对象 |
getPath()
|
MVCArray.<LatLng>
|
获取折线的经纬度坐标数组。 |
getStrokeColor()
|
Color
|
获取折线的颜色。 |
getStrokeWeight()
|
Number
|
获取折线的宽度。 |
getStrokeLinecap()
|
String
|
获取折线末端线帽的样式。 |
getVisible()
|
Boolean
|
获取折线的可见性。 |
getZIndex()
|
Number
|
获取折线的zIndex值。 |
setMap(map:Map)
|
none
|
设置折线所在的map对象 |
setPath(path:Array.<LatLng> | MVCArray.<LatLng>)
|
none
|
设置折线的路径。 |
setStrokeColor(color:Color)
|
none
|
设置折线的颜色(包括透明度)。 |
setStrokeWeight(width:Number)
|
none
|
设置折线的宽度。 |
setStrokeLinecap(linecap:String)
|
none
|
设置折线末端线帽的样式,圆形为round(默认),方形为square,平直为butt。 |
setVisible(visible:Boolean)
|
none
|
设置折线的可见性。 |
setZIndex(zIndex:Number)
|
none
|
设置折线的zIndex。 |
setOptions(options:PolylineOptions)
|
none
|
事件
事件名 | 参数 | 说明 |
---|---|---|
map_changed
|
none
|
当此折线所在地图更改时会触发此事件。 |
visible_changed
|
none
|
当此折线所可见性更改时会触发此事件。 |
zindex_changed
|
none
|
当此折线zIndex更改时会触发此事件。 |
click
|
event:MouseEvent
|
点击此折线后会触发此事件。 |
dblclick
|
event:MouseEvent
|
双击折线后会触发此事件。 |
rightclick
|
event:MouseEvent
|
右键点击折线后会触发此事件。 |
mousedown
|
event:MouseEvent
|
鼠标在折线上按下触发此事件。 |
mouseup
|
event:MouseEvent
|
鼠标在折线上抬起时触发此事件。 |
mouseover
|
event:MouseEvent
|
当鼠标进入折线区域时会触发此事件。 |
mouseout
|
event:MouseEvent
|
鼠标离开折线时触发此事件。 |
mousemove
|
event:MouseEvent
|
鼠标在折线上移动时触发此事件。 |
insertNode
|
event:MouseEvent
|
添加折线节点时触发此事件。 |
removeNode
|
event:MouseEvent
|
删除折线节点时触发此事件。 |
adjustNode
|
event:MouseEvent
|
移动折线节点时触发此事件。 |
实例
例子 1:
本示例中,介绍如何设置线条颜色及透明度
- var map = new qq.maps.Map(document.getElementById("container"), {
- // 地图的中心地理坐标。
- center: new qq.maps.LatLng(39.916527, 116.397128),
- zoom: 14
- });
- var path = [
- new qq.maps.LatLng(39.910, 116.399),
- new qq.maps.LatLng(39.920, 116.405),
- new qq.maps.LatLng(39.930, 116.420)
- ];
- var polyline = new qq.maps.Polyline({
- map: map,
- path: path,
- strokeColor: new qq.maps.Color(0, 0, 0, 0.5)
- });
例子 2:
本示例中,介绍如何开启编辑功能
- var map = new qq.maps.Map(document.getElementById("container"), {
- // 地图的中心地理坐标。
- center: new qq.maps.LatLng(39.916527, 116.397128),
- zoom: 14
- });
- var path = [
- new qq.maps.LatLng(39.910, 116.399),
- new qq.maps.LatLng(39.920, 116.405),
- new qq.maps.LatLng(39.930, 116.420)
- ];
- var polyline = new qq.maps.Polyline({
- map: map,
- path: path,
- editable: true
- });
例子 3:
本示例中,介绍如何使用折线覆盖物的方法
- var init = function() {
- var center = new qq.maps.LatLng(39.916527, 116.397128);
- var map = new qq.maps.Map(document.getElementById('container'), {
- center: center,
- zoom: 13
- });
- var path1 = [
- new qq.maps.LatLng(39.910, 116.399),
- new qq.maps.LatLng(39.920, 116.405),
- new qq.maps.LatLng(39.930, 116.420)
- ];
- var path2 = [
- new qq.maps.LatLng(39.930456, 116.387554),
- new qq.maps.LatLng(39.929008, 116.414162),
- new qq.maps.LatLng(39.909786, 116.379314),
- new qq.maps.LatLng(39.908206, 116.416908)
- ];
- var polyline = new qq.maps.Polyline({
- path: path1,
- strokeColor: '#000000',
- strokeWeight: 5,
- editable: false,
- map: map
- });
- //setMap()设置折线覆盖物所在地图
- var mapM = document.getElementById("mapM");
- qq.maps.event.addDomListener(mapM, "click", function() {
- polyline.setVisible(true);
- if (polyline.getMap()) {
- polyline.setMap(null);
- } else {
- polyline.setMap(map);
- }
- });
- //setCursor()设置鼠标经过折线时的样式
- var curF = true;
- var cursor = document.getElementById("cursor");
- qq.maps.event.addDomListener(cursor, "click", function() {
- polyline.setMap(map);
- polyline.setVisible(true);
- if (curF) {
- curF = false;
- polyline.setCursor("default");
- } else {
- curF = true;
- polyline.setCursor("pointer");
- }
- });
- //setPath()设置折线路径
- var pathF = true;
- var path = document.getElementById("path");
- qq.maps.event.addDomListener(path, "click", function() {
- polyline.setMap(map);
- polyline.setVisible(true);
- if (pathF) {
- pathF = false;
- polyline.setPath(path2);
- } else {
- pathF = true;
- polyline.setPath(path1);
- }
- });
- //setStrokeColor()设置折线的颜色
- var strokeF = true;
- var strokeC = document.getElementById("strokeC");
- qq.maps.event.addDomListener(strokeC, "click", function() {
- polyline.setMap(map);
- polyline.setVisible(true);
- if (strokeF) {
- strokeF = false;
- //设置折线的颜色和透明度
- polyline.setStrokeColor(new qq.maps.Color(0, 0, 0, 0.5));
- } else {
- strokeF = true;
- polyline.setStrokeColor("#1c29d8");
- }
- });
- //setStrokeDashStyle()设置折线的样式
- var dashF = true;
- var dash = document.getElementById("dash");
- qq.maps.event.addDomListener(dash, "click", function() {
- polyline.setMap(map);
- polyline.setVisible(true);
- if (dashF) {
- dashF = false;
- polyline.setStrokeDashStyle("dash");
- } else {
- dashF = true;
- polyline.setStrokeDashStyle("solid");
- }
- });
- //setStrokeWeight()设置折线的宽度
- var strokeWeightF = true;
- var strokeWeight = document.getElementById("strokeWeight");
- qq.maps.event.addDomListener(strokeWeight, "click", function() {
- polyline.setMap(map);
- polyline.setVisible(true);
- if (strokeWeightF) {
- strokeWeightF = false;
- polyline.setStrokeWeight(10);
- } else {
- strokeWeightF = true;
- polyline.setStrokeWeight(5);
- }
- });
- //setVisible()设置折线的可见性
- var visibleF = true;
- var visibleT = document.getElementById("visibleT");
- qq.maps.event.addDomListener(visibleT, "click", function() {
- polyline.setMap(map);
- if (visibleF) {
- visibleF = false;
- polyline.setVisible(false);
- } else {
- visibleF = true;
- polyline.setVisible(true);
- }
- });
- };