[6.6.2][视角变换] 优化视角切换逻辑

This commit is contained in:
renwj
2024-09-18 11:26:01 +08:00
committed by renwj
parent 2481eb5ef6
commit bdfdacb3ce
6 changed files with 42 additions and 7 deletions

View File

@@ -24,7 +24,7 @@ class CrossRoad(private val delayTime: Long = 0, unit: TimeUnit = TimeUnit.SECON
} }
override fun isCanTouch(): Boolean { override fun isCanTouch(): Boolean {
return false return AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)
} }
override fun isCanSwitch(): Boolean { override fun isCanSwitch(): Boolean {
@@ -38,7 +38,8 @@ class CrossRoad(private val delayTime: Long = 0, unit: TimeUnit = TimeUnit.SECON
override fun getScreenToOriginDis(): ScreenToOriginDis { override fun getScreenToOriginDis(): ScreenToOriginDis {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
return NONE return NONE
} else {
return DOWN
} }
return DOWN
} }
} }

View File

@@ -3,6 +3,7 @@ package com.mogo.eagle.core.function.angle.scenes
import android.util.Log import android.util.Log
import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.map.angle.Scene import com.mogo.eagle.core.function.api.map.angle.Scene
import com.mogo.eagle.core.function.api.map.angle.ScreenToOriginDis
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.map.uicontroller.VisualAngleMode
@@ -15,9 +16,7 @@ import java.util.concurrent.TimeUnit
class Default(val delayTime: Long = 0, val unit: TimeUnit = TimeUnit.SECONDS, val forceClosePrev: Boolean = false): Scene(delayTime, unit) { class Default(val delayTime: Long = 0, val unit: TimeUnit = TimeUnit.SECONDS, val forceClosePrev: Boolean = false): Scene(delayTime, unit) {
override fun getVisualAngleMode(): VisualAngleMode { override fun getVisualAngleMode(): VisualAngleMode {
Log.d("Default", "---- 1 --------------") if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
Log.d("Default", "---- 2 --------------")
return VisualAngleMode.MAP_STYLE_VR_ERHAI_B2 return VisualAngleMode.MAP_STYLE_VR_ERHAI_B2
} }
return CallerMapUIServiceManager.getMapUIController()?.getVrAngleDefaultMode() ?: MODE_MEDIUM_SIGHT return CallerMapUIServiceManager.getMapUIController()?.getVrAngleDefaultMode() ?: MODE_MEDIUM_SIGHT
@@ -26,4 +25,11 @@ class Default(val delayTime: Long = 0, val unit: TimeUnit = TimeUnit.SECONDS, va
override fun toString(): String { override fun toString(): String {
return "Default(delay=${getDelay()}, unit=$unit, angle=${getVisualAngleMode()}, priority=${getPriority()}, closePrevious=$forceClosePrev)" return "Default(delay=${getDelay()}, unit=$unit, angle=${getVisualAngleMode()}, priority=${getPriority()}, closePrevious=$forceClosePrev)"
} }
override fun getScreenToOriginDis(): ScreenToOriginDis {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
return ScreenToOriginDis.NONE
}
return ScreenToOriginDis.DEFAULT
}
} }

View File

@@ -1,6 +1,9 @@
package com.mogo.eagle.core.function.angle.scenes package com.mogo.eagle.core.function.angle.scenes
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.map.angle.Scene import com.mogo.eagle.core.function.api.map.angle.Scene
import com.mogo.eagle.core.function.api.map.angle.ScreenToOriginDis
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.map.uicontroller.VisualAngleMode
import com.mogo.map.uicontroller.VisualAngleMode.MODE_LONG_SIGHT import com.mogo.map.uicontroller.VisualAngleMode.MODE_LONG_SIGHT
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
@@ -14,4 +17,11 @@ class LongSight(private val delayTime: Long = 0, private val unit: TimeUnit = Ti
override fun toString(): String { override fun toString(): String {
return "LongSight(delayTime=${delayTime}, priority=${getPriority()}, displayThreshold: ${getDisplayThreshold()}, priority=${getPriority()})" return "LongSight(delayTime=${delayTime}, priority=${getPriority()}, displayThreshold: ${getDisplayThreshold()}, priority=${getPriority()})"
} }
override fun getScreenToOriginDis(): ScreenToOriginDis {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
return ScreenToOriginDis.NONE
}
return ScreenToOriginDis.DEFAULT
}
} }

View File

@@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.angle.scenes
import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.map.angle.Scene import com.mogo.eagle.core.function.api.map.angle.Scene
import com.mogo.eagle.core.function.api.map.angle.ScreenToOriginDis
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.map.uicontroller.VisualAngleMode
@@ -24,4 +25,11 @@ class RoadEvent(delayTime: Long, unit: TimeUnit): Scene(delayTime, unit) {
override fun toString(): String { override fun toString(): String {
return "RoadEvent(mode: ${getVisualAngleMode()}, priority=${getPriority()}, displayThreshold: ${getDisplayThreshold()}," return "RoadEvent(mode: ${getVisualAngleMode()}, priority=${getPriority()}, displayThreshold: ${getDisplayThreshold()},"
} }
override fun getScreenToOriginDis(): ScreenToOriginDis {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
return ScreenToOriginDis.NONE
}
return ScreenToOriginDis.DEFAULT
}
} }

View File

@@ -1,6 +1,9 @@
package com.mogo.eagle.core.function.angle.scenes package com.mogo.eagle.core.function.angle.scenes
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.map.angle.Scene import com.mogo.eagle.core.function.api.map.angle.Scene
import com.mogo.eagle.core.function.api.map.angle.ScreenToOriginDis
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.map.uicontroller.VisualAngleMode
import com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ROMA import com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ROMA
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
@@ -25,4 +28,11 @@ class Roma(val delayTime: Long = 2, val unit: TimeUnit = TimeUnit.SECONDS): Scen
override fun getPriority(): Int { override fun getPriority(): Int {
return 1 return 1
} }
override fun getScreenToOriginDis(): ScreenToOriginDis {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
return ScreenToOriginDis.NONE
}
return ScreenToOriginDis.DEFAULT
}
} }

View File

@@ -1,6 +1,6 @@
package com.mogo.eagle.core.function.api.map.angle package com.mogo.eagle.core.function.api.map.angle
import com.mogo.eagle.core.function.api.map.angle.ScreenToOriginDis.DEFAULT import com.mogo.eagle.core.function.api.map.angle.ScreenToOriginDis.NONE
import com.mogo.map.uicontroller.* import com.mogo.map.uicontroller.*
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
@@ -58,6 +58,6 @@ abstract class Scene(private val delay: Long, private val unit: TimeUnit = TimeU
* 3. [ScreenToOriginDis.UP]: 偏上 * 3. [ScreenToOriginDis.UP]: 偏上
* 4. [ScreenToOriginDis.DOWN]: 偏下 * 4. [ScreenToOriginDis.DOWN]: 偏下
*/ */
open fun getScreenToOriginDis(): ScreenToOriginDis = DEFAULT open fun getScreenToOriginDis(): ScreenToOriginDis = NONE
} }