From 5b0d58c3f7f35f61c0a0437bac3ff708db57fe61 Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期四, 18 七月 2024 17:34:16 +0800 Subject: [PATCH] 1. 修正实时走航数据平滑处理算法,PM2.5、PM10、VOC采用新的修正算法 --- src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 50 insertions(+), 0 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 572420e..5ae4e9f 100644 --- a/src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt +++ b/src/main/kotlin/com/flightfeather/uav/socket/eunm/FactorType.kt @@ -1,5 +1,7 @@ package com.flightfeather.uav.socket.eunm +import com.flightfeather.uav.biz.dataanalysis.BaseExceptionAnalysis + /** * @author riku * Date: 2020/6/10 @@ -26,7 +28,23 @@ companion object { + /** + * 閫氳繃绱㈠紩鑾峰彇鏋氫妇绫诲瀷锛岀敤浜庢暟鎹垎鏋� + * @see [BaseExceptionAnalysis] + */ fun getByIndex(index: Int): FactorType? = when (index) { + 0 -> NO2 + 1 -> CO + 2 -> H2S + 3 -> SO2 + 4 -> O3 + 5 -> PM25 + 6 -> PM10 + 7 -> VOC + else -> null + } + + fun getByValue(value: Int): FactorType? = when (value) { NO2.value -> NO2 CO.value -> CO H2S.value -> H2S @@ -133,5 +151,37 @@ HEIGHT -> 0.0 else -> null } + + fun getMultiplier(name: String?): Double { + getByName(name)?.let { + return getMultiplier(it) + } + return 10.0 + } + + fun getMultiplier(type: FactorType): Double = when (type) { + PM25 -> 20.0 + PM10 -> 20.0 + VOC -> 10.0 + else -> 10.0 + } + + 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