surprise
2024-01-09 4529e45a7a7bc438dd4fabbf177f74cb2c0aa5b5
src/assets/js/Layer/mapGeo.js
@@ -1,7 +1,12 @@
var source = []
const mapGeo = {
    source1: null,
    type: null,
    init(res) {
        if (this.type && this.type === res) {
            return this.type = null
        }
        this.type = res;
        switch (res.type) {
            case "WangGe":
                this.addWangGeGeoJson(res);
@@ -17,26 +22,43 @@
                break;
            case "zhaiHai":
                this.addzhaiHaiGeoJson(res)
                break;
            case "ZhongPo":
                this.addZhongPoGeoJson(res)
                break;
        }
    },
    addZhongPoGeoJson(res) {
        var url = layerData.config.Model_URL + res.urls;
        var data = Cesium.GeoJsonDataSource.load(url, //要加载的 url、GeoJSON 对象或 TopoJSON 对象。
            {
                stroke: Cesium.Color.ORANGE, //折线和多边形轮廓的默认颜色。
                fill: Cesium.Color.WHITE.withAlpha(0.2), //多边形内部的默认颜色。
                strokeWidth: 3, //折线和多边形轮廓的默认宽度。
            }
        )
        data.then((dataSource) => {
            dataSource.name = res.type
            Viewer.dataSources.add(
                dataSource
            );
        })
    },
    delGeoSource(res) {
        if (res.type == "zhaiHai") {
            Viewer.dataSources.remove(Viewer.dataSources.getByName("zhaiHai2")[0])
            Viewer.dataSources.remove(Viewer.dataSources.getByName("zhaiHai1")[0])
            Viewer.dataSources.remove(Viewer.dataSources.getByName("zhaiHai3")[0])
        } else {
        if (this.type && this.type == res) {
            this.type = null
        }
            if (!res.type) return;
            Viewer.dataSources.remove(Viewer.dataSources.getByName(res.type)[0])
        }
    },
    addzhaiHaiGeoJson(res) {
        var url1 = layerData.config.Model_URL + res.urls[0];
        var url2 = layerData.config.Model_URL + res.urls[1];
        var url3 = layerData.config.Model_URL + res.urls[2];
        var url1 = layerData.config.Model_URL + res.urls ;
        var color = Cesium.Color.fromCssColorString("rgb(255,0,255)")
        var data1 = Cesium.GeoJsonDataSource.load(url1, //要加载的 url、GeoJSON 对象或 TopoJSON 对象。
            {
@@ -46,38 +68,13 @@
            }
        )
        data1.then((dataSource) => {
            dataSource.name = "zhaiHai1"
            dataSource.name = res.type
            Viewer.dataSources.add(
                dataSource
            );
        })
        var data2 = Cesium.GeoJsonDataSource.load(url2, //要加载的 url、GeoJSON 对象或 TopoJSON 对象。
            {
                stroke: color, //折线和多边形轮廓的默认颜色。
                fill: Cesium.Color.WHITE.withAlpha(0.2), //多边形内部的默认颜色。
                strokeWidth: 3, //折线和多边形轮廓的默认宽度。
            }
        )
        data2.then((dataSource) => {
            dataSource.name = "zhaiHai2"
            Viewer.dataSources.add(
                dataSource
            );
        })
        var data3 = Cesium.GeoJsonDataSource.load(url3, //要加载的 url、GeoJSON 对象或 TopoJSON 对象。
            {
                stroke: color, //折线和多边形轮廓的默认颜色。
                fill: Cesium.Color.WHITE.withAlpha(0.2), //多边形内部的默认颜色。
                strokeWidth: 3, //折线和多边形轮廓的默认宽度。
            }
        )
        data3.then((dataSource) => {
            dataSource.name = "zhaiHai3"
            Viewer.dataSources.add(
                dataSource
            );
        })
    },
    addZhongQuXianGeoJson(res) {
@@ -129,11 +126,11 @@
        })
    },
    addZhuangHaoGeoJson(res) {
        var url = layerData.config.Model_URL + res.urls;
        var img = layerData.config.Model_URL + '/Data/img/img1.png';
       Cesium.GeoJsonDataSource.load(url).then((dataSource) => {
        Cesium.GeoJsonDataSource.load(url).then((dataSource) => {
            dataSource.name = res.type
            Viewer.dataSources.add(
                dataSource