guonan
2025-04-18 1dbf51ab46b6a96daa4b75afa58eb9d1c9570a54
按区域划分坡度坡向等高线
已修改5个文件
2291 ■■■■ 文件已修改
src/components/tools/Aspect.vue 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/tools/LayerTree.vue 2070 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/tools/SlopeAnalysis.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/tools/Tools.vue 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/tools.js 108 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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%;
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: "北京市隐患点",
            },
            {
                label: "孙胡沟隐患点",
            },
            // {
            //     label: "泥石流隐患点面数据",
            // },
            {
                label: "综合监测设备信息",
            },
            {
                label: "孙胡沟仿真标注地物",
            },
            {
                label: "避险点",
            },
        ],
    },
])
const treeRef = ref(null)
const treeMap = new Map()
const defaultSelectedKeys = ref(["模型数据", "影像数据", "地形数据"])
  {
    label: "三维服务",
    children: [
      { label: "模型数据" },
      { label: "地形数据" },
      { label: "影像数据" },
    ],
  },
  {
    label: "图层数据",
    children: [
      {
        label: "北京市隐患点",
      },
      {
        label: "孙胡沟隐患点",
      },
      // {
      //     label: "泥石流隐患点面数据",
      // },
      {
        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 "北京市隐患点":
            console.log("北京市隐患点", checked, indeterminate)
            break
        case "孙胡沟隐患点":
            console.log("孙胡沟隐患点", checked, indeterminate)
            break
        case "泥石流隐患点面数据":
            console.log("泥石流隐患点面数据", 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 "北京市隐患点":
      console.log("北京市隐患点", checked, indeterminate);
      break;
    case "孙胡沟隐患点":
      console.log("孙胡沟隐患点", checked, indeterminate);
      break;
    case "泥石流隐患点面数据":
      console.log("泥石流隐患点面数据", 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: "怀柔区琉璃庙镇孙胡沟村于家西沟次声仪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: "怀柔区琉璃庙镇孙胡沟村于家西沟次声仪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: "尹家西沟泥石流隐患点",
        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: "沟口正对房屋,降雨时出水量大,建议治理,汛期加强巡查",
        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: "三亩地范忠田家屋后崩塌隐患点",
        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: "于家西沟泥石流隐患点",
        number: "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612",
        preventionDes: "已监测,2018村已治理;沟口堆积扇明显,正对房屋,建议汛期加强巡查",
        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: "椴树底下东沟泥石流隐患点",
        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: "河东南沟泥石流隐患点",
        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: "尹家西沟泥石流隐患点",
    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: "沟口正对房屋,降雨时出水量大,建议治理,汛期加强巡查",
    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: "三亩地范忠田家屋后崩塌隐患点",
    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: "于家西沟泥石流隐患点",
    number:
      "13716108909,13716029391,13716291714,13716191943,13716427398,13124792612",
    preventionDes:
      "已监测,2018村已治理;沟口堆积扇明显,正对房屋,建议汛期加强巡查",
    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: "椴树底下东沟泥石流隐患点",
    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: "河东南沟泥石流隐患点",
    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("孙胡沟隐患点", 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("孙胡沟隐患点", 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 传递需要选中的key
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("孙胡沟隐患点"), true)
            toggleLayerVisible("孙胡沟隐患点", true)
            toggleLayerVisible("综合监测设备信息", false)
            toggleLayerVisible("孙胡沟仿真标注地物", false)
        } else if (path == "/zhjc") {
            treeRef.value.setCheckedKeys(defaultKeys.concat("综合监测设备信息"), true)
            toggleLayerVisible("综合监测设备信息", true)
            toggleLayerVisible("孙胡沟隐患点", false)
            toggleLayerVisible("孙胡沟仿真标注地物", false)
        } else if (path == "/mnfz") {
            treeRef.value.setCheckedKeys(defaultKeys.concat("孙胡沟仿真标注地物"), true)
            toggleLayerVisible("孙胡沟仿真标注地物", true)
            toggleLayerVisible("孙胡沟隐患点", false)
            toggleLayerVisible("综合监测设备信息", false)
        } else {
            treeRef.value.setCheckedKeys(defaultKeys, true)
        }
    }
)
  () => route.fullPath,
  (path) => {
    const defaultKeys = defaultSelectedKeys.value;
    if (path == "/yhgl") {
      treeRef.value.setCheckedKeys(defaultKeys.concat("孙胡沟隐患点"), true);
      toggleLayerVisible("孙胡沟隐患点", true);
      toggleLayerVisible("综合监测设备信息", false);
      toggleLayerVisible("孙胡沟仿真标注地物", false);
    } else if (path == "/zhjc") {
      treeRef.value.setCheckedKeys(
        defaultKeys.concat("综合监测设备信息"),
        true
      );
      toggleLayerVisible("综合监测设备信息", true);
      toggleLayerVisible("孙胡沟隐患点", false);
      toggleLayerVisible("孙胡沟仿真标注地物", false);
    } else if (path == "/mnfz") {
      treeRef.value.setCheckedKeys(
        defaultKeys.concat("孙胡沟仿真标注地物"),
        true
      );
      toggleLayerVisible("孙胡沟仿真标注地物", true);
      toggleLayerVisible("孙胡沟隐患点", 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>
</style>
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,
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,7 +199,23 @@
// 处理工具点击事件
function handleClick(tool, event) {
  toolList.value.forEach((item) => {
    item.active =
      item.name === tool.name && currentToolOptions.value !== tool.options;
  });
  console.log(tool.options);
  // 如果当前工具已经是激活状态,则关闭它
  if (currentToolOptions.value === tool.options) {
    currentToolOptions.value = null; // 清空当前工具选项
    isPopupVisible.value = false; // 隐藏弹窗
    seeAnalyzeShow.value = false; // 可视域
    topographyShow.value = false; // 剖面
    echartsShow.value = false; // 剖面echarts
    showAspect.value = false; // 坡度坡向分析
    showRain.value = false; // 雨天
    showSnow.value = false; // 雪天
    return;
  }
  // 如果工具名称是 "图层管理"
  if (tool.name === "图层管理") {
    showLayerTree.value = !showLayerTree.value; // 切换图层树的显示状态
@@ -210,7 +224,6 @@
    topographyShow.value = false; //剖面
    echartsShow.value = false; //剖面echarts
    showAspect.value = false; //坡向箭头
    showSlope.value = false; //坡向箭头
    showRain.value = false; //雨天
    showSnow.value = false; //雨天
    return;
@@ -224,15 +237,17 @@
  topographyShow.value = false; //剖面
  echartsShow.value = false; //剖面echarts
  showAspect.value = false; //坡向箭头
  showSlope.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),
@@ -278,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;
@@ -302,14 +322,6 @@
        mapUtils.FloodAnalysis("close");
      } else {
        mapUtils.FloodAnalysis();
      }
    },
    等高线分析: () => {
      isContourLabel.value = !isContourLabel.value;
      if (isContourLabel.value === false) {
        mapUtils.createContourLabel();
      } else {
        mapUtils.closeContourLabel();
      }
    },
  };
@@ -374,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,
@@ -401,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,
@@ -420,14 +439,12 @@
});
const SlopeAnalysiss = () => {
  mapUtils.pdfx(formData);
  mapUtils.dgxfx(formData);
};
// 坡度
const onUpdateSlope = (newOption) => {
  Object.assign(formData, newOption);
  mapUtils.pdfx(formData);
  mapUtils.dgxfx(formData);
};
// 雨
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) {