quanyawei
2023-10-10 158327984c28169b6f3f241582914284b2d4a764
fix:风场粒子修改
1 files modified
100 ■■■■■ changed files
src/components/Wind/Map.vue 100 ●●●●● patch | view | raw | blame | history
src/components/Wind/Map.vue
@@ -463,8 +463,7 @@
      chooseTime: false,
      dateInfo: '', // 选择的日期
      timeInfo: '', // 选择的时间
      nyr: '', // 选择的年月日
      windAllDate: []
      nyr: '' // 选择的年月日
    }
  },
  computed: {
@@ -480,9 +479,6 @@
    }
  },
  mounted() {
    this.$nextTick(() => {
      this.getParamsData()
    })
    this.currentHour()
    this.$Bus.$on(
      'alarmTableVisible',
@@ -502,9 +498,9 @@
    this.jingduNew = newLL[1]
    this.weiduNew = newLL[0]
    // 初始化风场数据
    // this.windData()
    // this.change(0)
    this.windData()
    this.change(0)
    this.getParamsData()
    this.windDir()
    this.newDate()
    // this.alertData(this.PageSize, this.currentPage)
@@ -1527,7 +1523,7 @@
      this.getParamsData()
      setTimeout(() => {
        $.getJSON(
          'http://47.99.64.149:8080/api/screen_api_v2/screen/windAndDeviceDataByArea',
          'http://47.99.64.149:8080/screen_api_v2/screen/windAndDeviceDataByArea',
          { monitorPointId: this.$store.state.monitorPointId },
          (data) => {
            // 遍历所有图层
@@ -1544,14 +1540,14 @@
          }
        )
      }, 1000)
      // if (this.windState === 1) {
      //   console.log('getRegionApiRequest')
      //   this.initData()
      if (this.windState === 1) {
        // this.ws.close()
        this.initData()
      // console.log('请求风场图')
      // } else if (this.windState === 2) {
      // this.windDir()
      } else if (this.windState === 2) {
        this.windDir()
      // console.log('请求风向标')
      // }
      }
      // 请求设备坐标
      // this.deviceMaker()
      // this.getParamsData()
@@ -1586,14 +1582,14 @@
          }
          // console.log(this.chooseTimeInfo, 'this.chooseTimeInfo ')
          // clearInterval(this.timer)
          // if (this.windState === 1) {
          if (this.windState === 1) {
          // this.ws.close()
          // this.initData()
            this.initData()
          // console.log('请求风场图')
          // } else if (this.windState === 2) {
          // this.windDir()
          } else if (this.windState === 2) {
            this.windDir()
          // console.log('请求风向标')
          // }
          }
          setTimeout(() => {
            this.change(this.changeColor)
            this.times = 300
@@ -1601,21 +1597,6 @@
        }
      }, 1000)
    },
    findLayer(layerName) { // 根据图层名称查找图层
      if (!this.map) {
        return null
      }
      const gisMap_layers = this.map._layers
      let layer = null
      for (const i in gisMap_layers) {
        if (gisMap_layers[i].options.id === layerName) {
          layer = gisMap_layers[i]
        }
      }
      return layer
    },
    // 初始化地图容器
    initMap() {
      //   console.log('这是index传到map的经纬度')
@@ -1627,11 +1608,7 @@
        center: [this.weiduNew, this.jingduNew],
        zoom: 14,
        zoomControl: false, // 缩放组件
        trackResize: true,
        worldCopyJump: true,
        dragging: true,
        inertia: true,
        attributionControl: true, // 去掉右下角logol
        attributionControl: false, // 去掉右下角logol
        crs: L.CRS.EPSG3857 // 设置坐标类型,EPSG3857伪墨卡托投影,EPSG3395,墨卡托投影坐标 EPSG4326 WGS84
      })
      // 定义图层样式
@@ -1641,26 +1618,11 @@
      // L.tileLayer(
      //   'http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=7&x={x}&y={y}&z={z}'
      // ).addTo(map)
      const that = this
      this.map = map // data上需要挂载
      this.map.on('moveend', function(ev) {
        const res = that.findLayer('wmsid')
        that.map.removeLayer(res)
        that.openWindCanves()
      })
      // this.map.on('viewreset', function() {
      //   console.log('--->viewreset 重绘内容时触发')
      // })
      window.map = map
    },
    // 更改不同的值区间
    change(index) {
      if (this.windState === 1) {
        this.initData()
      } else if (this.windState === 2) {
        this.windDir()
      }
      this.changeColor = index
      var pr = ''
      switch (index) {
@@ -1696,6 +1658,11 @@
      this.sensorKey = pr
      // 请求设备坐标
      // this.toggleWindState()
      if (this.windState === 1) {
        this.initData()
      } else if (this.windState === 2) {
        this.windDir()
      }
    },
    // 请求风场图接口
    initData() {
@@ -1716,11 +1683,11 @@
          }
        })
      }
      this.windData()
      this.deviceMaker()
      //   console.log('请求风场之前')
      // $.ajaxSettings.async = false
      // for (let i = 0; i < this.monitorPointIds.length; i++) {
      this.windData()
      // }
    },
    // 风场图数据
@@ -1735,8 +1702,6 @@
        }
      })
        .then((res) => {
          this.windAllDate = res.data[0]
          this.openWindCanves()
          // console.log('新风场数据')
          // console.log(res)
          // if (res.data[0][0].data.length === 0) {
@@ -1752,17 +1717,8 @@
          // data2[0].header.dy = 0.0018464922
          // data2[1].header.dy = 0.0018464922
          // console.log(data2, 'data2')
          // console.log('风场数据')
          // console.log(res.data[0])
        })
        .catch((err) => {
          console.log(err)
        })
    },
    openWindCanves() {
      var velocityLayer = L.velocityLayer({
        displayValues: true, // 是否显示当前鼠标移动位置,风场信息
        id: 'wmsid',
            displayValues: false, // 是否显示当前鼠标移动位置,风场信息
        displayOptions: {
          // 显示信息配置
          // velocityType: 'Global Wind',
@@ -1770,7 +1726,7 @@
          displayPosition: 'bottomleft',
          displayEmptyString: 'No wind data'
        },
        data: this.windAllDate, // 数据  格式可参照
            data: res.data[0], // 数据  格式可参照
        // data: data2,
        // 以下为控制参数,后面为默认值
        minVelocity: 0, // 粒子最小速度( m/s )
@@ -1793,6 +1749,12 @@
        // colorScale: ['#053F03', '#053F03', '#053F03', '#053F03', '#053F03', '#053F03', '#053F03', '#053F03']
      })
      velocityLayer.addTo(this.map) // 添加到图上
          // console.log('风场数据')
          // console.log(res.data[0])
        })
        .catch((err) => {
          console.log(err)
        })
    },
    // 将页码,及每页显示的条数以参数传递提交给后台
    alertData(n1, n2) {