|
@@ -2,8 +2,12 @@
|
|
|
<div class="layer">
|
|
|
<div class="title">重点图层</div>
|
|
|
<div>
|
|
|
- <el-row v-for="(item,index) in arr" :key="index">
|
|
|
- <el-checkbox v-model="item.added" :label="item.label" @change="addedChange(item)" />
|
|
|
+ <el-row v-for="(item, index) in arr" :key="index">
|
|
|
+ <el-checkbox
|
|
|
+ v-model="item.added"
|
|
|
+ :label="item.label"
|
|
|
+ @change="addedChange(item)"
|
|
|
+ />
|
|
|
<el-switch
|
|
|
v-model="item.show"
|
|
|
class="ml-2"
|
|
@@ -13,7 +17,13 @@
|
|
|
/>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
- <el-dialog v-if="from!=null" v-model="dialogFormVisible" title="详细信息" width="500">
|
|
|
+ <el-dialog
|
|
|
+ v-if="from != null"
|
|
|
+ append-to-body
|
|
|
+ v-model="dialogFormVisible"
|
|
|
+ title="详细信息"
|
|
|
+ width="500"
|
|
|
+ >
|
|
|
<div class="info_container">
|
|
|
<el-form :model="form">
|
|
|
<el-form-item
|
|
@@ -21,19 +31,26 @@
|
|
|
:key="key"
|
|
|
:label="key"
|
|
|
:label-width="'120px'"
|
|
|
- >{{ value }}</el-form-item>
|
|
|
+ >{{ value }}</el-form-item
|
|
|
+ >
|
|
|
</el-form>
|
|
|
</div>
|
|
|
|
|
|
<template #footer>
|
|
|
<div class="dialog-footer">
|
|
|
- <el-button @click="dialogFormVisible = false;from=null">关闭</el-button>
|
|
|
+ <el-button
|
|
|
+ @click="
|
|
|
+ dialogFormVisible = false;
|
|
|
+ from = null;
|
|
|
+ "
|
|
|
+ >关闭</el-button
|
|
|
+ >
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
-
|
|
|
+
|
|
|
<script>
|
|
|
export default {
|
|
|
data() {
|
|
@@ -43,48 +60,48 @@ export default {
|
|
|
url: "./static/data/西虹桥公立学校.geojson",
|
|
|
style: {
|
|
|
point: {
|
|
|
- imgUrl: "/static/image/layer/point.png"
|
|
|
- }
|
|
|
- }
|
|
|
+ imgUrl: "/static/image/layer/point.png",
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
label: "私立学校",
|
|
|
url: "./static/data/西虹桥私立学校.geojson",
|
|
|
style: {
|
|
|
point: {
|
|
|
- imgUrl: "/static/image/layer/point.png"
|
|
|
- }
|
|
|
- }
|
|
|
+ imgUrl: "/static/image/layer/point.png",
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
label: "公立医院",
|
|
|
url: "./static/data/西虹桥公立医疗.geojson",
|
|
|
style: {
|
|
|
point: {
|
|
|
- imgUrl: "/static/image/layer/point.png"
|
|
|
- }
|
|
|
- }
|
|
|
+ imgUrl: "/static/image/layer/point.png",
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
label: "私立医院",
|
|
|
url: "./static/data/西虹区民营医疗.geojson",
|
|
|
style: {
|
|
|
point: {
|
|
|
- imgUrl: "/static/image/layer/point.png"
|
|
|
- }
|
|
|
- }
|
|
|
+ imgUrl: "/static/image/layer/point.png",
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
label: "养老机构",
|
|
|
url: "./static/data/西虹桥养老机构.geojson",
|
|
|
style: {
|
|
|
point: {
|
|
|
- imgUrl: "/static/image/layer/point.png"
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ imgUrl: "/static/image/layer/point.png",
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
];
|
|
|
- arr = arr.map(function(item, index) {
|
|
|
+ arr = arr.map(function (item, index) {
|
|
|
item.id = "layer" + index;
|
|
|
item.added = false;
|
|
|
item.show = true;
|
|
@@ -93,12 +110,12 @@ export default {
|
|
|
return {
|
|
|
arr: arr,
|
|
|
from: null,
|
|
|
- dialogFormVisible: false
|
|
|
+ dialogFormVisible: false,
|
|
|
};
|
|
|
},
|
|
|
mounted() {
|
|
|
window.layerQJ = {
|
|
|
- geojsonDataSource: {}
|
|
|
+ geojsonDataSource: {},
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
@@ -133,7 +150,7 @@ export default {
|
|
|
if (layerQJ.handler) return;
|
|
|
// 绑定点击事件
|
|
|
layerQJ.handler = new SkyScenery.ScreenSpaceEventHandler(viewer.canvas);
|
|
|
- layerQJ.handler.setInputAction(function(movement) {
|
|
|
+ layerQJ.handler.setInputAction(function (movement) {
|
|
|
var pick = viewer.scene.pick(movement.position); // 拾取鼠标所在的entity
|
|
|
if (SkyScenery.defined(pick)) {
|
|
|
let entity = pick.id;
|
|
@@ -178,7 +195,7 @@ export default {
|
|
|
// alpha: 0.7
|
|
|
// }
|
|
|
// };
|
|
|
- SkyScenery.GeoJsonDataSource.load(url).then(function(dataSource) {
|
|
|
+ SkyScenery.GeoJsonDataSource.load(url).then(function (dataSource) {
|
|
|
viewer.dataSources.add(dataSource);
|
|
|
layerQJ.geojsonDataSource[id] = dataSource;
|
|
|
var entities = dataSource.entities.values;
|
|
@@ -191,7 +208,7 @@ export default {
|
|
|
width: 48,
|
|
|
height: 48,
|
|
|
pixelOffset: new SkyScenery.Cartesian2(0, -25),
|
|
|
- heightReference: SkyScenery.HeightReference.CLAMP_TO_GROUND
|
|
|
+ heightReference: SkyScenery.HeightReference.CLAMP_TO_GROUND,
|
|
|
});
|
|
|
}
|
|
|
if (entity.polyline) {
|
|
@@ -215,28 +232,28 @@ export default {
|
|
|
entity.polygon.height = 5;
|
|
|
entity.polygon.material = new SkyScenery.ImageMaterialProperty({
|
|
|
image: "/static/image/b2.png", // 图片路径
|
|
|
- transparent: true // 是否透明
|
|
|
+ transparent: true, // 是否透明
|
|
|
});
|
|
|
}
|
|
|
entity.type = "layers";
|
|
|
}
|
|
|
});
|
|
|
- }
|
|
|
+ },
|
|
|
},
|
|
|
computed: {
|
|
|
mapStatus() {
|
|
|
return this.$store.state.initMap;
|
|
|
- }
|
|
|
+ },
|
|
|
},
|
|
|
watch: {
|
|
|
mapStatus(newVal, oldVal) {
|
|
|
if (newVal) this.openClick();
|
|
|
- }
|
|
|
- }
|
|
|
+ },
|
|
|
+ },
|
|
|
};
|
|
|
</script>
|
|
|
-
|
|
|
- <style lang="less" scoped>
|
|
|
+
|
|
|
+<style lang="less" scoped>
|
|
|
.layer {
|
|
|
position: absolute;
|
|
|
left: 520px;
|
|
@@ -257,4 +274,4 @@ export default {
|
|
|
overflow-y: auto;
|
|
|
}
|
|
|
}
|
|
|
-</style>
|
|
|
+</style>
|