From 1e26fc1ca98b19eaa9813a6ea03a0c65b1ccef39 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Mon, 09 Aug 2021 11:58:35 +0800 Subject: [PATCH] update --- screen-common/src/main/java/com/moral/util/AmendUtils.java | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/screen-common/src/main/java/com/moral/util/AmendUtils.java b/screen-common/src/main/java/com/moral/util/AmendUtils.java index 960de0b..5a0f173 100644 --- a/screen-common/src/main/java/com/moral/util/AmendUtils.java +++ b/screen-common/src/main/java/com/moral/util/AmendUtils.java @@ -161,8 +161,8 @@ } size++; - double sin = windSpeed * Math.sin(windDir / 180d) * Math.PI; - double cos = windSpeed * Math.cos(windDir / 180d) * Math.PI; + double sin = windSpeed * Math.sin(windDir / 180d * Math.PI); + double cos = windSpeed * Math.cos(windDir / 180d * Math.PI); sumSin += sin; sumCos += cos; } @@ -172,12 +172,15 @@ double avgSin = sumSin / size; double avgCos = sumCos / size; + if (avgSin > 0 && avgCos > 0) { avgDir = Math.atan(avgSin / avgCos) * 180 / Math.PI; } else if ((avgSin > 0 && avgCos < 0) || (avgSin < 0 && avgCos < 0)) { avgDir = Math.atan(avgSin / avgCos) * 180 / Math.PI + 180; - } else { + } else if (avgSin < 0 && avgCos > 0) { avgDir = Math.atan(avgSin / avgCos) * 180 / Math.PI + 360; + } else { + avgDir = 0; } double v = sciCal(avgDir, 4); result.put(Constants.SENSOR_CODE_WIND_DIR, v); -- Gitblit v1.8.0