Constructor
new amapwms(map, service, workspace, options, ogc)
构造方法
Parameters:
| Name | Type | Default | Description | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
map |
String | 高德地图实例 | |||||||||||||||||||||||||||||||||
service |
String | /geoserver | GeoServer服务器地址,示例:http://localhost:8085/geoserver | ||||||||||||||||||||||||||||||||
workspace |
String | GeoServer工作空间,示例:demo | |||||||||||||||||||||||||||||||||
options |
Object | 选项配置
Properties
|
|||||||||||||||||||||||||||||||||
ogc |
Object | OGC选项配置
Properties
|
- Source:
Example
示例一:
var wms = new amapwms('http://localhost:8085/geoserver','demo')
wms.initialize().then(() => { console.log('加载完毕') })
示例二:
var wms = new amapwms('http://localhost:8085/geoserver','demo',{
supportRightClick: true,
hcolor: '#00ffff'
})
示例三:
var wms = new amapwms('http://localhost:8085/geoserver','demo',{
supportRightClick: true,
hcolor: '#00ffff'
},{
tileSize:512,
zIndex:1,
buffer:60
})
wms.initialize().then(() => { console.log('加载完毕') })
Extends
Methods
_buildStyle(layer, icons)
构建指定图层的样式文件内容
Parameters:
| Name | Type | Description |
|---|---|---|
layer |
Object | |
icons |
Array |
- Overrides:
- Source:
_buildStyleRule()
构建样式的rule部分
- Overrides:
- Source:
_deleteOldStyleFolder(exceptFolder)
删除历史样式资源文件夹,可排除指定文件夹
Parameters:
| Name | Type | Description |
|---|---|---|
exceptFolder |
string | 排除文件夹名 |
- Overrides:
- Source:
_deleteStyleBatch(stylenames)
批量删除指定样式,即便是样式已关联到图层
Parameters:
| Name | Type | Description |
|---|---|---|
stylenames |
Array | 样式名称集合 |
- Overrides:
- Source:
_findScale(zoom, isMin)
获取指定缩放级别的合适比例尺
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
zoom |
number | 缩放级别 | |
isMin |
Boolean | false | 是否找最小比例尺 |
- Overrides:
- Source:
_formatIcon(data) → {object}
格式化图标信息
Parameters:
| Name | Type | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data |
object |
Properties
|
- Overrides:
- Source:
Returns:
返回格式化后的符号信息
return {
title:
properties:{},
content:
minscale:
maxscale:
zindex:
size:
color:
}
- Type
- object
(async) _paramSVGcolor(svg, param, multicolor)
参数化svg,用于通过geoserver wms的env参数动态改变svg颜色
Parameters:
| Name | Type | Description |
|---|---|---|
svg |
string | svg内容 |
param |
string | 变量名 |
multicolor |
boolean |
- Overrides:
- Source:
(async) _uploadResourceBatchSync(folder, datas, multicolor)
按顺序批量上传图标的svg文件
Parameters:
| Name | Type | Description |
|---|---|---|
folder |
string | 文件夹名 |
datas |
string | 符号参数集合 |
multicolor |
string | 是否是多色图标 |
- Overrides:
- Source:
(async) _uploadStyleBatch(styles)
批量上传样式并设置为默认样式
Parameters:
| Name | Type | Description |
|---|---|---|
styles |
Array | 样式配置集合 |
- Overrides:
- Source:
addCustomLayer(layerName, featureopt, coloropt, twinkleopt, durationopt)
新建自定义临时图层(自定义图层)
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
layerName |
String | 图层名称 | ||
feature |
String | Object | Array |
<optional> |
要素 | |
color |
String |
<optional> |
#00ffff | 要素默认高亮颜色,十六进制格式,示意:'#00ffff' |
twinkle |
Boolean |
<optional> |
false | 是否闪烁该图层,默认值为false |
duration |
Boolean |
<optional> |
1000 | 闪烁图层动画时长,默认值为1000 |
- Source:
Example
示例一:this.addCustomLayer('BASELAYER','pipe.1','#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例二:this.addCustomLayer('BASELAYER',{id:'pipe.1'},'#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例三:this.addCustomLayer('BASELAYER',{id:'pipe.1',color:'#00ffff'}) // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例四:this.addCustomLayer('BASELAYER',['pipe.1','pipe.2'],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例五:this.addCustomLayer('BASELAYER',[{id:'pipe.1'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例六:this.addCustomLayer('BASELAYER',[{id:'pipe.1',color:'#00ffff'},{id:'pipe.2',color:'#00ffff'}]) // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ff00',注意此情况时一般使用 示例七,需要设置默认高亮色
示例七:this.addCustomLayer('BASELAYER',[{id:'pipe.1',color:'#00ff00'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1的高亮颜色为 '#00ff00',pipe.2的高亮颜色为默认值 #00ffff'
示例八:this.addCustomLayer('BASELAYER') // 清除自定义临时图层
addExtraLayer(featureopt, coloropt, twinkleopt, durationopt)
新建自定义临时图层(拓展图层)
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
feature |
String | Object | Array |
<optional> |
要素 | |
color |
String |
<optional> |
#00ffff | 要素默认高亮颜色,十六进制格式,示意:'#00ffff' |
twinkle |
Boolean |
<optional> |
false | 是否闪烁该图层,默认值为false |
duration |
Boolean |
<optional> |
1000 | 闪烁图层动画时长,默认值为1000 |
- Source:
Example
示例一:this.addExtraLayer('pipe.1','#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例二:this.addExtraLayer({id:'pipe.1'},'#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例三:this.addExtraLayer({id:'pipe.1',color:'#00ffff'}) // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例四:this.addExtraLayer(['pipe.1','pipe.2'],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例五:this.addExtraLayer([{id:'pipe.1'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例六:this.addExtraLayer([{id:'pipe.1',color:'#00ffff'},{id:'pipe.2',color:'#00ffff'}]) // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ff00',注意此情况时一般使用 示例七,需要设置默认高亮色
示例七:this.addExtraLayer([{id:'pipe.1',color:'#00ff00'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1的高亮颜色为 '#00ff00',pipe.2的高亮颜色为默认值 #00ffff'
示例八:this.addExtraLayer() // 清除高亮要素
addPoint(datas) → {Promise}
添加点要素(或集合)
Parameters:
| Name | Type | Description | |||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
datas |
Array.<object> | object | 点要素对象(或集合)
Properties
|
- Overrides:
- Source:
Returns:
返回新建点的结果
- Type
- Promise
Example
let data = {
fixed:false,
lng:105,
lat:30,
type:'',
property:{
status:0,
},
style:{
color:'#ff0000',
size:20,
}
}
addPoint(data)或addPoint[(data]);
addPolyline(datas) → {object}
添加线要素(或集合)
Parameters:
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
datas |
Array.<object> | object | 线要素对象(或集合)
Properties
|
- Overrides:
- Source:
Returns:
返回格式化后点对象
- Type
- object
Example
let data = {
fixed:false,
path:[[103,30],[103,31]]
type:'',
property:{
status:0,
},
style:{
color:'#ff0000',
size:20,
}
}
addPolyline(data)或addPolyline([data]);
clear()
清理地图
- Source:
clearBaseLayer()
新建BASE图层(底图)
- Source:
clearCustomLayer(layerName)
新建自定义临时图层(自定义图层)
Parameters:
| Name | Type | Description |
|---|---|---|
layerName |
String | 图层名称 |
- Source:
clearExtraLayer()
清理自定义临时图层(拓展图层)
- Source:
clearTwinkle()
清理图层闪烁动画
- Source:
createFeature(features:) → {Promise}
创建地图要素
Parameters:
| Name | Type | Description |
|---|---|---|
features: |
Object | Array | [{ name:'fitting'//图层名 features:[{//该图层需要新增的要素集合 properties:{name:'',x:'',y:''}//属性对象,具体属性由gis数据结构决定 geometry:{}//几何图形的geojson格式对象 }] }] |
- Overrides:
- Source:
Returns:
创建结果
- Type
- Promise
createGetWMS(ogc, extra)
构建基于get wms请求的图层
Parameters:
| Name | Type | Description |
|---|---|---|
ogc |
* | |
extra |
* |
- Source:
createPostWMS(ogc, extra, offsetX, offsetY)
构建基于post wms的图层
Parameters:
| Name | Type | Description |
|---|---|---|
ogc |
* | |
extra |
* | |
offsetX |
number | 是否进行火星坐标纠偏,投影坐标系偏移量 |
offsetY |
number | 是否进行火星坐标纠偏,投影坐标系偏移量 |
- Source:
(async) createWorkspace(optionopt)
创建工作空间
Parameters:
| Name | Type | Attributes | Description | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
option |
object |
<optional> |
配置信息,缺少时会参考当前实例的参数
注意:不指定完整的数据库连接信息时,需要保证geoserver上已有postgis的存储,新建时会复用该存储的数据库连接信息
Properties
|
- Overrides:
- Source:
Example
var wms = new mapwms('http://localhost:8085/geoserver','demo')
示例一:
//wms.initialize().then(() => { console.log('加载完毕') })//由于demo不存在,故不用调用initialize方法
//新建工作空间demo
wms.createWorkspace()
示例二:
//新建工作空间demo2
wms.createWorkspace({
workspace:'demo2'
})
示例三:
//在新geoserver上创建工作空间demo3
wms.createWorkspace({
service:'http://192.168.10.212:8080/geoserver',
workspace:'demo3'
})
示例四:
//新建工作空间dem04,指定完整的数据库连接信息
wms.createWorkspace({
workspace: 'dem04',
database: 'dem3_DB',
host: '127.0.0.1',
port: 2345,
user: 'postgres',
passwd:'admin'
}
emit(eventName, args) → {eventbus}
触发当前实例上的事件。附加参数都会传给监听器回调。
Parameters:
| Name | Type | Description |
|---|---|---|
eventName |
String | 事件名称 |
args |
Array | 参数 |
- Overrides:
- Source:
Returns:
返回当前事件对象
- Type
- eventbus
filterAttribute(attribute)
过滤要素,通过要素属性匹配
Parameters:
| Name | Type | Description |
|---|---|---|
attribute |
Object | 属性匹配 |
- Overrides:
- Source:
Example
示例一:
this.filterAttribute({
color:'#0040FF',
subtype:'c2246ddf-36b8-4067-b498-ac6b002513f0'
})
示例二:
this.filterAttribute({
color:['#0040FF','#FF8C00'],
subtype:'c2246ddf-36b8-4067-b498-ac6b002513f0'
})
示例三:
this.filterAttribute({
color:['#0040FF','#FF8C00'],
subtype:['c2246ddf-36b8-4067-b498-ac6b002513f0']
})
filterFeature(feature)
过滤要素
Parameters:
| Name | Type | Description |
|---|---|---|
feature |
String | Array.<String> | 要素id或要素id列表,不输入值时代表不执行过滤操作 |
- Overrides:
- Source:
filterGeometry(pointList, relationshipopt)
空间过滤要素
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
pointList |
Array | (WGS84)坐标集合,可构成多边形,可以是多个多边形构成的多边形数组 | ||
relationship |
string |
<optional> |
INTERSECTS | 几何关系,默认为‘INTERSECTS’-相交关系;可取值为INTERSECTS, DISJOINT, CONTAINS, WITHIN, TOUCHES,CROSSES, OVERLAPS and RELATE |
- Overrides:
- Source:
Example
示例五:过滤一个空间
this.filterGeometry([
[105.816212, 32.433169],
[105.816985, 32.428826],
[105.820346, 32.424186],
[105.829448, 32.43186],
[105.826919, 32.43769],
[105.817788, 32.437362],
[105.816212, 32.433169],
])
示例六:只过滤空间,并指定空间关系WITHIN-包含关系
this.filterGeometry([
[105.816212, 32.433169],
[105.816985, 32.428826],
[105.820346, 32.424186],
[105.829448, 32.43186],
[105.826919, 32.43769],
[105.817788, 32.437362],
[105.816212, 32.433169],
],'WITHIN')
示例七:过滤多个空间
this.filterGeometry([[
[105.816212, 32.433169],
[105.816985, 32.428826],
[105.820346, 32.424186],
[105.829448, 32.43186],
[105.826919, 32.43769],
[105.817788, 32.437362],
[105.816212, 32.433169],
],[
[105.856212, 32.433169],
[105.856985, 32.428826],
[105.860346, 32.424186],
[105.869448, 32.43186],
[105.866919, 32.43769],
[105.857788, 32.437362],
[105.856212, 32.433169],
]])
fitView(feature)
设置地图缩放合适的视野级别
Parameters:
| Name | Type | Description |
|---|---|---|
feature |
String | Array.<String> | 要素ID或要素ID数组 |
- Source:
Example
this.fitView('pipe.131')
this.fitView(['pipe.132', 'pipe.133', 'pipe.131'])
forceLayerGroup(group)
强制指定工作空间使用哪个图层组
Parameters:
| Name | Type | Description |
|---|---|---|
group |
String | 强制指定使用某图层组 |
- Overrides:
- Source:
(async) getLayers(是否强制刷新图层信息,不使用缓存的信息)
查询图层详细信息
Parameters:
| Name | Type | Description |
|---|---|---|
是否强制刷新图层信息,不使用缓存的信息 |
boolean |
- Overrides:
- Source:
hierarchicalAnalytical(featureopt, coloropt)
数据层次解析
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
feature |
String | Object | Array |
<optional> |
要素 | |
color |
String |
<optional> |
#00ffff | 要素默认高亮颜色,十六进制格式,示意:'#00ffff' |
- Overrides:
- Source:
Example
示例一:this.setHilightFeature('pipe.1','#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例二:this.setHilightFeature({id:'pipe.1'},'#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例三:this.setHilightFeature({id:'pipe.1',color:'#00ffff'}) // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例四:this.setHilightFeature(['pipe.1','pipe.2'],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例五:this.setHilightFeature([{id:'pipe.1'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例六:this.setHilightFeature([{id:'pipe.1',color:'#00ffff'},{id:'pipe.2',color:'#00ffff'}]) // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ff00',注意此情况时一般使用 示例七,需要设置默认高亮色
示例七:this.setHilightFeature([{id:'pipe.1',color:'#00ff00'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1的高亮颜色为 '#00ff00',pipe.2的高亮颜色为默认值 #00ffff'
示例八:this.setHilightFeature() // 清除高亮要素
(async) initialize()
执行初始化操作
OGC标准的WMS地图服务的GetMap接口的参数,包括VERSION、LAYERS、STYLES、FORMAT、TRANSPARENT等,CRS、BBOX、REQUEST、WIDTH、HEIGHT等参数请勿添加,例如:
{
LAYERS: 'topp:states',
VERSION:'1.3.0',
FORMAT:'image/png'
}
- Overrides:
- Source:
Fires:
mask(color)
设置要素遮罩颜色
Parameters:
| Name | Type | Description |
|---|---|---|
color |
String | 要素遮罩颜色 |
- Overrides:
- Source:
off(event, fn) → {EventTarget}
移除自定义事件监听器。
如果没有提供参数,则移除所有的事件监听器;
如果只提供了事件,则移除该事件所有的监听器;
如果同时提供了事件与回调,则只移除这个回调的监听器
Parameters:
| Name | Type | Description |
|---|---|---|
event |
String | 事件名称 |
fn |
function | 回调函数 |
- Overrides:
- Source:
Returns:
返回当前事件对象
- Type
- EventTarget
on(event, fn) → {eventbus}
监听当前实例上的自定义事件。事件可以由 emit 触发。回调函数会接收所有传入事件触发函数的额外参数。
Parameters:
| Name | Type | Description |
|---|---|---|
event |
String | 事件名称 |
fn |
function | 回调函数 |
- Overrides:
- Source:
Returns:
返回当前事件对象
- Type
- eventbus
once(event, fn) → {eventbus}
监听一个自定义事件,但是只触发一次。一旦触发之后,监听器就会被移除。
Parameters:
| Name | Type | Description |
|---|---|---|
event |
String | 事件名称 |
fn |
function | 回调函数 |
- Overrides:
- Source:
Returns:
返回当前事件对象
- Type
- eventbus
onProgressLoaded()
触发 wms:upload 事件
- Overrides:
- Source:
Fires:
onProgressLoading()
触发 wms:upload 事件
- Overrides:
- Source:
Fires:
onQueryClick()
触发点击事件
- Source:
Fires:
onQueryRightClick()
触发右键点击事件
- Source:
Fires:
onWmsUpload()
触发 wms:upload 事件
- Overrides:
- Source:
Fires:
query(X, Y, WIDTH, HEIGHT, BBOX, CRSopt, LAYERSopt, QUERY_LAYERSopt, VERSIONopt, FEATURE_COUNTopt, INFO_FORMATopt, TRANSPARENTopt) → {Promise}
执行空间查询,并以Promise的形式返回查询结果,当前仅支持基于 X、 Y、 WIDTH、 HEIGHT、 BBOX、 CRS、 LAYERS 方式进行查询
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
X |
Number | X,示意:721 | ||
Y |
Number | Y,示意:207 | ||
WIDTH |
Number | WIDTH,示意:1564 | ||
HEIGHT |
Number | HEIGHT,示意: 784 | ||
BBOX |
String | BBOX,示意:'32.43657757416502,105.83224442481992,32.44012705802473,105.8406343746185' | ||
CRS |
String |
<optional> |
EPSG:4326 | CRS,示意:'EPSG:4326' |
LAYERS |
String |
<optional> |
查询图层,默认值为null,代表取自动取值 | |
QUERY_LAYERS |
String |
<optional> |
查询图层,默认值为null,代表取LAYERS的值 | |
VERSION |
String |
<optional> |
1.1.1 | 版本,默认 '1.1.1' |
FEATURE_COUNT |
Number |
<optional> |
1 | FEATURE_COUNT,示意:1 |
INFO_FORMAT |
String |
<optional> |
application/json | INFO_FORMAT,示意:'application/json' |
TRANSPARENT |
Boolean |
<optional> |
true | TRANSPARENT,示意:true |
- Overrides:
- Source:
Fires:
Returns:
查询结果
- Type
- Promise
queryFeature(featureopt, propertyopt, countopt, layersopt)
通过要素id和要素业务属性查询要素
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
feature |
String | Array.<String> |
<optional> |
查询要素的id或id数组 |
property |
Object |
<optional> |
查询业务属性 |
count |
Number |
<optional> |
最大返回数量,默认值 undefined,代表无限制 |
layers |
String |
<optional> |
查询图层,默认值 undefined,代表从当前对象中读取显示图层,数据值示意:d3:pe,d3:line |
- Overrides:
- Source:
refresh()
刷新底图
- Overrides:
- Source:
removeFeature(featureId:需要删除的要素的ID集合,数组) → {Promise}
通过地图要素ID删除要素
Parameters:
| Name | Type | Description |
|---|---|---|
featureId:需要删除的要素的ID集合,数组 |
String | Array |
- Overrides:
- Source:
Returns:
操作结果
- Type
- Promise
removeFeatureByCondition(condition) → {Promise}
通过筛选条件移除要素
Parameters:
| Name | Type | Description | |||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
condition |
Object | Array | 筛选条件(或集合)
Properties
|
- Overrides:
- Source:
Returns:
操作结果
- Type
- Promise
(async) removeWorkspace(optionopt)
删除工作空间
Parameters:
| Name | Type | Attributes | Description | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
option |
object |
<optional> |
配置信息,缺少时会参考当前实例的参数
Properties
|
- Overrides:
- Source:
setConflict(testconflictopt)
设置是否进行点符号的重叠检测(使用前请保证地图使用了最新的样式)
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
testconflict |
Boolean |
<optional> |
true | 是否进行点符号的重叠检测,默认为true |
- Overrides:
- Source:
setHierarchyFeature(featureopt, coloropt, layerNameopt)
设置分层要素
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
feature |
String | Object | Array |
<optional> |
分层要素 | |
color |
String |
<optional> |
#00ffff | 要素默认高亮颜色,十六进制格式,示意:'#00ffff' |
layerName |
String | Object | Array |
<optional> |
分层名,默认值为常量 EXTRALAYER |
- Overrides:
- Source:
Fires:
Example
示例一:this.setHierarchyFeature('pipe.1','#00ffff') // 设置分层要素,pipe.1的高亮颜色为 '#00ffff'
示例二:this.setHierarchyFeature({id:'pipe.1'},'#00ffff') //设置分层要素,pipe.1的高亮颜色为 '#00ffff'
示例三:this.setHierarchyFeature({id:'pipe.1',color:'#00ffff'}) // 设置分层要素,pipe.1的高亮颜色为 '#00ffff'
示例四:this.setHierarchyFeature(['pipe.1','pipe.2'],'#00ffff') // 设置分层要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例五:this.setHierarchyFeature([{id:'pipe.1'},{id:'pipe.2'}],'#00ffff') // 设置分层要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例六:this.setHierarchyFeature([{id:'pipe.1',color:'#00ffff'},{id:'pipe.2',color:'#00ffff'}]) // 设置分层要素,pipe.1、pipe.2的高亮颜色为 '#00ff00',注意此情况时一般使用 示例七,需要设置默认高亮色
示例七:this.setHierarchyFeature([{id:'pipe.1',color:'#00ff00'},{id:'pipe.2'}],'#00ffff') // 设置分层要素,pipe.1的高亮颜色为 '#00ff00',pipe.2的高亮颜色为默认值 #00ffff'
示例八:this.setHierarchyFeature() // 清除分层要素
setHilightFeature(featureopt, coloropt)
设置要素高亮
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
feature |
String | Object | Array |
<optional> |
高亮要素 | |
color |
String |
<optional> |
#00ffff | 要素默认高亮颜色,十六进制格式,示意:'#00ffff' |
- Overrides:
- Source:
Fires:
Example
示例一:this.setHilightFeature('pipe.1','#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例二:this.setHilightFeature({id:'pipe.1'},'#00ffff') // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例三:this.setHilightFeature({id:'pipe.1',color:'#00ffff'}) // 设置一个高亮要素,pipe.1的高亮颜色为 '#00ffff'
示例四:this.setHilightFeature(['pipe.1','pipe.2'],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例五:this.setHilightFeature([{id:'pipe.1'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ffff'
示例六:this.setHilightFeature([{id:'pipe.1',color:'#00ffff'},{id:'pipe.2',color:'#00ffff'}]) // 设置两个高亮要素,pipe.1、pipe.2的高亮颜色为 '#00ff00',注意此情况时一般使用 示例七,需要设置默认高亮色
示例七:this.setHilightFeature([{id:'pipe.1',color:'#00ff00'},{id:'pipe.2'}],'#00ffff') // 设置两个高亮要素,pipe.1的高亮颜色为 '#00ff00',pipe.2的高亮颜色为默认值 #00ffff'
示例八:this.setHilightFeature() // 清除高亮要素
setMap(map)
设置高德地图对象
Parameters:
| Name | Type | Description |
|---|---|---|
map |
AMap | 高德地图实例 |
- Source:
Fires:
- amapwms#wms:initialized 初始化完成事件
setNozoom(nozoom)
设置是否使用无缩放级别的显示,可在添加临时图层前使用
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
nozoom |
Boolean | true | 是否使用无缩放级别的显示,默认为true |
- Overrides:
- Source:
(async) syncDeviceStyle(icondata, category, multicoloropt) → {Promise}
同步业务系统的设备样式到geoserver,按指定属性集合分类渲染
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
icondata |
Array.<object> | 符号信息集合 | ||
category |
number | 点线类型标识,0-管线,否则为管点 | ||
icondata[].fixed |
boolean |
<optional> |
true | 设备或者管线是否已矢量缩放的形式进行呈现,默认值为true |
icondata[].type |
string | 设备类型id,不管是管道还是阀门还是其他设备,均需要填写该值 | ||
icondata[].property |
object |
<optional> |
设备业务属性对象 | |
icondata[].style |
object |
<optional> |
设备样式属性 | |
icondata[].style.content |
number |
<optional> |
符号内容,即svg的xml字符串 | |
icondata[].style.title |
number |
<optional> |
符号名称 | |
icondata[].style.zindex |
number |
<optional> |
符号层级,默认与传入参数的顺序一致,有zindex值会绘制在无zindex值的符号上面,另外默认符号始终在最低层,线图层始终在点图层下面 | |
icondata[].style.size |
number |
<optional> |
图标大小或者管线宽度,注意 fixed 为真是代表矢量缩放,此时size的单位为m,否则size的单位是px | |
icondata[].style.color |
string |
<optional> |
图标颜色或者管线颜色,16进制颜色值字符串 | |
icondata[].style.zoom |
Array.<number> |
<optional> |
图标可见层级范围,参考高德地图,级别范围3-20 | |
multicolor |
boolean |
<optional> |
false | 是否是多色图标,使用多色图标但该参数不为true时会导致符号不能高亮 |
- Overrides:
- Source:
Returns:
- Type
- Promise
Example
var icondata={
category: 0,
fixed: true,
type: '20ab312e-d505-4c37-8b85-ac75007e2a31',
property: {
status:0
},
style:{
title:'正常阀门',
content:'<svg/>',
zindex:1,
size: 8,
color: '#ffffff'
zoom:[15,19]
}
}
util.syncDeviceStyle([icondata])
twinkle(layerName, options)
使指定图层闪烁
Parameters:
| Name | Type | Description |
|---|---|---|
layerName |
String | 图层名称 |
options |
Object | animejs 动画参数 |
- Source:
- See:
updateFeature(feature)
更新要素
Parameters:
| Name | Type | Description |
|---|---|---|
feature |
object | Array | 要素(集合) [ { id:'',//要素id properties:{},//{name:'',x:'',y:''}//属性对象,可选参数,具体属性由gis数据结构决定 geometry:{},几何图形的geosjon格式对象,可选参数 } ] |
- Overrides:
- Source:
updateFeatureByCondition(layertype, valuses, filteropt) → {Promise}
按过滤条件更新要输属性
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
layertype |
string | 图层 | |
valuses |
object | 属性对象 | |
filter |
object |
<optional> |
过滤条件,缺失时表示修改该图层所有数据 |
- Overrides:
- Source:
Returns:
- Type
- Promise
Example
暂时采用如下格式,并用And连接
let filter={
where:[
{
key:'',
value:''
},{
key:'',
value:''
}
]
}
updatePoint(data) → {Promise}
更新点要素(或集合)
Parameters:
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data |
object | Array | 点要素对象(或集合)
Properties
|
- Overrides:
- Source:
Returns:
返回新建点的结果
- Type
- Promise
Example
let data = {
id:'fitting.8',
fixed:false,
lng:105,
lat:30,
type:'',
property:{
status:0,
},
style:{
color:'#ff0000',
size:20,
}
}
updatePoints(data)或updatePoints([data]);
updatePolyline(data) → {object}
更新线要素(或集合)
Parameters:
| Name | Type | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data |
object | Array | 线要素对象(或集合)
Properties
|
- Overrides:
- Source:
Returns:
返回格式化后点对象
- Type
- object
Example
let data = {
id:'pipe.8',
fixed:false,
path:[[103,30],[103,31]]
type:'',
property:{
status:0,
},
style:{
color:'#ff0000',
size:20,
}
}
updatePolylines(data)或updatePolylines([data]);
uploadOverlays(高德元素对象或者高德元素对象数组) → {Promise}
上传高德地图元素覆盖物,当前仅支持 Map.Marker 和 AMap.Polyline
高德元素对象需设置 extData 数据
Parameters:
| Name | Type | Description |
|---|---|---|
高德元素对象或者高德元素对象数组 |
Object | Array |
- Source:
Returns:
- Type
- Promise
Example
var overlay = new AMap.Marker()
overlay.setExtData({
// *必填项,设备或者管线是否已矢量缩放的形式进行呈现,默认值为true
fixed: true,
// *必填项,设备类型id,不管是管道还是阀门还是其他设备,均需要填写该值
type: '20ab312e-d505-4c37-8b85-ac75007e2a31',
// 选填项,设备业务属性,支持自定义对象
property: {
},
// 选填项,设备样式属性,对于管线而言size是线宽度,对于点而言,size是图标大小
style:{
// 选填项,符号层级
zindex:1,
// 选填项,图标大小或者管线宽度,注意 fixed 为真是代表矢量缩放,此时size的单位为m,否则size的单位是px
size: 8,
// 选填项,图标颜色或者管线颜色,
color: '#ffffff'
zoom:[15,19]?暂不能实现
}
})
util.uploadOverlays(overlay) 或者 util.uploadOverlays([overlay])
useAuth(user, pwd)
使用权限认证,传入用户名,密码,以使用geoserver的数据编辑接口
(暂时采用Basic认证方式,使用时配合https更安全)
Parameters:
| Name | Type | Description |
|---|---|---|
user |
string | 用户名 |
pwd |
* | 密码 |
- Overrides:
- Source:
Events
queryclick
地图点击查询事件
Type:
- Object
Properties:
| Name | Type | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
lnglat |
Object | 经纬度
Properties
|
|||||||||
others |
Object | 其他参数,注意这是others不是代表属性名,而是代表有其他的变量 |
- Source:
queryclick
地图点击查询事件
Type:
- Object
Properties:
| Name | Type | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
lnglat |
Object | 经纬度
Properties
|
|||||||||
others |
Object | 其他参数,注意这是others不是代表属性名,而是代表有其他的变量 |
- Source:
queryrightclick
地图右键点击查询事件
Type:
- Object
Properties:
| Name | Type | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
lnglat |
Object | 经纬度
Properties
|
|||||||||
others |
Object | 其他参数,注意这是others不是代表属性名,而是代表有其他的变量 |
- Source:
queryrightclick
地图右键点击查询事件
Type:
- Object
Properties:
| Name | Type | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
lnglat |
Object | 经纬度
Properties
|
|||||||||
others |
Object | 其他参数,注意这是others不是代表属性名,而是代表有其他的变量 |
- Source:
progress:loaded
加载完成事件
- Overrides:
- Source:
progress:loading
正在加载事件
- Overrides:
- Source:
wms:upload
创建WMS格式图层,事件包含三个参数,第一个参数为图层名称,第二个参数为OGC参数对象或者数组,第三个参数extras为额外的参数
Parameters:
| Name | Type | Attributes | Description | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
layerName |
String | 图层名称 | ||||||||||||||||||||||||||||||||||
ogc |
Object | OGC对象
Properties
|
||||||||||||||||||||||||||||||||||
extras |
Object |
<optional> |
额外的参数,可选参考值 ENV, CQL_FILTER |
- Overrides:
- Source: