diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/redlightwarning/RedLightWarningManager.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/redlightwarning/RedLightWarningManager.kt index 24e5e59f6b..1f267f14df 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/redlightwarning/RedLightWarningManager.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/redlightwarning/RedLightWarningManager.kt @@ -111,13 +111,13 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener, when { trafficLightStatus.isRed() -> { Logger.d(TAG, "=====当前为红灯=====") - // 到达路口时红灯还没走完(由于多个数据有偏差,红灯预警延长1s,绿灯提示延长2s,多报出错不如少报且准) + // 到达路口时红灯还没走完(由于多个数据有偏差,红灯预警延长1s,绿灯提示延长3s,多报出错不如少报且准) if (arriveTime <= remainTime + 1) { redLightWarning() - } else if (arriveTime > remainTime + trafficLightResult.flashYellow + 2) {// 到达时红、黄灯都走完 + } else if (arriveTime > remainTime + trafficLightResult.flashYellow + 3) {// 到达时红、黄灯都走完 // 单位Km/h,当前为红灯,推荐速度越慢越容易绿灯通过,且要满足[10,50] val originRemainSpeed = - floor(distance / (remainTime + trafficLightResult.flashYellow + 2) * 3.6).toInt() + floor(distance / (remainTime + trafficLightResult.flashYellow + 3) * 3.6).toInt() when { originRemainSpeed > 50 -> greenLightWarning("10到50") originRemainSpeed in 10..50 -> greenLightWarning("10到$originRemainSpeed") @@ -126,12 +126,12 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener, } trafficLightStatus.isYellow() -> { Logger.d(TAG, "=====当前为黄灯=====") - // 到达路口时黄灯还没走完(由于多个数据有偏差,红灯预警延长1s,绿灯提示延长2s,多报出错不如少报且准) + // 到达路口时黄灯还没走完(由于多个数据有偏差,红灯预警延长1s,绿灯提示延长3s,多报出错不如少报且准) if (arriveTime <= remainTime + 1) { redLightWarning() - } else if (arriveTime > remainTime + 2) { + } else if (arriveTime > remainTime + 3) { // 单位Km/h,当前为黄灯,推荐速度越慢越容易绿灯通过,且要满足[10,50] - val originRemainSpeed = floor(distance / (remainTime + 2) * 3.6).toInt() + val originRemainSpeed = floor(distance / (remainTime + 3) * 3.6).toInt() when { originRemainSpeed > 50 -> greenLightWarning("10到50") originRemainSpeed in 10..50 -> greenLightWarning("10到$originRemainSpeed") @@ -143,9 +143,9 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener, // 到达路口时绿灯已经走完(由于多个数据有偏差,多报出错不如少报且准,绿灯时间减少一点) if (arriveTime >= remainTime - 1) { redLightWarning() - } else if (arriveTime < remainTime - 2) { + } else if (arriveTime < remainTime - 3) { // 单位Km/h,当前为绿灯,推荐速度越快越容易绿灯通过,且要满足[10,50] - val originRemainSpeed = ceil(distance / (remainTime - 2) * 3.6).toInt() + val originRemainSpeed = ceil(distance / (remainTime - 3) * 3.6).toInt() when { originRemainSpeed < 10 -> greenLightWarning("10到50") originRemainSpeed in 10..50 -> greenLightWarning("${originRemainSpeed}到50")