From 316bb4380e276a0b9e2745ad126a5c6c0e4b221d Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期一, 22 十一月 2021 13:28:18 +0800
Subject: [PATCH] 2021.11.22
---
src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt | 122 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 118 insertions(+), 4 deletions(-)
diff --git a/src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt b/src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt
index da16a68..81c0d6f 100644
--- a/src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt
+++ b/src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt
@@ -14,10 +14,15 @@
PM10(7, "PM10",3),
TEMPERATURE(8,"TEMPERATURE",3),
HUMIDITY(9, "HUMIDITY",3),
- VOC(10, "VOC",3),
- NOI(11, "NOI",3),//璐熸哀绂诲瓙
- LNG(12,"LNG",3),//缁忓害
- LAT(13,"LAT",3);//绾害
+ VOC(10, "VOC",6),
+ NOI(11, "NOI",6),//璐熸哀绂诲瓙
+ LNG(12,"LNG",6),//缁忓害
+ LAT(13,"LAT",5),//绾害
+ VELOCITY(14, "VELOCITY", 3),//閫熷害
+ TIME(15, "TIME", 6),//鏃堕棿
+ WIND_SPEED(16, "WIND_SPEED", 3),
+ WIND_DIRECTION(17, "WIND_DIRECTION", 2),
+ HEIGHT(18, "HEIGHT", 3);
companion object {
@@ -35,7 +40,116 @@
NOI.value -> NOI
LNG.value -> LNG
LAT.value -> LAT
+ VELOCITY.value -> VELOCITY
+ TIME.value -> TIME
+ WIND_SPEED.value -> WIND_SPEED
+ WIND_DIRECTION.value -> WIND_DIRECTION
+ HEIGHT.value -> HEIGHT
else -> null
}
+
+ fun getByName(name: String?): FactorType? = when (name) {
+ NO2.des -> NO2
+ CO.des -> CO
+ H2S.des -> H2S
+ SO2.des -> SO2
+ O3.des -> O3
+ PM25.des -> PM25
+ PM10.des -> PM10
+ TEMPERATURE.des -> TEMPERATURE
+ HUMIDITY.des -> HUMIDITY
+ VOC.des -> VOC
+ NOI.des -> NOI
+ LNG.des -> LNG
+ LAT.des -> LAT
+ VELOCITY.des -> VELOCITY
+ TIME.des -> TIME
+ WIND_SPEED.des -> WIND_SPEED
+ WIND_DIRECTION.des -> WIND_DIRECTION
+ HEIGHT.des -> HEIGHT
+ else -> null
+ }
+
+ fun getRange(name: String?): Pair<Double, Double>? {
+ getByName(name)?.let {
+ return getRange(it)
+ }
+ return null
+ }
+
+ /**
+ * 鑾峰彇鐩戞祴鍥犲瓙鐨勫悎鐞嗚寖鍥�
+ */
+ fun getRange(type: FactorType): Pair<Double, Double>? = when (type) {
+ NO2 -> Pair(0.1, 1000.0)
+ CO -> Pair(1.0, 5000.0)
+ H2S -> Pair(0.1, 1000.0)
+ SO2 -> Pair(0.1, 1000.0)
+ O3 -> Pair(0.1, 2000.0)
+ PM25 -> Pair(0.1, 5000.0)
+ PM10 -> Pair(0.1, 10000.0)
+ TEMPERATURE -> Pair(-20.0, 70.0)
+ HUMIDITY -> Pair(0.0, 110.0)
+ VOC -> Pair(1.0, 5000.0)
+ NOI -> Pair(0.1, 1000.0)
+ LNG -> Pair(0.0, 180.0)
+ LAT -> Pair(0.0, 90.0)
+ VELOCITY -> Pair(0.0, 500.0)
+ TIME -> null
+ WIND_SPEED -> Pair(0.0, 100.0)
+ WIND_DIRECTION -> Pair(0.0, 360.0)
+ HEIGHT -> Pair(0.0, 1000.0)
+ else -> null
+ }
+
+ fun getVMax(name: String?): Double? {
+ getByName(name)?.let {
+ return getVMax(it)
+ }
+ return null
+ }
+
+ /**
+ * 涓嶅鐞嗕綆浜庢鍊肩殑鍊�
+ */
+ fun getVMax(type: FactorType): Double? = when (type) {
+ NO2 -> 10.0
+ CO -> 100.0
+ H2S -> 10.0
+ SO2 -> 10.0
+ O3 -> 10.0
+ PM25 -> 10.0
+ PM10 -> 10.0
+ TEMPERATURE -> 10.0
+ HUMIDITY -> 10.0
+ VOC -> 10.0
+ NOI -> 10.0
+ LNG -> 0.0
+ LAT -> 0.0
+ VELOCITY -> 0.0
+ TIME -> 0.0
+ WIND_SPEED -> 2.0
+ WIND_DIRECTION -> 0.0
+ HEIGHT -> 0.0
+ else -> null
+ }
+
+ fun outputFactor(factorName: String?): Boolean {
+ return when (factorName) {
+ NO2.des,
+ CO.des,
+ H2S.des,
+ SO2.des,
+ O3.des,
+ PM25.des,
+ PM10.des,
+ TEMPERATURE.des,
+ HUMIDITY.des,
+ VOC.des,
+ WIND_SPEED.des,
+ WIND_DIRECTION.des -> true
+ else -> false
+ }
+ }
}
}
\ No newline at end of file
--
Gitblit v1.9.3