| | |
| | | import { Legend } from './Legend'; |
| | | |
| | | const _hMap = { |
| | | 19: [0, 1000], //NO |
| | | 1: [0, 1000], //NO2 |
| | | 2: [0, 2000], //CO |
| | | 3: [0, 1000], //H2S |
| | |
| | | /** |
| | | * 监测因子类 |
| | | * 存储某一类型的监测因子数据,提供3d地图绘制高度换算,绘图范围设定等功能 |
| | | * 用于3d地图绘制 |
| | | */ |
| | | function Factor(options) { |
| | | /** |
| | |
| | | if (d1 == undefined || d2 == undefined) { |
| | | return; |
| | | } |
| | | let diffValue = d2.factorData - d1.factorData; |
| | | // 对于风向矢量来说,动画的变化应该从两个风向夹角较小的那一侧进行变化 |
| | | if (this.factorName == 'WIND_DIRECTION') { |
| | | // 风向角度差 |
| | | if (diffValue > 180) { |
| | | diffValue -= 360; |
| | | } else if (diffValue < -180) { |
| | | diffValue += 360; |
| | | } |
| | | } |
| | | // 单帧数据值的差值 |
| | | var dValue = { |
| | | factorData: (d2.factorData - d1.factorData) / count, |
| | | physicalQuantity: (d2.physicalQuantity - d2.physicalQuantity) / count |
| | | const dValue = { |
| | | factorData: diffValue / count |
| | | // physicalQuantity: (d2.physicalQuantity - d2.physicalQuantity) / count |
| | | }; |
| | | |
| | | // 风向矢量修正 |
| | | const correct = (v) => { |
| | | if (this.factorName == 'WIND_DIRECTION') { |
| | | if (v < 0) { |
| | | return 360 + v; |
| | | } else if (v > 360) { |
| | | return v - 360; |
| | | } else { |
| | | return v; |
| | | } |
| | | } else { |
| | | return v; |
| | | } |
| | | }; |
| | | for (let i = 0; i < count - 1; i++) { |
| | | var _data = { |
| | | factorData: d1.factorData + dValue.factorData * (i + 1), |
| | | factorData: correct(d1.factorData + dValue.factorData * (i + 1)), |
| | | factorId: d1.factorId, |
| | | factorName: d1.factorName, |
| | | physicalQuantity: |
| | | d1.physicalQuantity + dValue.physicalQuantity * (i + 1), |
| | | // physicalQuantity: |
| | | // d1.physicalQuantity + dValue.physicalQuantity * (i + 1), |
| | | sensorId: d1.sensorId, |
| | | statusList: d1.statusList |
| | | }; |
| | | if (!isDraw) { |
| | | _data.factorData = -1; |
| | | _data.physicalQuantity = -1; |
| | | // _data.physicalQuantity = -1; |
| | | } |
| | | this.datas.push(_data); |
| | | } |