[6.5.0] 修复遮盖问题,修复路口可能提前删除marker问题“
This commit is contained in:
@@ -148,6 +148,7 @@
|
||||
app:layout_constraintTop_toBottomOf="@+id/viewLimitingVelocity"
|
||||
app:layout_goneMarginEnd="40dp"
|
||||
app:layout_goneMarginTop="@dimen/dp_236" />
|
||||
|
||||
<!-- 前方路况探查 -->
|
||||
<com.mogo.eagle.core.function.view.RoadCrossRoamView
|
||||
android:layout_width="@dimen/dp_600"
|
||||
|
||||
@@ -194,9 +194,10 @@
|
||||
|
||||
<!-- 前方路况探查 -->
|
||||
<com.mogo.eagle.core.function.view.RoadCrossRoamView
|
||||
android:layout_width="@dimen/dp_670"
|
||||
android:layout_height="@dimen/dp_790"
|
||||
android:layout_marginTop="@dimen/dp_482"
|
||||
android:layout_width="@dimen/dp_660"
|
||||
android:layout_height="@dimen/dp_820"
|
||||
android:layout_marginTop="@dimen/dp_540"
|
||||
android:layout_marginEnd="@dimen/dp_10"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
@@ -227,9 +228,10 @@
|
||||
|
||||
<!-- 地图marker点击触发路侧直播 -->
|
||||
<com.mogo.eagle.core.function.hmi.ui.camera.RoadCrossLiveView
|
||||
android:layout_width="@dimen/dp_650"
|
||||
android:layout_width="@dimen/dp_660"
|
||||
android:layout_height="@dimen/dp_480"
|
||||
android:layout_marginTop="@dimen/dp_430"
|
||||
android:layout_marginTop="@dimen/dp_400"
|
||||
android:layout_marginEnd="@dimen/dp_10"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
@@ -134,6 +134,7 @@ class RoadCrossLiveView @JvmOverloads constructor(
|
||||
CallerLogger.w("$M_HMI$TAG", "播放视频异常,当前播放设备与上次相同,ip:${info.ip}")
|
||||
return
|
||||
}
|
||||
bringToFront()
|
||||
curLiveDevice = info.ip
|
||||
ThreadUtils.runOnUiThread {
|
||||
HmiActionLog.hmiAction("触发marker点击,播放路侧视频流", info.toString())
|
||||
|
||||
@@ -17,6 +17,7 @@ import mogo.telematics.pad.MessagePad.TrackedSource
|
||||
object TrackerSourceFilterHelper {
|
||||
|
||||
private const val TAG = "TrackerSourceColor"
|
||||
private const val ZOMBIE_TAG = "zombie"
|
||||
private val cacheZombieMap = mutableMapOf<String, Point.Options>()
|
||||
|
||||
@SuppressLint("NewApi")
|
||||
@@ -139,13 +140,13 @@ object TrackerSourceFilterHelper {
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK.type -> 0.19f
|
||||
else -> 0.2f
|
||||
}
|
||||
val opt = Point.Options.Builder(TAG, Level.DEFAULT)
|
||||
.setId("9999" + data.uuid.toString())
|
||||
val opt = Point.Options.Builder(TAG, Level.MAP_MARKER)
|
||||
.setId("$ZOMBIE_TAG${data.uuid}")
|
||||
.latitude(data.latitude)
|
||||
.longitude(data.longitude)
|
||||
.isUseGps(true)
|
||||
.rotate(data.heading.toFloat())
|
||||
.icon3DRes(R.raw.yujingguangquan)
|
||||
.icon3DRes(R.raw.testguangquan)
|
||||
.scale(scale)
|
||||
.set3DMode(true)
|
||||
.build()
|
||||
@@ -154,7 +155,7 @@ object TrackerSourceFilterHelper {
|
||||
}
|
||||
|
||||
fun removeBottomMarker(id: String){
|
||||
CallerMapUIServiceManager.getOverlayManager()?.removePoint("9999$id")
|
||||
CallerMapUIServiceManager.getOverlayManager()?.removePoint("$ZOMBIE_TAG$id")
|
||||
cacheZombieMap.remove(id)
|
||||
}
|
||||
|
||||
|
||||
@@ -70,6 +70,12 @@ class RoadCrossCameraManager : IMoGoMapRoadListener {
|
||||
"$M_MAP$TAG",
|
||||
"触发接口调用 dis: $distance , roadCrossEnd: ${roadCrossEnd ?: "null"} "
|
||||
)
|
||||
if(roadCrossEnd == null){
|
||||
roadCrossTrace(
|
||||
TAG, mapOf("errorMsg" to "触发接口调用,roadCrossEnd获取为null",)
|
||||
)
|
||||
}
|
||||
|
||||
if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){
|
||||
AIAssist.getInstance(mContext).speakTTSVoice("蘑菇检测到前方${distance.toInt()}米您将通过路口,已为您切换展示路口全息影像")
|
||||
}
|
||||
@@ -155,15 +161,16 @@ class RoadCrossCameraManager : IMoGoMapRoadListener {
|
||||
override fun onRoadChange(cross: Boolean, roadCross: RoadCross?) {
|
||||
super.onRoadChange(cross, roadCross)
|
||||
// 出路口
|
||||
if(!isCameraRequest){
|
||||
CallerLogger.d("$M_MAP$TAG", "未触发路口获取marker")
|
||||
return
|
||||
}
|
||||
if (!cross) {
|
||||
// 停止请求摄像头数据
|
||||
ndeRoadCameraNetWorkModel.cancelRequest("roadCross")
|
||||
// 清除marker
|
||||
CallerLogger.d("$M_MAP$TAG", "remove marker")
|
||||
if(handler.hasMessages(REQUEST_CAMERA_MSG)){
|
||||
handler.removeMessages(REQUEST_CAMERA_MSG)
|
||||
handler.sendEmptyMessageDelayed(REQUEST_CAMERA_MSG, REMOVE_MARKER_DELAY_TIME)
|
||||
}
|
||||
handler.sendEmptyMessageDelayed(REQUEST_CAMERA_MSG, REMOVE_MARKER_DELAY_TIME)
|
||||
// 释放控制
|
||||
isCameraRequest = false
|
||||
CallerLogger.d("$M_MAP$TAG", "经过路口,释放控制")
|
||||
@@ -191,6 +198,6 @@ class RoadCrossCameraManager : IMoGoMapRoadListener {
|
||||
paramIndexes = [0]
|
||||
)
|
||||
private fun roadCrossTrace(tag: String, paramMap: Any) {
|
||||
|
||||
CallerLogger.d("$M_MAP$tag", "$paramMap")
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant
|
||||
import com.mogo.eagle.core.function.api.map.road.IMoGoMapRoadListener
|
||||
import com.mogo.eagle.core.function.api.map.roma.IMoGoAiCloudIdentifyDataListener
|
||||
@@ -12,6 +13,7 @@ import com.mogo.eagle.core.function.business.identify.MapIdentifySubscriber
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapAiCloudDataManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MAP
|
||||
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
|
||||
@@ -62,7 +64,13 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context
|
||||
@SuppressLint("ObsoleteSdkInt")
|
||||
override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) {
|
||||
super.onSizeChanged(w, h, oldw, oldh)
|
||||
this.outlineProvider = TextureVideoViewOutlineProvider(12f)
|
||||
var size = 12f
|
||||
if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
|
||||
size = 16f
|
||||
} else if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
size = 12f
|
||||
}
|
||||
this.outlineProvider = TextureVideoViewOutlineProvider(size)
|
||||
this.clipToOutline = true
|
||||
}
|
||||
|
||||
@@ -84,13 +92,16 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context
|
||||
val dis =
|
||||
CoordinateUtils.calculateLineDistance(curLat, curLng, latLng.first, latLng.second)
|
||||
// 开始漫游
|
||||
trace(TAG, mapOf("startRoadRoam" to Pair("latLng" to latLng, "dis" to dis), "dis" to dis))
|
||||
trace(
|
||||
TAG,
|
||||
mapOf("startRoadRoam" to Pair("latLng" to latLng, "dis" to dis), "dis" to dis)
|
||||
)
|
||||
aiCloudIdentifyDataManager.trigger(true, 1, 300, latLng.first, latLng.second)
|
||||
}
|
||||
}
|
||||
|
||||
override fun response(requestStatus: Boolean, errorMsg: String?) {
|
||||
trace(TAG, mapOf("response" to requestStatus, "errorMsg" to (errorMsg?:"")))
|
||||
trace(TAG, mapOf("response" to requestStatus, "errorMsg" to (errorMsg ?: "")))
|
||||
}
|
||||
|
||||
override fun onAiIdentifyData(obj: SocketDownData.SocketDownDataProto?) {
|
||||
|
||||
@@ -134,6 +134,7 @@ class RoadCrossRoamView @JvmOverloads constructor(
|
||||
}
|
||||
return
|
||||
}
|
||||
bringToFront()
|
||||
CallerMapIdentifyManager.roam = Pair(TAG, true)
|
||||
this.visibility = View.VISIBLE
|
||||
ivZhiRoadRoamView.visibility = View.VISIBLE
|
||||
|
||||
Reference in New Issue
Block a user