# 地图(Ships66)
# 静态属性说明
属性名 | 说明 |
---|---|
layers | 存放图层类 |
controls | 存放控件 |
mapName | 图源枚举对象 |
map | map (opens new window)对象 |
# 静态方法
# 实例化
# new Ships66(key)
船顺地图的实例对象
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
key | 船顺密钥 | String | - | - |
方法
# init(id,viewOption, option){}
地图初始化
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
id | dom元素id | String | - | - |
viewPotion | openlayers/view (opens new window)配置项 | Object | - | { constrainResolution:true,multiWorld: true,enableRotation: false,extent: [Number.NEGATIVE_INFINITY, -20037508.342789244, Number.POSITIVE_INFINITY, 20037508.342789244]} |
option | 配置项,属性见下方 | Object | - | - |
属性名 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
defaultName | 地图默认显示的瓦片 | String | - | layers[0] |
layers | 切换地图底图瓦片的集合 | Array<String> | - | ['MT_OSM','MT_SATE'] |
sourceOption | 自定义瓦片 | Object | - |
sourceOption说明 目前自定义瓦片仅支持xyz图源,如需其他图源请自行百度查阅
覆盖地图基础图层:
{
"MT_SATE": {
"scale": 2,
"url": "xyz图源地址"
},
"MT_OSM": {
"scale": 1,
"url": "xyz图源地址"
}
}
自定义图层:
{
"BAR": {
"scale": 1,
"url": "xyz图源地址"
}
}
loadTileToMap('BAR')
# changeBaseMap(sourceName)
切换底图瓦片源
sourceName : 上方option配置项 layers数组的某个值
# addControl(name,option)
添加地图控件
name可选值:mousePosition(鼠标移动显示经纬度),scaleLine(比例尺),fullScreen(全屏)
option可配置项,不传采用默认项:openlayer control对应子类的配置项,例如mousePosition (opens new window)
TIP
如需覆盖css样式,请通过开发者模式查看元素className,覆盖处理
# loadTileToMap(sourceName,option,xyzOption)
添加图源到地图上
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
sourceName | 图源名字 | String | 见下方 | - |
option | layer/tile (opens new window) 配置项 | Object | - | { minZoom: 2, maxZoom: 18 } |
xyzOption | source/XYZ (opens new window) 配置项 | Object | - | {} |
sourceName 可选值
名字 | 说明 |
---|---|
MT_CNMAP | 海图 |
MT_TIANDI_CVA | 地图标注 |
GREEN_DOT | 船舶绿点图 |
TIP
添加到地图的图源会赋值在实例对象的layers属性对象中
示例:
ships.loadTileToMap('GREEN_DOT')
const greenLayer = ships.layers['GREEN_DOT']
# getServerData(option) => {Promise}
网络请求方法
返回 Promise
option说明
属性名 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
url | 请求地址 | String | - | - |
method | 请求方式 | String | - | GET |
formData | post请求,请求参数是否为formData | Boolean | - | true |
data | 请求参数 | Object | - | - |
需要添加其他属性或者请求头参考axios (opens new window)
调用示例
getServerData({
url:'',
method:'post',
data:{},
}).then(res=>{//返回的数据
}).catch(err=>{//失败
})
# getLocation() => {Promise}
定位函数
返回 Promise
TIP
电脑端浏览器定位获取的是城市定位