适用版本:ElaneMap H5 API 3.5 前置阅读:建议先阅读《7.1-快速入门:从注册到接入》与《7.2-地图引擎基础:地图控制与业务绘制》,掌握 API 引入、密钥(ak)配置、地图实例化( new ShipxyAPI.Map(...))之后再阅读本篇。本篇涉及服务的 API 引用方式:
| 图层 | 服务入口 | 说明 |
|---|---|---|
| 全球港口 | ShipxyAPI.portDataSymbol | 全球港口瓦片图层,支持墨卡托/纠偏两种 URL |
| 浮标/航标 | ShipxyAPI.NavigationService | 航标显示、添加、定位、选中 |
| 特殊区域 | ShipxyAPI.areaViewSymbol | 排放控制区、专属经济区、时区等六类区域面 |
| 长江航道 | ShipxyAPI.cjhdLayerServer | 长江航道专用瓦片图层 |
| 经纬度网格 | ShipxyAPI.latlngGraticuleServer | 经纬网线与度数标签 |
| 自定义瓦片 | ShipxyAPI.customeTileLayerService | 叠加任意第三方/自有瓦片源 |
| 月更新海图 | L.TileLayer.multi + options.addTileLayer | 月更新海图/海陆一张图(扩展图源方式接入) |
ShipxyAPI.WeatherService 提供气温、气压、风(海风符号/风场)、海浪、海流/海水、降雨、海区预报、台风、潮汐等专业气象图层的显示与隐藏,以及单点经纬度气象数据查询(getLatLngWeather)。气压等值线(weatherChoroplethServer)见本篇第 5 节。var _map = new ShipxyAPI.Map("map", {ak: "您的密钥"});ShipxyAPI.XXXService(_map, options) 初始化服务;初始化后服务对象同时挂载在地图实例上(如 _map.weatherService、_map.areaViewSymbol),两种方式均可调用。show()/hide() 或 showArea()/hideArea() 控制图层显隐。| 参数 | 类型 | 说明 |
|---|---|---|
| map | L.gMap | 地图对象 |
| options | Object | 设置信息,非必填。{WEB_MERCATOR_URL: "WEB墨卡托URL", WEB_MERCATOR_GCJ02_URL: "WEB墨卡托纠偏URL"} |
L.PortDataSymbol 港口图层对象。初始化后也可通过 map.portDataSymbol 访问。| 参数 | 说明 |
|---|---|
| WEB_MERCATOR_URL | 港口瓦片 WEB 墨卡托 URL,默认 //portsrv.shipxy.com/tiles/wm/{0}-{1}-{2}.png |
| WEB_MERCATOR_GCJ02_URL | 港口瓦片 WEB 墨卡托纠偏 URL(GCJ02 坐标系下使用),默认 //portsrv.shipxy.com/tiles/wmgcj/{0}-{1}-{2}.png |
ShipxyAPI.portDataSymbol(map)。| 方法 | 说明 |
|---|---|
| show() | 显示港口图层 |
| hide() | 隐藏港口图层 |
NavigationMarkService(航标展示服务实现类),二者 options 完全一致。| 参数 | 默认值 | 说明 |
|---|---|---|
| onClick | undefined | 单击事件回调 |
| onHover | undefined | 悬浮事件回调 |
| flyToZoom | 10 | 定位默认 zoom |
| bigIconZoom | 6 | 大图标显示级别 |
| iconScale | 0.6 | 图标显示比例 |
| smallIconScale | 1 | 小图标显示比例 |
| isShow | true | 是否显示航标 |
| isShowTooltip | true | 是否显示 tooltip |
| isSelectedShowReal | true | 选中时是否显示真实航标 |
| 方法 | 说明 |
|---|---|
| addMarker(data) | 添加航标,按 MMSI 自动覆盖 |
| addMarkers(arr) | 添加多个航标,按 MMSI 自动覆盖 |
| cancelSelected() | 取消选中 |
| clearMarker() | 擦除所有航标(内存对象未删除) |
| getNavigationByMMSI(mmsi, isRequest) | 获取航标信息;mmsi 为航标标识 MMSI,isRequest 表示是否请求服务器数据;返回航标数据(null 或 CanvasNavigation) |
| getNavigationType(typeCode) | 根据航标类型代码获取航标类型,返回 string |
| locationNavigation(navigation) | 定位航标对象 |
| locationNavigationByMMSI(mmsi) | 通过 MMSI 定位航标 |
| recoveryMarker() | 重绘所有航标(根据内存对象) |
| redraw() | 航标图层重绘 |
| removeAllMarker() | 移除所有航标 |
| removeMarkerByMMSI(mmsi, redraw) | 移除指定 MMSI 航标;redraw(Boolean)表示是否刷新视图 |
| setSelectedNavigation(mmsi) | 设置选中指定 MMSI 的航标 |
| show(isShow) | 航标图层显示、关闭 |
| 区域 |
|---|