From f82eb01fe65e513fb43342db0e25cafa0e0d2db8 Mon Sep 17 00:00:00 2001 From: wangjuncheng <1> Date: 星期五, 18 四月 2025 14:07:12 +0800 Subject: [PATCH] Merge branch 'master' of http://103.135.160.14:9034/r/NslWeb --- src/components/tools/LayerTree.vue | 2070 ++++++++++++++++++++++++++-------------------------- src/components/tools/Aspect.vue | 22 src/utils/tools.js | 108 +- src/components/tools/SlopeAnalysis.vue | 10 src/components/tools/Tools.vue | 102 +- 5 files changed, 1,170 insertions(+), 1,142 deletions(-) diff --git a/src/components/tools/Aspect.vue b/src/components/tools/Aspect.vue index bd9a949..d34eb04 100644 --- a/src/components/tools/Aspect.vue +++ b/src/components/tools/Aspect.vue @@ -1,14 +1,20 @@ // 鍧″悜鍒嗘瀽 <template> <div class="aspect"> - <el-button @click="handleDraw">缁樺埗鍖哄煙</el-button> - <el-button @click="handleClear">鍏抽棴鍧″害</el-button> + <div> + <el-button @click="handleDraw">缁樺埗鍖哄煙</el-button> + <el-button @click="handleClear">鍏抽棴鍧″害</el-button> + </div> + <div style="margin-top: 10px"> + <el-button @click="handleaspect">鍧″害鍒嗘瀽</el-button> + <el-button @click="handleSlope">鍧″悜鍒嗘瀽</el-button> + </div> </div> </template> <script setup> import { reactive, defineEmits } from "vue"; // 瀹氫箟 emit 鏂规硶 -const emit = defineEmits(["draw", "clear"]); +const emit = defineEmits(["draw", "clear", "handleaspect", "handleSlope"]); const handleDraw = () => { console.log("缁樺埗鍖哄煙"); emit("draw"); @@ -17,11 +23,19 @@ console.log("鍏抽棴鍧″害"); emit("clear"); }; +const handleaspect = () => { + console.log("鍧″害鍒嗘瀽"); + emit("handleaspect"); +}; +const handleSlope = () => { + console.log("鍧″悜鍒嗘瀽"); + emit("handleSlope"); +}; </script> <style lang="less" scoped> .aspect { width: 215px; - height: 50px; + // height: 50px; background: url("@/assets/img/tools/plotting_new.png") no-repeat; filter: opacity(83%); background-size: 100% 100%; diff --git a/src/components/tools/LayerTree.vue b/src/components/tools/LayerTree.vue index fb3e20e..6ae14c7 100644 --- a/src/components/tools/LayerTree.vue +++ b/src/components/tools/LayerTree.vue @@ -1,1074 +1,1100 @@ <template> - <div class="layer-tree"> - <el-tree - ref="treeRef" - style="max-width: 600px" - show-checkbox - node-key="label" - :default-checked-keys="defaultSelectedKeys" - @check-change="handleCheckChange" - :data="treeData" - /> - </div> + <div class="layer-tree"> + <el-tree + ref="treeRef" + style="max-width: 600px" + show-checkbox + node-key="label" + :default-checked-keys="defaultSelectedKeys" + @check-change="handleCheckChange" + :data="treeData" + /> + </div> </template> <script setup> -import { ref, onMounted, onBeforeUnmount, watch, onUnmounted } from "vue" -import { createPoint, removeEntities, addTileset } from "@/utils/map" -import { deviceDictList, getDictName } from "@/constant/dict.js" -import { useRoute } from "vue-router" -import { loadAreaPolygon, clearAreaPolygon } from '@/utils/area' -import { checkedKeys } from '@/store/index' -import { getDuanMainData } from '@/api/index.js' -const route = useRoute() +import { ref, onMounted, onBeforeUnmount, watch, onUnmounted } from "vue"; +import { createPoint, removeEntities, addTileset } from "@/utils/map"; +import { deviceDictList, getDictName } from "@/constant/dict.js"; +import { useRoute } from "vue-router"; +import { loadAreaPolygon, clearAreaPolygon } from "@/utils/area"; +import { checkedKeys } from "@/store/index"; +import { getDuanMainData } from "@/api/index.js"; +const route = useRoute(); const treeData = ref([ - { - label: "涓夌淮鏈嶅姟", - children: [{ label: "妯″瀷鏁版嵁" }, { label: "鍦板舰鏁版嵁" }, { label: "褰卞儚鏁版嵁" }], - }, - { - label: "鍥惧眰鏁版嵁", - children: [ - { - label: "鍖椾含甯傞殣鎮g偣", - }, - { - label: "瀛欒儭娌熼殣鎮g偣", - }, - // { - // label: "娉ョ煶娴侀殣鎮g偣闈㈡暟鎹�", - // }, - { - label: "缁煎悎鐩戞祴璁惧淇℃伅", - }, - { - label: "瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", - }, - { - label: "閬块櫓鐐�", - }, - ], - }, -]) -const treeRef = ref(null) -const treeMap = new Map() -const defaultSelectedKeys = ref(["妯″瀷鏁版嵁", "褰卞儚鏁版嵁", "鍦板舰鏁版嵁"]) + { + label: "涓夌淮鏈嶅姟", + children: [ + { label: "妯″瀷鏁版嵁" }, + { label: "鍦板舰鏁版嵁" }, + { label: "褰卞儚鏁版嵁" }, + ], + }, + { + label: "鍥惧眰鏁版嵁", + children: [ + { + label: "鍖椾含甯傞殣鎮g偣", + }, + { + label: "瀛欒儭娌熼殣鎮g偣", + }, + // { + // label: "娉ョ煶娴侀殣鎮g偣闈㈡暟鎹�", + // }, + { + label: "缁煎悎鐩戞祴璁惧淇℃伅", + }, + { + label: "瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", + }, + { + label: "閬块櫓鐐�", + }, + ], + }, +]); +const treeRef = ref(null); +const treeMap = new Map(); +const defaultSelectedKeys = ref(["妯″瀷鏁版嵁", "褰卞儚鏁版嵁", "鍦板舰鏁版嵁"]); function handleCheckChange(data, checked, indeterminate) { - const label = data.label - const list = treeMap.get(label) - if (list) { - toggleLayerVisible(label, checked) - return - } - switch (label) { - case "妯″瀷鏁版嵁": - list.show = checked - break - case "鍖椾含甯傞殣鎮g偣": - console.log("鍖椾含甯傞殣鎮g偣", checked, indeterminate) - break - case "瀛欒儭娌熼殣鎮g偣": - console.log("瀛欒儭娌熼殣鎮g偣", checked, indeterminate) - break - case "娉ョ煶娴侀殣鎮g偣闈㈡暟鎹�": - console.log("娉ョ煶娴侀殣鎮g偣闈㈡暟鎹�", checked, indeterminate) - break - case "缁煎悎鐩戞祴璁惧淇℃伅": - console.log("缁煎悎鐩戞祴璁惧淇℃伅", checked, indeterminate) - break - case "瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�": - console.log("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", checked, indeterminate) - break - case "閬块櫓鐐�": - addTetrahedron() - break - - } + const label = data.label; + const list = treeMap.get(label); + if (list) { + toggleLayerVisible(label, checked); + return; + } + switch (label) { + case "妯″瀷鏁版嵁": + list.show = checked; + break; + case "鍖椾含甯傞殣鎮g偣": + console.log("鍖椾含甯傞殣鎮g偣", checked, indeterminate); + break; + case "瀛欒儭娌熼殣鎮g偣": + console.log("瀛欒儭娌熼殣鎮g偣", checked, indeterminate); + break; + case "娉ョ煶娴侀殣鎮g偣闈㈡暟鎹�": + console.log("娉ョ煶娴侀殣鎮g偣闈㈡暟鎹�", checked, indeterminate); + break; + case "缁煎悎鐩戞祴璁惧淇℃伅": + console.log("缁煎悎鐩戞祴璁惧淇℃伅", checked, indeterminate); + break; + case "瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�": + console.log("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", checked, indeterminate); + break; + case "閬块櫓鐐�": + addTetrahedron(); + break; + } } function initMap() { - // let modelPromise = addTileset( - // `http://106.120.22.26:9103/gisserver/c3dserver/sunhugou3d/tileset.json` - // ) - // modelPromise.then(model => { - // treeMap.set("妯″瀷鏁版嵁", model) - // }) - // let ImageryLayer = earthCtrl.factory.createImageryLayer({ - // sourceType: "tms", - // url: "http://106.120.22.26:9103/gisserver/tmsserver/sunhugoudom", - // }) - let TerrainLayer = earthCtrl.factory.createTerrainLayer({ - sourceType: "ctb", - url: "http://106.120.22.26:9103/gisserver/ctsserver/sungugoudem", - }) - // treeMap.set("褰卞儚鏁版嵁", ImageryLayer) - treeMap.set("鍦板舰鏁版嵁", TerrainLayer) + // let modelPromise = addTileset( + // `http://106.120.22.26:9103/gisserver/c3dserver/sunhugou3d/tileset.json` + // ) + // modelPromise.then(model => { + // treeMap.set("妯″瀷鏁版嵁", model) + // }) + // let ImageryLayer = earthCtrl.factory.createImageryLayer({ + // sourceType: "tms", + // url: "http://106.120.22.26:9103/gisserver/tmsserver/sunhugoudom", + // }) + // let TerrainLayer = earthCtrl.factory.createTerrainLayer({ + // sourceType: "ctb", + // url: "http://106.120.22.26:9103/gisserver/ctsserver/sungugoudem", + // }); + let TerrainLayer = earthCtrl.factory.createTerrainLayer({ + sourceType: "ctb", + url: "https://tiles1.geovisearth.com/base/v1/terrain?token=486dac3bec56d7d7c2a581c150be2bd937462f1e8f3bc9c78b5658b396122405", + requestVertexNormals: true, + }); + // treeMap.set("褰卞儚鏁版嵁", ImageryLayer) + treeMap.set("鍦板舰鏁版嵁", TerrainLayer); } const devicetList = ref([ - { - deviceCode: "303A9016", - deviceId: "1821067878870257666", - deviceName: "瀛欒儭娌�(澧掓儏)", - dictDeviceType: "1437295822", - latitude: 40.56476666, - longitude: 116.5955361, - }, - { - deviceCode: "01303A9016", - deviceId: "1821067850122498049", - deviceName: "瀛欒儭娌�(澧掓儏)", - dictDeviceType: "14372958380", - latitude: 40.56476666, - longitude: 116.5955361, - }, - { - deviceCode: "1101161102180100010063", - deviceId: "1554360510040182786", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熷肮瀹惰タ娌熼洦閲忚0063", - dictDeviceType: "1437295810", - latitude: 40.556589, - longitude: 116.579459, - }, - { - deviceCode: "1101161102180100194030", - deviceId: "1554361328692826114", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熺紪鐮佸櫒4030", - dictDeviceType: "1437295815", - latitude: 40.554272, - longitude: 116.592583, - }, - { - deviceCode: "1101161102180100031041", - deviceId: "1554360448702681089", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸澹颁华1041", - dictDeviceType: "1437295832", - latitude: 40.553236, - longitude: 116.592304, - }, - { - deviceCode: "1101161102180100022007", - deviceId: "1554360273959587842", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熷惈姘寸巼2007", - dictDeviceType: "1437295822", - latitude: 40.545821, - longitude: 116.586354, - }, - { - deviceCode: "1101161102180100225406", - deviceId: "1554360478494822402", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸祦閫熶华5406", - dictDeviceType: "1437295821", - latitude: 40.554368, - longitude: 116.592989, - }, - { - deviceCode: "1101161102180100055006", - deviceId: "1554360276627165185", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸偿浣嶈5006", - dictDeviceType: "1437295811", - latitude: 40.554398, - longitude: 116.592929, - }, - { - deviceCode: "1101161102180100010064", - deviceId: "1554360452670492674", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熼洦閲忚0064", - dictDeviceType: "1437295810", - latitude: 40.545741, - longitude: 116.586304, - }, - { - deviceCode: "1101161102180100183030", - deviceId: "1554360533087883265", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸憚鍍忓ご3030", - dictDeviceType: "1437295825", - latitude: 40.554272, - longitude: 116.592583, - }, - { - deviceCode: "1101161102180100194031", - deviceId: "1554361328877375489", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熺紪鐮佸櫒4031", - dictDeviceType: "1437295815", - latitude: 40.554035, - longitude: 116.59786, - }, - { - deviceCode: "1101161102180100055007", - deviceId: "1554360509775941634", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸偿浣嶈5007", - dictDeviceType: "1437295811", - latitude: 40.554729, - longitude: 116.598165, - }, - { - deviceCode: "1101161102180100031042", - deviceId: "1554360448916590593", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸澹颁华1042", - dictDeviceType: "1437295832", - latitude: 40.549398, - longitude: 116.600387, - }, - { - deviceCode: "1101161102180100225407", - deviceId: "1554360478658400257", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸祦閫熶华5407", - dictDeviceType: "1437295821", - latitude: 40.55481, - longitude: 116.598025, - }, - { - deviceCode: "1101161102180100022008", - deviceId: "1554360274165108737", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熷惈姘寸巼2008", - dictDeviceType: "1437295822", - latitude: 40.544645, - longitude: 116.596511, - }, - { - deviceCode: "1101161102180100183031", - deviceId: "1554360533255655426", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸憚鍍忓ご3031", - dictDeviceType: "1437295825", - latitude: 40.554035, - longitude: 116.59786, - }, - { - deviceCode: "1101161102180100010065", - deviceId: "1554360452888596482", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熼洦閲忚0065", - dictDeviceType: "1437295810", - latitude: 40.543104, - longitude: 116.59585, - }, - { - deviceCode: "1101161102180100031040", - deviceId: "1554360448383913986", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙浜庡瑗挎矡娆″0浠�1040", - dictDeviceType: "1437295832", - latitude: 40.563822, - longitude: 116.592648, - }, - { - deviceCode: "1101161102180100010062", - deviceId: "1554360452519497730", - deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙浜庡瑗挎矡闆ㄩ噺璁�0062", - dictDeviceType: "1437295810", - latitude: 40.558778, - longitude: 116.586892, - }, - { - deviceCode: "1101160042160100010005", - deviceId: "1554360582698110977", - deviceName: "鎬�鏌斿尯闆佹爾闀囧寳婀炬潙鍖楁灄澶х煶闂ㄦ矡闆ㄩ噺璁�0005", - dictDeviceType: "1437295810", - latitude: 40.533623, - longitude: 116.602406, - }, -]) + { + deviceCode: "303A9016", + deviceId: "1821067878870257666", + deviceName: "瀛欒儭娌�(澧掓儏)", + dictDeviceType: "1437295822", + latitude: 40.56476666, + longitude: 116.5955361, + }, + { + deviceCode: "01303A9016", + deviceId: "1821067850122498049", + deviceName: "瀛欒儭娌�(澧掓儏)", + dictDeviceType: "14372958380", + latitude: 40.56476666, + longitude: 116.5955361, + }, + { + deviceCode: "1101161102180100010063", + deviceId: "1554360510040182786", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熷肮瀹惰タ娌熼洦閲忚0063", + dictDeviceType: "1437295810", + latitude: 40.556589, + longitude: 116.579459, + }, + { + deviceCode: "1101161102180100194030", + deviceId: "1554361328692826114", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熺紪鐮佸櫒4030", + dictDeviceType: "1437295815", + latitude: 40.554272, + longitude: 116.592583, + }, + { + deviceCode: "1101161102180100031041", + deviceId: "1554360448702681089", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸澹颁华1041", + dictDeviceType: "1437295832", + latitude: 40.553236, + longitude: 116.592304, + }, + { + deviceCode: "1101161102180100022007", + deviceId: "1554360273959587842", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熷惈姘寸巼2007", + dictDeviceType: "1437295822", + latitude: 40.545821, + longitude: 116.586354, + }, + { + deviceCode: "1101161102180100225406", + deviceId: "1554360478494822402", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸祦閫熶华5406", + dictDeviceType: "1437295821", + latitude: 40.554368, + longitude: 116.592989, + }, + { + deviceCode: "1101161102180100055006", + deviceId: "1554360276627165185", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸偿浣嶈5006", + dictDeviceType: "1437295811", + latitude: 40.554398, + longitude: 116.592929, + }, + { + deviceCode: "1101161102180100010064", + deviceId: "1554360452670492674", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熼洦閲忚0064", + dictDeviceType: "1437295810", + latitude: 40.545741, + longitude: 116.586304, + }, + { + deviceCode: "1101161102180100183030", + deviceId: "1554360533087883265", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌熸憚鍍忓ご3030", + dictDeviceType: "1437295825", + latitude: 40.554272, + longitude: 116.592583, + }, + { + deviceCode: "1101161102180100194031", + deviceId: "1554361328877375489", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熺紪鐮佸櫒4031", + dictDeviceType: "1437295815", + latitude: 40.554035, + longitude: 116.59786, + }, + { + deviceCode: "1101161102180100055007", + deviceId: "1554360509775941634", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸偿浣嶈5007", + dictDeviceType: "1437295811", + latitude: 40.554729, + longitude: 116.598165, + }, + { + deviceCode: "1101161102180100031042", + deviceId: "1554360448916590593", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸澹颁华1042", + dictDeviceType: "1437295832", + latitude: 40.549398, + longitude: 116.600387, + }, + { + deviceCode: "1101161102180100225407", + deviceId: "1554360478658400257", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸祦閫熶华5407", + dictDeviceType: "1437295821", + latitude: 40.55481, + longitude: 116.598025, + }, + { + deviceCode: "1101161102180100022008", + deviceId: "1554360274165108737", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熷惈姘寸巼2008", + dictDeviceType: "1437295822", + latitude: 40.544645, + longitude: 116.596511, + }, + { + deviceCode: "1101161102180100183031", + deviceId: "1554360533255655426", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熸憚鍍忓ご3031", + dictDeviceType: "1437295825", + latitude: 40.554035, + longitude: 116.59786, + }, + { + deviceCode: "1101161102180100010065", + deviceId: "1554360452888596482", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸ご鏍戝簳涓嬩笢娌熼洦閲忚0065", + dictDeviceType: "1437295810", + latitude: 40.543104, + longitude: 116.59585, + }, + { + deviceCode: "1101161102180100031040", + deviceId: "1554360448383913986", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙浜庡瑗挎矡娆″0浠�1040", + dictDeviceType: "1437295832", + latitude: 40.563822, + longitude: 116.592648, + }, + { + deviceCode: "1101161102180100010062", + deviceId: "1554360452519497730", + deviceName: "鎬�鏌斿尯鐞夌拑搴欓晣瀛欒儭娌熸潙浜庡瑗挎矡闆ㄩ噺璁�0062", + dictDeviceType: "1437295810", + latitude: 40.558778, + longitude: 116.586892, + }, + { + deviceCode: "1101160042160100010005", + deviceId: "1554360582698110977", + deviceName: "鎬�鏌斿尯闆佹爾闀囧寳婀炬潙鍖楁灄澶х煶闂ㄦ矡闆ㄩ噺璁�0005", + dictDeviceType: "1437295810", + latitude: 40.533623, + longitude: 116.602406, + }, +]); function initDevicePoint() { - let list = [] + let list = []; - devicetList.value.forEach(item => { - item.type = getDictName(deviceDictList, item.dictDeviceType) - item.name = item.type - item.id = item.deviceId - item.className = "device" - item.showLabel = true - const entity = createPoint(item) - entity.show = false + devicetList.value.forEach((item) => { + item.type = getDictName(deviceDictList, item.dictDeviceType); + item.name = item.type; + item.id = item.deviceId; + item.className = "device"; + item.showLabel = true; + const entity = createPoint(item); + entity.show = false; - list.push(entity) - }) - treeMap.set("缁煎悎鐩戞祴璁惧淇℃伅", list) + list.push(entity); + }); + treeMap.set("缁煎悎鐩戞祴璁惧淇℃伅", list); } const districtList = ref([ - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116020058", - latitude: 40.56652778, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙灏瑰瑗挎矡灏瑰缓鐕曞灞嬪悗", - longitude: 116.5803889, - monitor: "", - monitorAdvice: "", - name: "灏瑰瑗挎矡灏瑰缓鐕曞灞嬪悗宕╁闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "灏忓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 2, - threatenMoney: 0, - threatenPopulation: "3", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "宕╁", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116020078", - latitude: 40.56497222, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙娌宠タ浜庡嚖鑻卞灞嬪悗", - longitude: 116.5955278, - monitor: "", - monitorAdvice: "", - name: "娌宠タ浜庡嚖鑻卞灞嬪悗宕╁闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "灏忓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 4, - threatenMoney: 0, - threatenPopulation: "6", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "宕╁", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030041", - latitude: 40.55369444, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熷叕璺�", - longitude: 116.6002778, - monitor: "", - monitorAdvice: "", - name: "鍗楁灏忎笢娌熸偿鐭虫祦闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡,绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "灏忓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 0, - threatenMoney: 0, - threatenPopulation: "", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030015", - latitude: 40.55277778, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙鍗楁鏉戝ぇ绐戞矡", - longitude: 116.5994722, - monitor: "", - monitorAdvice: "", - name: "澶х獞娌熸偿鐭虫祦闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "宸茬洃娴嬨�佸凡娌荤悊", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "涓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 5, - threatenMoney: 0, - threatenPopulation: "11", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030076", - latitude: 40.55972222, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙涓滃潕澶т笢娌�", - longitude: 116.5916667, - monitor: "", - monitorAdvice: "", - name: "澶т笢娌熸偿鐭虫祦闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "宸叉不鐞�", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉�", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "灏忓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 1, - threatenMoney: 0, - threatenPopulation: "2", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030074", - latitude: 40.56580556, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙灏瑰瑗挎矡", - longitude: 116.59, - monitor: "", - monitorAdvice: "", - name: "灏瑰瑗挎矡娉ョ煶娴侀殣鎮g偣", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "宸茬洃娴嬶紱鐏惧浣撳彉鍖栵細4澶勫潯绉墿鍨锛屽爢绉嚦鍧¤剼锛屾柟閲忕害20m鲁銆�", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉�", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "涓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 7, - threatenMoney: 0, - threatenPopulation: "12", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030053", - latitude: 40.57361111, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙鍖楀ぇ鍦拌タ娲煎瓙娌�", - longitude: 116.5897222, - monitor: "", - monitorAdvice: "", - name: "鍖楀ぇ鍦拌タ娲煎瓙娌熸偿鐭虫祦闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "娌熷彛姝e鎴垮眿锛岄檷闆ㄦ椂鍑烘按閲忓ぇ锛屽缓璁不鐞嗭紝姹涙湡鍔犲己宸℃煡", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "涓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 6, - threatenMoney: 0, - threatenPopulation: "10", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116020102", - latitude: 40.55972222, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙鑼冨搴勭帇绉�鑾插灞嬪悗", - longitude: 116.5922222, - monitor: "", - monitorAdvice: "", - name: "鑼冨搴勭帇绉�鑾插灞嬪悗宕╁闅愭偅鐐�", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "杈瑰潯杈冮櫋锛岄『鍚戝博灞傦紝鎴垮眿闈犺繎鍧¤剼锛屽缓璁敖蹇不鐞�", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "灏忓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 1, - threatenMoney: 0, - threatenPopulation: "3", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "宕╁", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116020742", - latitude: 40.57680556, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙涓変憨鍦拌寖蹇犵敯瀹跺眿鍚�", - longitude: 116.5887222, - monitor: "", - monitorAdvice: "", - name: "涓変憨鍦拌寖蹇犵敯瀹跺眿鍚庡穿濉岄殣鎮g偣", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝鏇存崲璀︾ず鐗�", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "涓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 8, - threatenMoney: 0, - threatenPopulation: "23", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "宕╁", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030040", - latitude: 40.56344444, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙娌宠タ浜庡瑗挎矡", - longitude: 116.5953889, - monitor: "", - monitorAdvice: "", - name: "浜庡瑗挎矡娉ョ煶娴侀殣鎮g偣", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "宸茬洃娴嬶紝2018鏉戝凡娌荤悊锛涙矡鍙e爢绉墖鏄庢樉锛屾瀵规埧灞嬶紝寤鸿姹涙湡鍔犲己宸℃煡", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉�", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "涓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 18, - threatenMoney: 0, - threatenPopulation: "59", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030055", - latitude: 40.55283333, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙妞存爲搴曚笅涓滄矡", - longitude: 116.5999444, - monitor: "", - monitorAdvice: "", - name: "妞存爲搴曚笅涓滄矡娉ョ煶娴侀殣鎮g偣", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "宸叉不鐞嗭細濞佽儊瀵硅薄閲嶅锛氫笌110116030015閲嶅5鎴�11浜�", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "涓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 5, - threatenMoney: 0, - threatenPopulation: "11", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, - { - activeStatus: "", - areaCode: "", - areaName: "", - brookLength: 0, - checkId: "", - city: "鍖椾含甯�", - codeProvince: "110116", - county: "鎬�鏌�", - dangerLevel: "", - disasterStatus: "", - drainageArea: "", - elevation: 0, - featureDes: "", - groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", - hasPlan: "", - id: "110116030054", - latitude: 40.56166667, - length: 0, - district: "鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌�", - longitude: 116.5997222, - monitor: "", - monitorAdvice: "", - name: "娌充笢鍗楁矡娉ョ煶娴侀殣鎮g偣", - number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", - preventionDes: "宸茬洃娴�", - preventionLevel: "", - preventionPlan: "瀹氭湡宸℃煡,绔嬭绀虹墝", - preventionUnit: "涔¢晣", - principal: "", - province: "鍖椾含甯�", - qp: "", - reason: "", - responsibleUnit: "", - riskLevel: "", - scale: "灏忓瀷", - stableLevel: "", - status: "", - thickness: 0, - threatenFamily: 0, - threatenMoney: 0, - threatenPopulation: "", - threatenType: "", - town: "鐞夌拑搴欓晣", - trigger: "", - type: "娉ョ煶娴�", - village: "瀛欒儭娌熸潙", - volume: "", - volumePotential: "", - width: 0, - }, -]) + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116020058", + latitude: 40.56652778, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙灏瑰瑗挎矡灏瑰缓鐕曞灞嬪悗", + longitude: 116.5803889, + monitor: "", + monitorAdvice: "", + name: "灏瑰瑗挎矡灏瑰缓鐕曞灞嬪悗宕╁闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "灏忓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 2, + threatenMoney: 0, + threatenPopulation: "3", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "宕╁", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116020078", + latitude: 40.56497222, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙娌宠タ浜庡嚖鑻卞灞嬪悗", + longitude: 116.5955278, + monitor: "", + monitorAdvice: "", + name: "娌宠タ浜庡嚖鑻卞灞嬪悗宕╁闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "灏忓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 4, + threatenMoney: 0, + threatenPopulation: "6", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "宕╁", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030041", + latitude: 40.55369444, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熷叕璺�", + longitude: 116.6002778, + monitor: "", + monitorAdvice: "", + name: "鍗楁灏忎笢娌熸偿鐭虫祦闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡,绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "灏忓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 0, + threatenMoney: 0, + threatenPopulation: "", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030015", + latitude: 40.55277778, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙鍗楁鏉戝ぇ绐戞矡", + longitude: 116.5994722, + monitor: "", + monitorAdvice: "", + name: "澶х獞娌熸偿鐭虫祦闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "宸茬洃娴嬨�佸凡娌荤悊", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "涓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 5, + threatenMoney: 0, + threatenPopulation: "11", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030076", + latitude: 40.55972222, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙涓滃潕澶т笢娌�", + longitude: 116.5916667, + monitor: "", + monitorAdvice: "", + name: "澶т笢娌熸偿鐭虫祦闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "宸叉不鐞�", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉�", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "灏忓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 1, + threatenMoney: 0, + threatenPopulation: "2", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030074", + latitude: 40.56580556, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙灏瑰瑗挎矡", + longitude: 116.59, + monitor: "", + monitorAdvice: "", + name: "灏瑰瑗挎矡娉ョ煶娴侀殣鎮g偣", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: + "宸茬洃娴嬶紱鐏惧浣撳彉鍖栵細4澶勫潯绉墿鍨锛屽爢绉嚦鍧¤剼锛屾柟閲忕害20m鲁銆�", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉�", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "涓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 7, + threatenMoney: 0, + threatenPopulation: "12", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030053", + latitude: 40.57361111, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙鍖楀ぇ鍦拌タ娲煎瓙娌�", + longitude: 116.5897222, + monitor: "", + monitorAdvice: "", + name: "鍖楀ぇ鍦拌タ娲煎瓙娌熸偿鐭虫祦闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "娌熷彛姝e鎴垮眿锛岄檷闆ㄦ椂鍑烘按閲忓ぇ锛屽缓璁不鐞嗭紝姹涙湡鍔犲己宸℃煡", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "涓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 6, + threatenMoney: 0, + threatenPopulation: "10", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116020102", + latitude: 40.55972222, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙鑼冨搴勭帇绉�鑾插灞嬪悗", + longitude: 116.5922222, + monitor: "", + monitorAdvice: "", + name: "鑼冨搴勭帇绉�鑾插灞嬪悗宕╁闅愭偅鐐�", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "杈瑰潯杈冮櫋锛岄『鍚戝博灞傦紝鎴垮眿闈犺繎鍧¤剼锛屽缓璁敖蹇不鐞�", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "灏忓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 1, + threatenMoney: 0, + threatenPopulation: "3", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "宕╁", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116020742", + latitude: 40.57680556, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙涓変憨鍦拌寖蹇犵敯瀹跺眿鍚�", + longitude: 116.5887222, + monitor: "", + monitorAdvice: "", + name: "涓変憨鍦拌寖蹇犵敯瀹跺眿鍚庡穿濉岄殣鎮g偣", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝鏇存崲璀︾ず鐗�", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "涓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 8, + threatenMoney: 0, + threatenPopulation: "23", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "宕╁", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030040", + latitude: 40.56344444, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙娌宠タ浜庡瑗挎矡", + longitude: 116.5953889, + monitor: "", + monitorAdvice: "", + name: "浜庡瑗挎矡娉ョ煶娴侀殣鎮g偣", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: + "宸茬洃娴嬶紝2018鏉戝凡娌荤悊锛涙矡鍙e爢绉墖鏄庢樉锛屾瀵规埧灞嬶紝寤鸿姹涙湡鍔犲己宸℃煡", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉�", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "涓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 18, + threatenMoney: 0, + threatenPopulation: "59", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030055", + latitude: 40.55283333, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙妞存爲搴曚笅涓滄矡", + longitude: 116.5999444, + monitor: "", + monitorAdvice: "", + name: "妞存爲搴曚笅涓滄矡娉ョ煶娴侀殣鎮g偣", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "宸叉不鐞嗭細濞佽儊瀵硅薄閲嶅锛氫笌110116030015閲嶅5鎴�11浜�", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡锛岄璀﹁浆绉伙紝绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "涓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 5, + threatenMoney: 0, + threatenPopulation: "11", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, + { + activeStatus: "", + areaCode: "", + areaName: "", + brookLength: 0, + checkId: "", + city: "鍖椾含甯�", + codeProvince: "110116", + county: "鎬�鏌�", + dangerLevel: "", + disasterStatus: "", + drainageArea: "", + elevation: 0, + featureDes: "", + groupMonitor: "鏉庢姊�,瀛欐鍜�,鑼冩弧鐢�,绉﹀缓鏉�,瀛欐姹�,瀛欐浼�", + hasPlan: "", + id: "110116030054", + latitude: 40.56166667, + length: 0, + district: "鐞夌拑搴欓晣瀛欒儭娌熸潙涓婂彴瀛愭渤涓滃崡娌�", + longitude: 116.5997222, + monitor: "", + monitorAdvice: "", + name: "娌充笢鍗楁矡娉ョ煶娴侀殣鎮g偣", + number: + "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612", + preventionDes: "宸茬洃娴�", + preventionLevel: "", + preventionPlan: "瀹氭湡宸℃煡,绔嬭绀虹墝", + preventionUnit: "涔¢晣", + principal: "", + province: "鍖椾含甯�", + qp: "", + reason: "", + responsibleUnit: "", + riskLevel: "", + scale: "灏忓瀷", + stableLevel: "", + status: "", + thickness: 0, + threatenFamily: 0, + threatenMoney: 0, + threatenPopulation: "", + threatenType: "", + town: "鐞夌拑搴欓晣", + trigger: "", + type: "娉ョ煶娴�", + village: "瀛欒儭娌熸潙", + volume: "", + volumePotential: "", + width: 0, + }, +]); function initDistrictPoint() { - let list = [] - districtList.value.forEach(item => { - item.showBillboard = true - item.className = "district" - item.type = '娉ョ煶娴�' - const entity = createPoint(item) - entity.show = false - list.push(entity) - }) - treeMap.set("瀛欒儭娌熼殣鎮g偣", list) + let list = []; + districtList.value.forEach((item) => { + item.showBillboard = true; + item.className = "district"; + item.type = "娉ョ煶娴�"; + const entity = createPoint(item); + entity.show = false; + list.push(entity); + }); + treeMap.set("瀛欒儭娌熼殣鎮g偣", list); } - -let divPointList = [] +let divPointList = []; function initDuanmianPoint() { - getDuanMainData().then(res => { - const duanmianList = res.data - const list = [] - duanmianList.forEach(item => { - item.id = item.id + item.alias - item.name = item.alias - item.longitude = item.lon - item.latitude = item.lat - item.showBillboard = false - item.className = "district" + getDuanMainData().then((res) => { + const duanmianList = res.data; + const list = []; + duanmianList.forEach((item) => { + item.id = item.id + item.alias; + item.name = item.alias; + item.longitude = item.lon; + item.latitude = item.lat; + item.showBillboard = false; + item.className = "district"; - const entity = createPoint(item) - entity.show = false - list.push(entity) - return - const divPoint = earthCtrl.factory.createDivPoint( - item.alias, - { lon: longitude, lat: latitude }, - { - type: "custom", - offset: ["c", 60], - description: ` + const entity = createPoint(item); + entity.show = false; + list.push(entity); + return; + const divPoint = earthCtrl.factory.createDivPoint( + item.alias, + { lon: longitude, lat: latitude }, + { + type: "custom", + offset: ["c", 60], + description: ` <div class="divPoint-custom"> <p>${item.alias}</p> </div> `, - near: 0, - far: 500000, - } - ) - divPoint.item.show = false - console.log(divPoint) + near: 0, + far: 500000, + } + ); + divPoint.item.show = false; + console.log(divPoint); - divPointList.push(divPoint.item) - }) - treeMap.set("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", list) - }) - + divPointList.push(divPoint.item); + }); + treeMap.set("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", list); + }); } function addTetrahedron(visible) { - const emergencyAreaList = [] + const emergencyAreaList = []; - loadAreaPolygon("/json/emergency_area.geojson", true).then(entities => { - emergencyAreaList.push(...entities) - }) - // console.log('polygon', polygon); + loadAreaPolygon("/json/emergency_area.geojson", true).then((entities) => { + emergencyAreaList.push(...entities); + }); + // console.log('polygon', polygon); - - - let list = [ - { - name: "灏瑰缓鍗庡", - longitude: 116.593517, - latitude: 40.568391, - altitude: 528.45, - }, - { - name: "鑼冩尟姹熷", - longitude: 116.591059, - latitude: 40.574068, - altitude: 528, - }, - { - name: "鍚庡潯", - longitude: 116.597975, - latitude: 40.558199, - altitude: 528, - }, - ] - list.forEach(item => { - let point = earthCtrl.factory.addTetrahedron({ - position: { - lon: item.longitude, - lat: item.latitude, - height: item.altitude, - }, - multiple: 1.0, - scale: new SmartEarth.Cesium.Cartesian3(20, 20, 20), - }) - console.log("point", point) - emergencyAreaList.push(point) - - }) - treeMap.set("閬块櫓鐐�", emergencyAreaList) - + let list = [ + { + name: "灏瑰缓鍗庡", + longitude: 116.593517, + latitude: 40.568391, + altitude: 528.45, + }, + { + name: "鑼冩尟姹熷", + longitude: 116.591059, + latitude: 40.574068, + altitude: 528, + }, + { + name: "鍚庡潯", + longitude: 116.597975, + latitude: 40.558199, + altitude: 528, + }, + ]; + list.forEach((item) => { + let point = earthCtrl.factory.addTetrahedron({ + position: { + lon: item.longitude, + lat: item.latitude, + height: item.altitude, + }, + multiple: 1.0, + scale: new SmartEarth.Cesium.Cartesian3(20, 20, 20), + }); + console.log("point", point); + emergencyAreaList.push(point); + }); + treeMap.set("閬块櫓鐐�", emergencyAreaList); } function toggleLayerVisible(name, checked) { - const entityList = treeMap.get(name) - if (Array.isArray(entityList) && entityList.length > 0) { - entityList.forEach(entity => { - entity.show = checked - }) - } - treeMap.set(name, entityList) + const entityList = treeMap.get(name); + if (Array.isArray(entityList) && entityList.length > 0) { + entityList.forEach((entity) => { + entity.show = checked; + }); + } + treeMap.set(name, entityList); } function getData() { - initDevicePoint() - initDistrictPoint() - initDuanmianPoint() + initDevicePoint(); + initDistrictPoint(); + initDuanmianPoint(); } // 閫氳繃 store 浼犻�掗渶瑕侀�変腑鐨刱ey -watch(() => checkedKeys.value, (keys) => { - if (keys && Array.isArray(keys)) { - treeRef.value.setCheckedKeys(defaultSelectedKeys.value.concat(keys), true) - } -}) +watch( + () => checkedKeys.value, + (keys) => { + if (keys && Array.isArray(keys)) { + treeRef.value.setCheckedKeys( + defaultSelectedKeys.value.concat(keys), + true + ); + } + } +); watch( - () => route.fullPath, - path => { - const defaultKeys = defaultSelectedKeys.value - if (path == "/yhgl") { - treeRef.value.setCheckedKeys(defaultKeys.concat("瀛欒儭娌熼殣鎮g偣"), true) - toggleLayerVisible("瀛欒儭娌熼殣鎮g偣", true) - toggleLayerVisible("缁煎悎鐩戞祴璁惧淇℃伅", false) - toggleLayerVisible("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", false) - - } else if (path == "/zhjc") { - treeRef.value.setCheckedKeys(defaultKeys.concat("缁煎悎鐩戞祴璁惧淇℃伅"), true) - toggleLayerVisible("缁煎悎鐩戞祴璁惧淇℃伅", true) - toggleLayerVisible("瀛欒儭娌熼殣鎮g偣", false) - toggleLayerVisible("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", false) - } else if (path == "/mnfz") { - treeRef.value.setCheckedKeys(defaultKeys.concat("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�"), true) - toggleLayerVisible("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", true) - toggleLayerVisible("瀛欒儭娌熼殣鎮g偣", false) - toggleLayerVisible("缁煎悎鐩戞祴璁惧淇℃伅", false) - - } else { - treeRef.value.setCheckedKeys(defaultKeys, true) - } - } -) + () => route.fullPath, + (path) => { + const defaultKeys = defaultSelectedKeys.value; + if (path == "/yhgl") { + treeRef.value.setCheckedKeys(defaultKeys.concat("瀛欒儭娌熼殣鎮g偣"), true); + toggleLayerVisible("瀛欒儭娌熼殣鎮g偣", true); + toggleLayerVisible("缁煎悎鐩戞祴璁惧淇℃伅", false); + toggleLayerVisible("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", false); + } else if (path == "/zhjc") { + treeRef.value.setCheckedKeys( + defaultKeys.concat("缁煎悎鐩戞祴璁惧淇℃伅"), + true + ); + toggleLayerVisible("缁煎悎鐩戞祴璁惧淇℃伅", true); + toggleLayerVisible("瀛欒儭娌熼殣鎮g偣", false); + toggleLayerVisible("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", false); + } else if (path == "/mnfz") { + treeRef.value.setCheckedKeys( + defaultKeys.concat("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�"), + true + ); + toggleLayerVisible("瀛欒儭娌熶豢鐪熸爣娉ㄥ湴鐗�", true); + toggleLayerVisible("瀛欒儭娌熼殣鎮g偣", false); + toggleLayerVisible("缁煎悎鐩戞祴璁惧淇℃伅", false); + } else { + treeRef.value.setCheckedKeys(defaultKeys, true); + } + } +); onMounted(() => { - initMap() - getData() -}) + initMap(); + getData(); +}); onUnmounted(() => { - viewer.entities.removeAll() -}) + viewer.entities.removeAll(); +}); </script> <style lang="less" scoped> .layer-tree { - // position: absolute; - // top: 11%; - // right: 25%; - background: url("@/assets/img/tools/plotting_new.png"); - width: 200px; - height: 200px; - z-index: 99; + // position: absolute; + // top: 11%; + // right: 25%; + background: url("@/assets/img/tools/plotting_new.png"); + width: 200px; + height: 200px; + z-index: 99; } -</style> \ No newline at end of file +</style> diff --git a/src/components/tools/SlopeAnalysis.vue b/src/components/tools/SlopeAnalysis.vue index a12b918..71557c9 100644 --- a/src/components/tools/SlopeAnalysis.vue +++ b/src/components/tools/SlopeAnalysis.vue @@ -1,15 +1,6 @@ <template> <div class="terrain-settings"> <el-form :model="form" label-width="80px"> - <!-- 鍦拌〃娓叉煋 --> - <el-form-item label="鍦拌〃娓叉煋"> - <el-radio-group v-model="form.terrainRender"> - <el-radio :label="0">鏃�</el-radio> - <el-radio :label="1">鍧″害</el-radio> - </el-radio-group> - </el-form-item> - - <!-- 绛夐珮绾垮紑鍏� --> <el-form-item label="绛夐珮绾�"> <el-switch v-model="form.contourLines" @@ -51,7 +42,6 @@ // 鍒濆鍖� form 鏁版嵁 const form = reactive({ - terrainRender: 0, contourLines: false, color: "red", spacing: 50, diff --git a/src/components/tools/Tools.vue b/src/components/tools/Tools.vue index 6a7a124..bc15549 100644 --- a/src/components/tools/Tools.vue +++ b/src/components/tools/Tools.vue @@ -42,16 +42,18 @@ <div v-show="echartsShow" id="sectionCharts" class="sectionChars"> <div id="echartsView1" style="width: 100%; height: 100%"></div> </div> - <!-- 鍧″悜鍒嗘瀽 --> + <!-- 鍧″害鍧″悜鍒嗘瀽 --> <Aspect v-show="showAspect" @draw="SlopeArrow" @clear="SlopeArrowClose" + @handleaspect="handleaspect" + @handleSlope="handleSlope" class="popup-menu-see" /> <SlopeAnalysis @draw="SlopeAnalysiss" - v-show="showSlope" + v-show="isContourLabel" class="popup-menu-see" @update-slope="onUpdateSlope" /> @@ -128,9 +130,6 @@ // 鍧″悜绠ご寮圭獥 const showAspect = ref(false); -// 鍧″害鍒嗘瀽寮圭獥 -const showSlope = ref(false); - // 宸ュ叿鍒楄〃 const toolList = ref([ { @@ -162,8 +161,7 @@ active: false, options: [ { name: "鐐逛綅淇℃伅鎻愬彇", icon: "鐐逛綅淇℃伅鎻愬彇" }, - { name: "鍧″害鍒嗘瀽", icon: "鍧″害鍧″悜鎻愬彇" }, - { name: "鍧″悜鍒嗘瀽", icon: "鍧″害鍧″悜鎻愬彇" }, + { name: "鍧″害鍧″悜鍒嗘瀽", icon: "鍧″害鍧″悜鎻愬彇" }, { name: "鍓栭潰鎻愬彇", icon: "鍓栭潰鎻愬彇" }, { name: "鎸栧~鏂硅绠�", icon: "鎸栧~鏂硅绠�" }, { name: "绛夐珮绾垮垎鏋�", icon: "绛夐珮绾垮垎鏋�" }, @@ -201,13 +199,11 @@ // 澶勭悊宸ュ叿鐐瑰嚮浜嬩欢 function handleClick(tool, event) { - console.log(tool.options); - - // 鏇存柊鎵�鏈夊伐鍏风殑 active 鐘舵�� toolList.value.forEach((item) => { - item.active = item.name === tool.name && currentToolOptions.value !== tool.options; + item.active = + item.name === tool.name && currentToolOptions.value !== tool.options; }); - + console.log(tool.options); // 濡傛灉褰撳墠宸ュ叿宸茬粡鏄縺娲荤姸鎬侊紝鍒欏叧闂畠 if (currentToolOptions.value === tool.options) { currentToolOptions.value = null; // 娓呯┖褰撳墠宸ュ叿閫夐」 @@ -215,43 +211,43 @@ seeAnalyzeShow.value = false; // 鍙鍩� topographyShow.value = false; // 鍓栭潰 echartsShow.value = false; // 鍓栭潰echarts - showAspect.value = false; // 鍧″悜绠ご - showSlope.value = false; // 鍧″害绠ご + showAspect.value = false; // 鍧″害鍧″悜鍒嗘瀽 showRain.value = false; // 闆ㄥぉ showSnow.value = false; // 闆ぉ return; } - // 濡傛灉宸ュ叿鍚嶇О鏄� "鍥惧眰绠$悊" if (tool.name === "鍥惧眰绠$悊") { showLayerTree.value = !showLayerTree.value; // 鍒囨崲鍥惧眰鏍戠殑鏄剧ず鐘舵�� isPopupVisible.value = false; // 闅愯棌寮圭獥 - seeAnalyzeShow.value = false; // 鍙鍩� - topographyShow.value = false; // 鍓栭潰 - echartsShow.value = false; // 鍓栭潰echarts - showAspect.value = false; // 鍧″悜绠ご - showSlope.value = false; // 鍧″害绠ご - showRain.value = false; // 闆ㄥぉ - showSnow.value = false; // 闆ぉ + seeAnalyzeShow.value = false; //鍙鍩� + topographyShow.value = false; //鍓栭潰 + echartsShow.value = false; //鍓栭潰echarts + showAspect.value = false; //鍧″悜绠ご + showRain.value = false; //闆ㄥぉ + showSnow.value = false; //闆ㄥぉ return; } // 瀵逛簬鍏朵粬宸ュ叿 + showLayerTree.value = false; // 纭繚鍥惧眰鏍戦殣钘� isPopupVisible.value = true; // 鏄剧ず寮圭獥 currentToolOptions.value = tool.options; // 璁剧疆褰撳墠宸ュ叿鐨勫姛鑳介�夐」 - seeAnalyzeShow.value = false; // 鍙鍩� - topographyShow.value = false; // 鍓栭潰 - echartsShow.value = false; // 鍓栭潰echarts - showAspect.value = false; // 鍧″悜绠ご - showSlope.value = false; // 鍧″害绠ご - showRain.value = false; // 闆ㄥぉ - showSnow.value = false; // 闆ぉ + seeAnalyzeShow.value = false; //鍙鍩� + topographyShow.value = false; //鍓栭潰 + echartsShow.value = false; //鍓栭潰echarts + showAspect.value = false; //鍧″悜绠ご + showRain.value = false; //闆ㄥぉ + showSnow.value = false; //闆ㄥぉ } + +const currentOption = ref(null); // 澶勭悊寮圭獥閫夐」鐐瑰嚮浜嬩欢 function handleOptionClick(option) { isPopupVisible.value = false; - console.log("Selected option:", option); + currentOption.value = option.name; + console.log("Selected option:", currentOption.value); const actionMap = { 鏄剧ず鍥惧眰: () => (showLayerTree.value = true), 闅愯棌鍥惧眰: () => (showLayerTree.value = false), @@ -297,11 +293,16 @@ 鍓栭潰鎻愬彇: () => { topographyShow.value = true; }, - 鍧″害鍒嗘瀽: () => { - showSlope.value = true; - }, - 鍧″悜鍒嗘瀽: () => { + 鍧″害鍧″悜鍒嗘瀽: () => { showAspect.value = true; + }, + 绛夐珮绾垮垎鏋�: () => { + isContourLabel.value = true; + if (isContourLabel.value === false) { + mapUtils.createContourLabel(); + } else { + mapUtils.closeContourLabel(); + } }, 鐐逛綅淇℃伅鎻愬彇: () => { isPickActive.value = !isPickActive.value; @@ -321,14 +322,6 @@ mapUtils.FloodAnalysis("close"); } else { mapUtils.FloodAnalysis(); - } - }, - 绛夐珮绾垮垎鏋�: () => { - isContourLabel.value = !isContourLabel.value; - if (isContourLabel.value === false) { - mapUtils.createContourLabel(); - } else { - mapUtils.closeContourLabel(); } }, }; @@ -393,6 +386,14 @@ mapUtils.handleClear(); }; +// 鍒掑垎鍖哄煙 +const SlopeArrow = () => { + mapUtils.hfqy(); +}; +// 鍧″害鍒嗘瀽 +const handleaspect = () => { + mapUtils.pdfx(); +}; //鍧″害鐨勭澶磋搴�(瑙掑害涓�0~1,鑼冨洿鍐呯殑鍧囧寑鎻掑��) const angles = [ 0.0, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, @@ -420,18 +421,17 @@ "#F0AD56", "#F2CC45", ]; - -const SlopeArrow = () => { +// 鍧″悜鍒嗘瀽 +const handleSlope = () => { mapUtils.pxjt(colors, angles); }; -// 鍏抽棴鍧″悜绠ご +// 鍏抽棴鍧″害鍧″悜鍒嗘瀽 const SlopeArrowClose = () => { - mapUtils.cleanupAnalysisTools(); + mapUtils.clearPreviousAnalysis(); }; -// 鍧″害鍒嗘瀽 +// 绛夐珮绾� const formData = reactive({ - terrainRender: 0, contourLines: false, color: "red", spacing: 50, @@ -439,14 +439,12 @@ }); const SlopeAnalysiss = () => { - mapUtils.pdfx(formData); + mapUtils.dgxfx(formData); }; - -// 鍧″害 const onUpdateSlope = (newOption) => { Object.assign(formData, newOption); - mapUtils.pdfx(formData); + mapUtils.dgxfx(formData); }; // 闆� diff --git a/src/utils/tools.js b/src/utils/tools.js index 6b7c835..a56a9c7 100644 --- a/src/utils/tools.js +++ b/src/utils/tools.js @@ -25,6 +25,7 @@ snowEffect: null, // 鏂板闆晥鏋滃疄渚� regionTerrain: null, polygonPosition: [], + PolygonArr: [], init(earthCtrl) { this.earthCtrl = earthCtrl; @@ -91,81 +92,80 @@ }, // 鍖哄煙鍒掑垎宸ュ叿 hfqy() { - // 鍒濆鍖栧尯鍩熷湴褰� this.regionTerrain = earthCtrl.factory.createRegionTerrain({}); this.polygonPosition = []; - // 鍒涘缓缁樺埗宸ュ叿 - const drawTool = earthCtrl.shapeTool.createDrawShapeTool((e) => { - try { - if (!e || !e.result) { - throw new Error('Invalid drawing result'); - } - - // 杞崲鍧愭爣骞跺瓨鍌� - const polygonI = []; - for (const point of e.result) { - const cartographic = earthCtrl.coreMap.scene.globe.ellipsoid.cartesianToCartographic(point); - const lon = Cesium.Math.toDegrees(cartographic.longitude); - const lat = Cesium.Math.toDegrees(cartographic.latitude); - - polygonI.push(lon, lat, 0); - this.polygonPosition.push(lon, lat); - } - - // 璁剧疆鍖哄煙鍦板舰 - this.regionTerrain.setPositions(this.polygonPosition); - this.regionTerrain.setRegionEnabled(true); - - // 娓呴櫎缁樺埗宸ュ叿 - drawTool.removeFromMap(); - } catch (error) { - console.error('Error during region drawing:', error); - drawTool.removeFromMap(); + const draw = earthCtrl.shapeTool.createDrawShapeTool((e) => { + const polygonI = []; + for (const i of e.result) { + const ellipsoid = earthCtrl.coreMap.scene.globe.ellipsoid; + const cartographic = ellipsoid.cartesianToCartographic(i); + const lon = SmartEarth.Cesium.Math.toDegrees( + cartographic.longitude + ); // 缁忓害 + const lat = SmartEarth.Cesium.Math.toDegrees(cartographic.latitude); // 绾害 + polygonI.push(lon, lat, 0); + this.polygonPosition.push(lon, lat); } + this.PolygonArr.push({ + id: earthCtrl.factory.createUUID(), + polygon: polygonI, + }); + draw.removeFromMap(); + this.regionTerrain.setPositions(this.polygonPosition); + this.regionTerrain.setRegionEnabled(true); }); - - return drawTool; }, + // 鍧″害鍒嗘瀽 + pdfx() { + if (this.regionTerrain) { + console.log('鍧″害鍒嗘瀽'); + this.clearPreviousAnalysis(); // 鍏堟竻闄や箣鍓嶇殑鍒嗘瀽 + this.regionTerrain.setType("slope"); + this.regionTerrain.update(); + } + }, + // 鍧″悜绠ご pxjt(colors, angles) { - this.hfqy() + if (this.regionTerrain) { + this.clearPreviousAnalysis(); // 鍏堟竻闄や箣鍓嶇殑鍒嗘瀽 + this.regionTerrain.setType("aspect"); + this.regionTerrain.update(); + } + this.slopeArrow = earthCtrl.factory.createSlopeArrow({}); this.slopeArrow.setColorsAndAngles(colors, angles); - this.regionTerrain.setPositions(this.polygonPosition); - this.regionTerrain.setRegionEnabled(true); this.slopeArrow.setSlopeType(1); }, - // 鍧″害鍒嗘瀽 - pdfx(option) { - this.hfqy() - this.elevationTool = new SmartEarth.ElevationTool(earthCtrl) - if (option.terrainRender == '1') { - this.elevationTool.type = 'slope' - } else { - this.elevationTool.type = 'none' - } - this.elevationTool.tf = option.contourLines - this.elevationTool.setSpacing(option.spacing) - this.elevationTool.setWidth(option.lineWidth) + // 绛夐珮绾垮垎鏋� + dgxfx(option) { + this.clearPreviousAnalysis(); // 鍏堟竻闄や箣鍓嶇殑鍒嗘瀽 + this.hfqy(); + this.elevationTool = new SmartEarth.ElevationTool(earthCtrl); + this.elevationTool.tf = option.contourLines; + this.elevationTool.setSpacing(option.spacing); + this.elevationTool.setWidth(option.lineWidth); this.elevationTool.setContourColor(option.color); this.elevationTool.render(); }, - // 娓呯悊鎵�鏈夊垎鏋愬伐鍏� - cleanupAnalysisTools() { - // 鍧″悜绠ご + // 娓呴櫎涔嬪墠鐨勫垎鏋愶紙鍧″害銆佸潯鍚戙�佺瓑楂樼嚎锛� + clearPreviousAnalysis() { + if (this.regionTerrain) { + this.regionTerrain.setType(""); + this.regionTerrain.update(); + } + if (this.slopeArrow) { this.slopeArrow.setSlopeType(0); - this.slopeArrow = null; + // this.slopeArrow = null; } - // 閫夋嫨鍖哄煙 - if (this.regionTerrain) { - this.regionTerrain.setRegionEnabled(false); - this.regionTerrain = null; + + if (this.elevationTool) { + this.elevationTool = null; } - this.polygonPosition = []; }, // 鏍囩粯 CreateLabel(pic, show) { -- Gitblit v1.9.3