[6.5.0] 修复遮盖问题,修复路口可能提前删除marker问题“

This commit is contained in:
EmArrow
2024-07-10 19:25:41 +08:00
parent 86fcef0531
commit 70f2cdc19b
7 changed files with 41 additions and 17 deletions

View File

@@ -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)
}

View File

@@ -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")
}
}

View File

@@ -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?) {

View File

@@ -134,6 +134,7 @@ class RoadCrossRoamView @JvmOverloads constructor(
}
return
}
bringToFront()
CallerMapIdentifyManager.roam = Pair(TAG, true)
this.visibility = View.VISIBLE
ivZhiRoadRoamView.visibility = View.VISIBLE