Class: Boundary

Boundary

集成在线百度地图、天地图、高德地图的行政区划查询服务,已适配坐标系。

new Boundary(this.$map).search(
  "浦口区",
  evt => {
    evt["polygon"].on("mouseover", e => {
      console.log(e, evt);
    });
  },
  {
    fill: {
      color: "blue",
      opcity: 0.3
    },
    stroke: {
      color: "yellow",
      width: 2,
      lineDash: [10, 10]
    }
  }
);

new Boundary(map)

app/boundary/Boundary.js, line 37

构造一个Boundary对象

Name Type Description
map Map

当前操作所在的Map对象

Classes

Boundary

Methods

staticBoundary.getAMapData(options){Promise}

app/boundary/Boundary.js, line 130

高德地图的行政区划查询服务

Name Type Description
options Object

调用高德地图的行政区划查询服务所需的参数对象

Name Type Default Description
keywords String

查询关键字

url String

行政区划查询服务地址,一般问号前;有默认值

key String

高德地图政区划查询服务key,有默认值

outputCoordType String "" optional

输出的坐标类型, 有下面几种类型,"AMap" "BMap" "TMap" "GMap";如果不设置,得到坐标为高德经纬度坐标;

Returns:
Type Description
Promise 如果有值且正确返回参数

staticBoundary.getBMapData(options){Promise}

app/boundary/Boundary.js, line 145

百度地图的行政区划查询服务

Name Type Description
options Object

调用百度地图的行政区划查询服务所需的参数对象

Name Type Default Description
keywords String

查询关键字

key String

百度地图API的秘钥ak,有默认值

outputCoordType String "" optional

输出的坐标类型, 有下面几种类型,"AMap" "BMap" "TMap" "GMap";如果不设置,得到坐标为百度地图经纬度坐标;

Returns:
Type Description
Promise 如果有值且正确返回参数

staticBoundary.getTMapData(options){Promise}

app/boundary/Boundary.js, line 161

天地图的行政区划查询服务

Name Type Description
options Object

调用天地图的行政区划查询服务所需的参数对象

Name Type Default Description
keywords String

查询关键字

url String

行政区划查询服务地址,一般问号前;有默认值

key String

天地图政区划查询服务tk,有默认值

outputCoordType String "" optional

输出的坐标类型, 有下面几种类型,"AMap" "BMap" "TMap" "GMap";如果不设置,得到坐标为天地图经纬度坐标;

Returns:
Type Description
Promise 如果有值且正确返回参数

clear()

app/boundary/Boundary.js, line 106

从图层中清除显示的结果要素

get(keywords){Promise}

app/boundary/Boundary.js, line 64

行政区划查询函数,返回的坐标值,就是当前地图坐标系下的坐标

Name Type Description
keywords String

查询关键字. 如果当前地图是百度地图,则支持"省市区"这种名称查询,例如:输入"天津市天津市滨海新区"关键字, 查询到的行政区划信息就是"滨海新区"的。 如果当前地图是高德地图、天地图、谷歌地图,则只支持单个关键词语搜索关键词支持:行政区名称; 例如:搜索省份(例如山东),能够显示市(例如济南),区(例如历下区);这种情况如果遇到多个名字相同的区域, 建议的解决方案:①去高德/天地图的WEB API开发平台官网,查询区域的行政编码传入,例如:查询 "鼓楼区"那么就输入对应的行政编码"320302";②直接调用百度地图的行政区划查询接口--"getBMapBoundery", 输入相应参数(例如江苏省南京市鼓楼区)进行查询,然后输出对应的地图类型坐标即可。

Returns:
Type Description
Promise 如果有值且正确返回参数

remove()

app/boundary/Boundary.js, line 114

从地图中移出图层

app/boundary/Boundary.js, line 89

完成行政区划查询以及绘制

Name Type Description
keywords String

查询关键字.

callback function

回调函数,返回当前绘制的polygon对象和查询的边界数据,可以用于注册相关事件

options Object

绘制区域的样式,有默认样式

Name Type Description
stroke StrokeOptions

边界样式

fill FillOptions

区域填充样式