# 矢量数据图层
vc-vector-layer
组件用于加载矢量数据地图,是对矢量树图层的一个集合展示。
# 示例
# 添加矢量数据图层到场景
# 预览
收起
<template>
<div class="viewer">
<vc-viewer @ready="ready" :shouldAnimate="true">
<vc-vector-map :mapConfig="layerConfig">
</vc-vector-map>
</vc-viewer>
</div>
</template>
<script>
export default {
data () {
return {
layerConfig: undefined
}
},
methods: {
ready (cesiumInstance) {
this.cesiumInstance = cesiumInstance
const {Cesium, viewer} = this.cesiumInstance
viewer.scene.debugShowFramesPerSecond =true
let _this = this
this.layerConfig={
sources:{
"sourceid":{
url:"/statics/SampleData/lineData/grid.json"
}
},
layers:[
{
"source":"sourceid",
"filter":["!=","street","芳草街道"],
"style":{
"type":"fill",
"fillColor":{
"base":"white",//默认设置,不可缺省
"filters":[//只做属性过滤,每个filter支持的过滤方式同stops中filter支持的过滤形式
{
"filter":["===","street","桂溪街道"],
"value":"#10069F"
},
{
"filter":["===","street","中和街道"],
"value":"#FF5C39"
}
]
},//填充样式 颜色值,rgb,rgba,#fffff,hls的均可
"stroke":true,// 是否显示边框线
"strokeWidth":1,//边框粗细
"strokeColor": "rgb(0,150,243)",//边框颜色
}
},
{
"source":"sourceid",
"filter":["!=","street","中和街道"],
"style":{
"type":"text",
"text-Feild":"${name}" ,
"labelColor":{
"base":"black",//默认设置,不可缺省
"filters":[//只做属性过滤,每个filter支持的过滤方式同stops中filter支持的过滤形式
{
"filter":["===","street","石羊街道"],
"value":"#10069F"
},
{
"filter":["===","street","锦华街道"],
"value":"#FF5C39"
}
]
},//填充样式 颜色值,rgb,rgba,#fffff,hls的均可
"labelPixelOffset":{//文字的偏移量,单位是像素,x正方向向右,y正方向向上
"x": 5,
"y": -25
},
"labelStyle":0,//0,1,2分别是填充,边框和及填充也带有边框
"strokeWidth":1,//边框粗细
"strokeColor": "rgb(255,255,2)",//边框颜色
"labelHorizontalOrigin": 0,//0,1,-1分别为中间、左、右水平对齐方式
"labelVerticalOrigin": 0,//0,1,2,-1分别为中、下,baseline、上的垂直对齐方
}
}
]
}
},
}
}
</script>
# 属性
属性名 | 类型 | 默认值 | 描述 |
---|---|---|---|
mapConfig | Object | undefined | optional 指定图层的样式和数据源地址。 |
mapName | String | "" | optional 指定图层名称。 |
mode | Number | 0 | optional 指定图层加载方式,0 是 dataSource,1 是 primitive 形式的。 |
# 事件
事件名 | 参数 | 描述 |
---|---|---|
ready | {Cesium, viewer} | 该组件渲染完毕时触发,返回 Cesium 类, viewer 实例。 |