[3.4.0][视角] 优化远景视角旋转动画;将到路口触发近景视角逻辑加回来

This commit is contained in:
renwj
2023-07-14 12:01:21 +08:00
parent e210a10d96
commit 1e192b633a
3 changed files with 98 additions and 10 deletions

View File

@@ -11,9 +11,11 @@ import com.mogo.eagle.core.function.api.datacenter.obu.IMoGoObuWarningMapListene
import com.mogo.eagle.core.function.api.datacenter.obu.IMoGoObuWarningRsiListener
import com.mogo.eagle.core.function.api.datacenter.obu.IMoGoObuWarningRsmListener
import com.mogo.eagle.core.function.api.datacenter.obu.IMoGoObuWarningSpatListener
import com.mogo.eagle.core.function.api.hmi.warning.*
import com.mogo.eagle.core.function.api.map.angle.*
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.function.call.map.*
import com.mogo.eagle.core.function.call.obu.*
import com.mogo.eagle.core.function.call.v2x.CallerLimitingVelocityListenerManager
import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager
@@ -397,7 +399,17 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener
return
}
saveObuToDcData(v2xType, alertContent, ttsContent)
showWarning(v2xType, alertContent, ttsContent, direction)
showWarning(v2xType, alertContent, ttsContent, direction, object : IMoGoWarningStatusListener {
override fun onShow() {
CallerVisualAngleManager.changeAngle(CrossRoad(true))
}
override fun onDismiss() {
super.onDismiss()
CallerVisualAngleManager.changeAngle(CrossRoad(false))
}
})
}
MogoObuShowConstants.STATUS.UPDATE -> {// 更新
@@ -680,9 +692,10 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener
type: String,
content: String,
tts: String,
direction: WarningDirectionEnum
direction: WarningDirectionEnum,
listener: IMoGoWarningStatusListener? = null
) {
CallerHmiManager.warningV2X(type, content, tts, null, direction, isFromObu = true)
CallerHmiManager.warningV2X(type, content, tts, listener, direction, isFromObu = true)
}
}

View File

@@ -7,6 +7,7 @@ import com.mogo.eagle.core.data.config.HmiBuildConfig
import com.mogo.eagle.core.data.enums.*
import com.mogo.eagle.core.data.obu.MogoObuConst
import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener
import com.mogo.eagle.core.function.api.map.angle.*
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
@@ -801,7 +802,6 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
var alertContent = ""
var ttsContent = ""
var v2xType = appId
var changeVisualAngle = false
when (appId) {
//前向碰撞预警
MogoObuShowConstants.V2X_WARNING_TYPE.FCW.toString() -> {
@@ -847,7 +847,6 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
direction == WarningDirectionEnum.ALERT_WARNING_TOP_LEFT ||
direction == WarningDirectionEnum.ALERT_WARNING_BOTTOM_LEFT
) { //左后
changeVisualAngle = true
ttsContent = String.format(ttsContent, "")
alertContent = String.format(alertContent, "")
} else if (
@@ -855,7 +854,6 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
direction == WarningDirectionEnum.ALERT_WARNING_TOP_RIGHT ||
direction == WarningDirectionEnum.ALERT_WARNING_BOTTOM_RIGHT
) { //右后
changeVisualAngle = true
ttsContent = String.format(ttsContent, "")
alertContent = String.format(alertContent, "")
}
@@ -947,7 +945,21 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
CallerHmiManager.warningV2X(v2xType,
alertContent,
ttsContent,// 只有第一次才tts防止更新的时候不断的提醒
null,
object : IMoGoWarningStatusListener {
override fun onShow() {
if (appId == MogoObuShowConstants.V2X_WARNING_TYPE.BSW.toString()) {
//盲区预警,展示近视角
CallerVisualAngleManager.changeAngle(CrossRoad(true))
}
}
override fun onDismiss() {
if (appId == MogoObuShowConstants.V2X_WARNING_TYPE.BSW.toString()) {
//盲区预警,取消近视角
CallerVisualAngleManager.changeAngle(CrossRoad(false))
}
}
},
direction,
isFromObu = true
)