<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

- [tsl-map 地图](#tsl-map-%E5%9C%B0%E5%9B%BE)
  - [1.使用方法](#1%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95)
  - [2.参数说明](#2%E5%8F%82%E6%95%B0%E8%AF%B4%E6%98%8E)
  - [3.API 说明](#3api-%E8%AF%B4%E6%98%8E)
  - [地图回调](#%E5%9C%B0%E5%9B%BE%E5%9B%9E%E8%B0%83)
  - [4.存在的问题](#4%E5%AD%98%E5%9C%A8%E7%9A%84%E9%97%AE%E9%A2%98)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->

# tsl-map 地图

## 1.使用方法

## 2.参数说明

mapParams

```json
{
  "url": "", // 地图url
  "mapType": "", // GD/ESRI/GA/TD/BD  高德/Esri//天地图/百度
  "minzoom": 0, // 最小缩放系数
  "maxZoom": 7, // 最大放大系数
  "extent": {
    "xmin": "",
    "ymin": "",
    "xmax": "",
    "ymax": ""
  },
  "mapstyle": "", //'amap://styles/b0cb4e73e4bd6c0cf3aa8991b18388fd'
  "zooms": [10, 20],
  "zoom": 18.4,
  "isRecordExtent": false,
  "isShowTextAtMaxZoom": true,
  "isShowLayerControl": true,
  "viewMode": "2D",
  "pitch": 30,
  "expandZoomRange": true
}
```

| 参数    | 是否必选 | 默认值 | 说明                                    |
| ------- | -------- | ------ | --------------------------------------- |
| url     | 必选     | 空     | 地图 url                                |
| mapType | 必选     | 空     | GD/ESRI/GA/TD/BD 高德/Esri//天地图/百度 |
| minzoom | 必选     | 空     | 最小缩放系数                            |
| maxZoom | 必选     | 空     | 最大放大系数                            |
| extent  | 必选     | 空     | 最大放大系数                            |

## 3.API 说明

| functionName           | 说明                                 | 是否测试 |
| ---------------------- | ------------------------------------ | -------- |
| initMap                | 创建地图                             | 已测试   |
| addPointsLayer         | 添加点图层                           | 已测试   |
| addLinesLayer          | 划线                                 | 已测试   |
| clickVillageWindowShow | 添加面图层                           | void     |
| addPolygonLayer        | 添加一个区域面                       | 已测试   |
| closePopup             | 气泡：关闭气泡                       | 已测试   |
| showPopup              | 气泡：显示气泡                       | 已测试   |
| showStranger           | 气泡：显示陌生人气泡                 | 已测试   |
| showVideo              | 气泡：显示视频气泡                   | 已测试   |
| showCar                | 气泡：显示过车气泡                   | 已测试   |
| showName               | 打开 popup 信息窗方法                | 未用到   |
| hideName               | 关闭 popup 信息窗方法                | 未用到   |
| setbackExtent          | 设置回地图显示范围                   | void     |
| setCenterAndZoom       | 居中缩放地图                         | 已测试   |
| setExtent              | 地图移至范围                         | 已测试   |
| getLayerNames          | 获取所有图层名                       | 已测试   |
| hideLayer              | 隐藏指定图层                         | 已测试   |
| showLayer              | 显示指定图层                         | 已测试   |
| startBlinkingObj       | 开始闪烁动画                         | 已测试   |
| stopBlinkingObj        | 关闭闪烁动画                         | 已测试   |
| searchNearbyObj        | 指定图层里查找距离中心点一定距离要素 | void     |
| onLayerClick           | 事件：Layer 点击                     | 已测试   |
| onExtentChange         | 事件：地图范围（视野）改变           | 已测试   |
| onLayerMouseOver       | 事件：Layer 鼠标移入                 | 已测试   |
| onLayerMouseOut        | 事件：Layer 鼠标移出                 | 已测试   |
| getMapZoom             | 获得地图缩放级别                     | 已测试   |
| getDataExtent          | 获得地图 Extent 数据                 | 已测试   |
| getEuclideanDistance   | 计算两点之间欧几里何距离             | 已测试   |
| getRealDistance        | 计算两点间实际距离                   | 已测试   |

## 地图回调

| 回调名                 | 说明               | 返回             |
| ---------------------- | ------------------ | ---------------- |
| mapPointClicked | 地图 icon 点击回调 | 传入的点数据实体 |

## 4.存在的问题

* 1.Esri isLabel 逻辑没有 
* 2.只有这 hideLayerAndLabel, showLayerAndLabel,showLocation 3 个方法需要移植 
* 3.怎么判断某个图层是否显示在地图上？
* 4.setbackExtent setExtent 两个方法是否合并一下？
* 5.ESRI地图弹窗有个bug待修复
