guanqb
2022-11-07 adcdf0d9f2e37b9719d63113d2ae1a9d698ef20e
src/views/activity/index.vue
@@ -397,6 +397,10 @@
                        lat: 28.684435,
                        alt: 100,
                    }]
                },
                {
                    id: 777,
                    label: '热力图'
                }]
            }],
            defaultProps: {
@@ -490,21 +494,49 @@
    updated () { },
    methods: {
        generatePosition (num) {
            let list = []
            for (let i = 0; i < num; i++) {
                let lng = 115.974 + Math.random() * 0.5
                let lat = 28.628 + Math.random() * 0.5
                list.push(new global.DC.Position(lng, lat))
            }
            return list
        },
        treeCheckClick (e1, e2) {
            this.$EventBus.$emit('mapClearLayer', {
                layerName: 'activeLayer',
                type: 'VectorLayer'
            const that = this
            this.$EventBus.$emit('mapRemoveLayer', {
                layerName: 'activeHeatLayer',
                type: 'HeatLayer'
            })
            e2.checkedNodes.forEach(item => {
                if (item.lng) {
                    item.url = '/img/icon/position.png'
                    this.$EventBus.$emit('layerPointAdd', {
                        layerName: 'activeLayer',
                        type: "billboard",
                        params: item
                    })
                }
            })
            if (e1.label == '热力图' && e2.checkedKeys.some(item => {
                return item == 777
            })) {
                this.$EventBus.$emit('layerPointAdd', {
                    layerName: 'activeHeatLayer',
                    type: "HeatPoint",
                    layerType: 'HeatLayer',
                    params: {
                        positions: that.generatePosition(2000)
                    }
                })
            } else {
                this.$EventBus.$emit('mapClearLayer', {
                    layerName: 'activeLayer',
                    type: 'VectorLayer'
                })
                e2.checkedNodes.forEach(item => {
                    if (item.lng) {
                        item.url = '/img/icon/position.png'
                        this.$EventBus.$emit('layerPointAdd', {
                            layerName: 'activeLayer',
                            type: "billboard",
                            params: item
                        })
                    }
                })
            }
        },
        treeNodeClick () {
@@ -513,7 +545,7 @@
                100
            )
            this.$EventBus.$emit('layerPolylineAdd', {
                layerName: 'polylineLayer',
                layerName: 'polylineLayer1',
                positions: '116.025000, 28.686000, 116.025000, 28.678000,116.020000, 28.678000',
                material: color,
                width: 2
@@ -668,6 +700,10 @@
            layerName: 'polylineLayer',
            type: 'VectorLayer'
        })
        this.$EventBus.$emit('mapRemoveLayer', {
            layerName: 'activeHeatLayer',
            type: 'HeatLayer'
        })
        analyseLayer.clear()