[6.5.0]fix bug of rombie and wait to replace iconres , and add func of identify remove when 1000 delay has no data , plus trace log and bug ,which has java contain the pb
This commit is contained in:
@@ -3,7 +3,6 @@ package com.mogo.eagle.core.function.business.ai
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.os.Message
|
||||
import android.util.Log
|
||||
import com.mogo.commons.debug.DebugConfig
|
||||
import com.mogo.commons.module.status.MogoStatusManager
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
@@ -18,6 +17,7 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_RO
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_MAP_READY_START
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_MAP_START
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_RANGE
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REJECT
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REQUEST
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REQUEST_DELAY
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ROMA_REQUEST_ERROR
|
||||
@@ -122,7 +122,12 @@ class RomaManager() : IMoGoPlanningRottingListener,
|
||||
&& CallerMapIdentifyManager.roam.first!= TAG
|
||||
&& CallerMapIdentifyManager.roam.second) {
|
||||
ToastUtils.showLong("正在展示路口漫游,请稍后重试")
|
||||
Log.e("emArrow", "正在展示路口漫游,请稍后重试")
|
||||
MapRomaTrace.log(
|
||||
"",
|
||||
CHAIN_CODE_ROMA_REJECT,
|
||||
TAG,
|
||||
mutableMapOf("reject" to "正在展示路口,点触漫游按钮")
|
||||
)
|
||||
CallerMapRomaListener.invokeMapRoma(false)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.mogo.eagle.core.function.business.identify
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.util.Log
|
||||
import com.mogo.commons.module.status.MogoStatusManager
|
||||
import com.mogo.eagle.core.data.traffic.TrafficData
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.mogo.map.identify.MogoIdentifyManager
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import mogo.telematics.pad.MessagePad.TrackedObject
|
||||
@@ -38,6 +42,7 @@ class IdentifyBeautifyDataDrawer : Identify {
|
||||
|
||||
//清除缓存
|
||||
TrackManager.getInstance().clearCache(resultList)
|
||||
|
||||
val filterList = TrackManager.getInstance().filterTrafficData(resultList)
|
||||
if (filterList.size > 0) {
|
||||
// 绘制新数据
|
||||
|
||||
@@ -12,15 +12,16 @@ import com.mogo.eagle.core.function.call.obu.CallerObuWarningListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isTaxi
|
||||
import com.mogo.eagle.core.utilcode.mogo.thread.WorkThreadHandler
|
||||
import com.mogo.eagle.core.utilcode.util.ParseVersionUtils
|
||||
import com.mogo.map.MogoMap
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import mogo.telematics.pad.MessagePad.TrackedObject
|
||||
import mogo.yycp.api.proto.SocketDownData
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConfigListener {
|
||||
|
||||
private const val TAG = "IdentifyFactory"
|
||||
private const val MSG_CHECK = 999
|
||||
|
||||
object DriverIdentify {
|
||||
internal val originDataDrawer = IdentifyOriginDataDrawer()
|
||||
@@ -36,13 +37,15 @@ object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConf
|
||||
|
||||
private var identify: Identify? = null
|
||||
private var aiCloudIdentify: Identify? = null
|
||||
private var startTime: Long = 0L
|
||||
|
||||
fun initType(){
|
||||
fun initType() {
|
||||
drawType("默认开启感知优化,等待docker版本")
|
||||
identify = UserIdentify.beautifyDataDrawer
|
||||
aiCloudIdentify = AiIdentify.aiCloudDataDrawer
|
||||
CallerAutopilotCarConfigListenerManager.addListener(TAG, this)
|
||||
CallerObuWarningListenerManager.addListener(TAG, this)
|
||||
mDrawerHandler.sendEmptyMessageDelayed(MSG_CHECK, 1000L)
|
||||
}
|
||||
|
||||
override fun onAutopilotCarConfig(carConfigResp: MessagePad.CarConfigResp) {
|
||||
@@ -105,34 +108,57 @@ object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConf
|
||||
}
|
||||
}
|
||||
when (msg.what) {
|
||||
MSG_CHECK -> {
|
||||
if(startTime == 0L){
|
||||
sendEmptyMessageDelayed(MSG_CHECK, 1000L)
|
||||
return
|
||||
}
|
||||
val endTime = System.nanoTime()
|
||||
val internal = TimeUnit.NANOSECONDS.toMillis(endTime - startTime)
|
||||
if(internal >= 1000){
|
||||
identify!!.clearOldMarker()
|
||||
}
|
||||
sendEmptyMessageDelayed(MSG_CHECK, 1000L)
|
||||
}
|
||||
|
||||
MSG_DATA_TRACK -> {
|
||||
if (msg.obj is List<*>) {
|
||||
identify!!.renderAdasRecognizedResult(msg.obj as List<TrackedObject>?)
|
||||
startTime = System.nanoTime()
|
||||
}
|
||||
}
|
||||
|
||||
MSG_DATA_AI_TRACK -> {
|
||||
if (msg.obj is List<*>) {
|
||||
aiCloudIdentify!!.renderAiCloudResult(msg.obj as List<SocketDownData.CloudRoadDataProto>, msg.data.getString("mapInstance")!!)
|
||||
aiCloudIdentify!!.renderAiCloudResult(
|
||||
msg.obj as List<SocketDownData.CloudRoadDataProto>,
|
||||
msg.data.getString("mapInstance")!!
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
MSG_DATA_WARNING -> {
|
||||
if (msg.obj is List<*>) {
|
||||
identify!!.renderPlanningWarningObj(msg.obj as List<MessagePad.PlanningObject>?)
|
||||
}
|
||||
}
|
||||
|
||||
MSG_DATA_OBU_WARNING_UPDATE -> {
|
||||
if (msg.obj is TrafficData) {
|
||||
identify!!.renderOBUWarningObj(true, msg.obj as TrafficData)
|
||||
}
|
||||
}
|
||||
|
||||
MSG_DATA_OBU_WARNING_REMOVE -> {
|
||||
if (msg.obj is TrafficData) {
|
||||
identify!!.renderOBUWarningObj(false, msg.obj as TrafficData)
|
||||
}
|
||||
}
|
||||
|
||||
MSG_DATA_CLEAR -> {
|
||||
identify!!.clearOldMarker()
|
||||
}
|
||||
|
||||
MSG_DATA_AI_CLEAR -> {
|
||||
aiCloudIdentify!!.clearAiMarker(msg.data.getString("mapInstance")!!)
|
||||
}
|
||||
@@ -147,11 +173,14 @@ object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConf
|
||||
mDrawerHandler.sendMessage(message)
|
||||
}
|
||||
|
||||
override fun renderAiCloudResult(resultList: List<SocketDownData.CloudRoadDataProto>, mapInstance:String) {
|
||||
override fun renderAiCloudResult(
|
||||
resultList: List<SocketDownData.CloudRoadDataProto>,
|
||||
mapInstance: String
|
||||
) {
|
||||
val message = Message.obtain()
|
||||
message.what = MSG_DATA_AI_TRACK
|
||||
message.obj = resultList
|
||||
message.data.putString("mapInstance",mapInstance)
|
||||
message.data.putString("mapInstance", mapInstance)
|
||||
mDrawerHandler.sendMessage(message)
|
||||
}
|
||||
|
||||
@@ -168,10 +197,10 @@ object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConf
|
||||
mDrawerHandler.sendMessage(message)
|
||||
}
|
||||
|
||||
override fun clearAiMarker(mapInstance:String) {
|
||||
override fun clearAiMarker(mapInstance: String) {
|
||||
val message = Message.obtain()
|
||||
message.what = MSG_DATA_AI_CLEAR
|
||||
message.data.putString("mapInstance",mapInstance)
|
||||
message.data.putString("mapInstance", mapInstance)
|
||||
mDrawerHandler.sendMessage(message)
|
||||
}
|
||||
|
||||
|
||||
@@ -76,6 +76,7 @@ class IdentifyOriginDataDrawer : Identify {
|
||||
mMarkersCaches.remove(key)
|
||||
MogoIdentifyManager.getInstance()
|
||||
.removeMarker(key)
|
||||
TrackerSourceFilterHelper.removeBottomMarker(key)
|
||||
}
|
||||
|
||||
val filterList = filterTrafficData(resultList)
|
||||
@@ -109,6 +110,7 @@ class IdentifyOriginDataDrawer : Identify {
|
||||
mFilterTrafficData[uuid] = temp
|
||||
mMarkersCaches[uuid] = temp
|
||||
trafficDataUuidList.add(uuid)
|
||||
TrackerSourceFilterHelper.filterZombieMarker(data)
|
||||
}
|
||||
return mFilterTrafficData
|
||||
}
|
||||
@@ -121,6 +123,7 @@ class IdentifyOriginDataDrawer : Identify {
|
||||
for (uuid in trafficDataUuidList) {
|
||||
MogoIdentifyManager.getInstance()
|
||||
.removeMarker(uuid)
|
||||
TrackerSourceFilterHelper.removeBottomMarker(uuid)
|
||||
}
|
||||
trafficDataUuidList.clear()
|
||||
mMarkersCaches.clear()
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.mogo.eagle.core.function.business.identify;
|
||||
|
||||
import static com.mogo.map.MogoMap.DEFAULT;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.util.ArraySet;
|
||||
|
||||
@@ -9,7 +11,6 @@ import com.mogo.eagle.core.data.enums.TrafficTypeEnum;
|
||||
import com.mogo.eagle.core.data.traffic.TrafficData;
|
||||
import com.mogo.eagle.core.utilcode.geometry.S2CellId;
|
||||
import com.mogo.eagle.core.utilcode.geometry.S2LatLng;
|
||||
import com.mogo.map.MogoMap;
|
||||
import com.mogo.map.identify.MogoIdentifyManager;
|
||||
|
||||
import java.util.HashMap;
|
||||
@@ -124,6 +125,7 @@ public class TrackManager {
|
||||
cellIdCaches.forcePut(uuid, trackObj.getCellIdPos());
|
||||
mMarkersCaches.put(uuid, trackObj);
|
||||
trafficDataUuid.add(uuid);
|
||||
TrackerSourceFilterHelper.INSTANCE.filterZombieMarker(data);
|
||||
}
|
||||
//Log.i("costTime","" + (System.currentTimeMillis() - cost));
|
||||
}
|
||||
@@ -156,7 +158,8 @@ public class TrackManager {
|
||||
mMarkersCaches.remove(key);
|
||||
WarningHelper.INSTANCE.remove(key);
|
||||
MogoIdentifyManager.getInstance()
|
||||
.removeMarker(key, MogoMap.DEFAULT);
|
||||
.removeMarker(key, DEFAULT);
|
||||
TrackerSourceFilterHelper.INSTANCE.removeBottomMarker(key);
|
||||
}
|
||||
|
||||
@SuppressLint("NewApi")
|
||||
@@ -167,7 +170,8 @@ public class TrackManager {
|
||||
mMarkersCaches.forEach((uuid, trackObj) -> {
|
||||
trackObj.clear();
|
||||
MogoIdentifyManager.getInstance()
|
||||
.removeMarker(uuid, MogoMap.DEFAULT);
|
||||
.removeMarker(uuid, DEFAULT);
|
||||
TrackerSourceFilterHelper.INSTANCE.removeBottomMarker(uuid);
|
||||
});
|
||||
mMarkersCaches.clear();
|
||||
}
|
||||
|
||||
@@ -3,20 +3,21 @@ package com.mogo.eagle.core.function.business.identify
|
||||
import android.annotation.SuppressLint
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.enums.TrafficTypeEnum
|
||||
import com.mogo.eagle.core.function.call.biz.CallerFuncBizListenerManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.mogo.eagle.core.function.map.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isTaxi
|
||||
import com.mogo.map.overlay.core.Level
|
||||
import com.mogo.map.overlay.point.Point
|
||||
import com.zhidaoauto.map.sdk.open.renders.marker.Marker
|
||||
import com.zhidaoauto.map.sdk.open.renders.marker.MarkerOptions
|
||||
import mogo.telematics.pad.MessagePad.*
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import mogo.telematics.pad.MessagePad.SubSource
|
||||
import mogo.telematics.pad.MessagePad.TrackedObject
|
||||
import mogo.telematics.pad.MessagePad.TrackedSource
|
||||
|
||||
object TrackerSourceFilterHelper {
|
||||
|
||||
private const val TAG = "TrackerSourceColor"
|
||||
private val cacheZombieMap = mutableMapOf<String, Point.Options>()
|
||||
|
||||
@SuppressLint("NewApi")
|
||||
fun filterData(data: TrackedObject): Boolean {
|
||||
@@ -31,16 +32,19 @@ object TrackerSourceFilterHelper {
|
||||
1 -> if (isIPC(data)) {
|
||||
trackIPCFilter = false
|
||||
}
|
||||
|
||||
2 -> {
|
||||
if (isObu(data).second) {
|
||||
trackIPCFilter = false
|
||||
}
|
||||
}
|
||||
|
||||
3 -> {
|
||||
if (isV2I(data).second) {
|
||||
trackIPCFilter = false
|
||||
}
|
||||
}
|
||||
|
||||
4 -> {
|
||||
if (isV2nRSM(data).second) {
|
||||
trackIPCFilter = false
|
||||
@@ -63,15 +67,15 @@ object TrackerSourceFilterHelper {
|
||||
return ""
|
||||
}
|
||||
|
||||
if(data.type == TrafficTypeEnum.TYPE_TRAFFIC_ID_CONE.type){
|
||||
if (data.type == TrafficTypeEnum.TYPE_TRAFFIC_ID_CONE.type) {
|
||||
return ""
|
||||
}
|
||||
|
||||
if(FunctionBuildConfig.isFusionColor){
|
||||
if(isFusion(data)){
|
||||
if (FunctionBuildConfig.isFusionColor) {
|
||||
if (isFusion(data)) {
|
||||
color = "#982FFFFF"
|
||||
}
|
||||
if(isV2X(data)){
|
||||
if (isV2X(data)) {
|
||||
color = "#F6F6F6FF"
|
||||
}
|
||||
}
|
||||
@@ -99,43 +103,61 @@ object TrackerSourceFilterHelper {
|
||||
}
|
||||
|
||||
//僵尸车
|
||||
if (data.addAttribute == AdditionalAttribute.ATTR_ZOMBIE) {
|
||||
// if (data.addAttribute == AdditionalAttribute.ATTR_ZOMBIE) {
|
||||
// color = "#7A8499FF"
|
||||
// if (FunctionBuildConfig.skinMode == 1) {
|
||||
// color = "#9BA8BCFF"
|
||||
// }
|
||||
val opt = Point.Options.Builder(TAG,Level.MAP_MARKER)
|
||||
.setId(data.uuid.toString())
|
||||
.latitude(data.latitude)
|
||||
.longitude(data.longitude)
|
||||
.isUseGps(true)
|
||||
.rotate(data.heading.toFloat())
|
||||
.setAnimResource(R.raw.yujingguangquan)
|
||||
.setDisplayAnim(true)
|
||||
.setAnimScale(getAnimScale(data.type))
|
||||
.build()
|
||||
CallerMapUIServiceManager.getOverlayManager()?.updateAnimPoint(opt)
|
||||
//消息埋点
|
||||
CallerFuncBizListenerManager.invokeAttrZombieAnalyticsEvent()
|
||||
}
|
||||
// }
|
||||
|
||||
return color
|
||||
}
|
||||
|
||||
private fun getAnimScale(type:Int):Float{
|
||||
return when (type) {
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_TA_CHE.type -> {
|
||||
2.6f
|
||||
}
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_BUS.type, TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK.type -> {
|
||||
4.0f
|
||||
}
|
||||
else -> {
|
||||
0f
|
||||
fun filterZombieMarker(data: TrackedObject){
|
||||
if (data.addAttribute == MessagePad.AdditionalAttribute.ATTR_ZOMBIE) {
|
||||
if (!cacheZombieMap.contains(data.uuid.toString())) {
|
||||
val opt = updateBottomMarker(data)
|
||||
cacheZombieMap[data.uuid.toString()] = opt
|
||||
}else{
|
||||
val opt = cacheZombieMap[data.uuid.toString()]
|
||||
opt?.let {
|
||||
val build = it.builder().latitude(data.latitude).longitude(data.longitude).rotate(data.heading.toFloat()).build()
|
||||
cacheZombieMap[data.uuid.toString()] = build
|
||||
CallerMapUIServiceManager.getOverlayManager()?.showOrUpdatePoint(build)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun updateBottomMarker(data: TrackedObject) : Point.Options{
|
||||
val scale = when (data.type) {
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_PEOPLE.type,
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_BICYCLE.type ,
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_MOTO.type -> 0.1f
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_TA_CHE.type -> 0.16f
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_BUS.type,
|
||||
TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK.type -> 0.19f
|
||||
else -> 0.2f
|
||||
}
|
||||
val opt = Point.Options.Builder(TAG, Level.DEFAULT)
|
||||
.setId("9999" + data.uuid.toString())
|
||||
.latitude(data.latitude)
|
||||
.longitude(data.longitude)
|
||||
.isUseGps(true)
|
||||
.rotate(data.heading.toFloat())
|
||||
.icon3DRes(R.raw.yujingguangquan)
|
||||
.scale(scale)
|
||||
.set3DMode(true)
|
||||
.build()
|
||||
CallerMapUIServiceManager.getOverlayManager()?.showOrUpdatePoint(opt)
|
||||
return opt
|
||||
}
|
||||
|
||||
fun removeBottomMarker(id: String){
|
||||
CallerMapUIServiceManager.getOverlayManager()?.removePoint("9999$id")
|
||||
cacheZombieMap.remove(id)
|
||||
}
|
||||
|
||||
/**
|
||||
* 过滤所有 工控感知数据 all match
|
||||
*/
|
||||
|
||||
@@ -42,8 +42,8 @@ class NDERoadCameraNetWorkModel private constructor() {
|
||||
crossID,
|
||||
loc.longitude,
|
||||
loc.latitude,
|
||||
// CallerMapUIServiceManager.getCityCode() ?: ""
|
||||
"0734"
|
||||
CallerMapUIServiceManager.getCityCode() ?: ""
|
||||
// "0734" //todo emArrow test
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -75,8 +75,8 @@ class NDERoadCameraNetWorkModel private constructor() {
|
||||
ip,
|
||||
loc.longitude,
|
||||
loc.latitude,
|
||||
// CallerMapUIServiceManager.getCityCode() ?: ""
|
||||
"0734"
|
||||
CallerMapUIServiceManager.getCityCode() ?: ""
|
||||
// "0734" //todo emArrow test
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,10 +2,9 @@ package com.mogo.eagle.core.function.view
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.os.Bundle
|
||||
import android.util.AttributeSet
|
||||
import android.util.Log
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
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
|
||||
import com.mogo.eagle.core.function.business.ai.AiCloudIdentifyDataManager.Companion.aiCloudIdentifyDataManager
|
||||
@@ -13,12 +12,15 @@ 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.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MAP
|
||||
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
|
||||
import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider
|
||||
import com.mogo.map.MogoMap.Companion.MAP_ROAM
|
||||
import com.mogo.map.MogoMapView
|
||||
import com.mogo.map.uicontroller.IMogoMapUIController
|
||||
import com.mogo.map.uicontroller.VisualAngleMode
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
import mogo.yycp.api.proto.SocketDownData
|
||||
|
||||
|
||||
@@ -79,15 +81,16 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context
|
||||
loc.latitude = latLng.first
|
||||
loc.longitude = latLng.second
|
||||
setExtraGPSData(loc)
|
||||
val dis = CoordinateUtils.calculateLineDistance(curLat, curLng, latLng.first, latLng.second)
|
||||
Log.i("emArrow", "$TAG 开始漫游 latLng:$latLng , curLat:$curLat , curLng:$curLng , dis:$dis")
|
||||
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))
|
||||
aiCloudIdentifyDataManager.trigger(true, 1, 300, latLng.first, latLng.second)
|
||||
}
|
||||
}
|
||||
|
||||
override fun response(requestStatus: Boolean, errorMsg: String?) {
|
||||
Log.e("emArrow","road map response:$requestStatus , errorMsg:${errorMsg?:""}")
|
||||
trace(TAG, mapOf("response" to requestStatus, "errorMsg" to (errorMsg?:"")))
|
||||
}
|
||||
|
||||
override fun onAiIdentifyData(obj: SocketDownData.SocketDownDataProto?) {
|
||||
@@ -114,4 +117,14 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context
|
||||
getUI()?.setVisible(false)
|
||||
}
|
||||
|
||||
@ChainLog(
|
||||
linkChainLog = ChainConstant.CHAIN_TYPE_STATUS,
|
||||
linkCode = ChainConstant.CHAIN_SOURCE_ADAS,
|
||||
nodeAliasCode = ChainConstant.CHAIN_CODE_ROAD_ROMA,
|
||||
paramIndexes = [0, 1]
|
||||
)
|
||||
private fun trace(tag: String, obj: Any) {
|
||||
CallerLogger.d("$M_MAP$tag", "$obj")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@ import android.animation.ValueAnimator
|
||||
import android.content.Context
|
||||
import android.graphics.Rect
|
||||
import android.util.AttributeSet
|
||||
import android.util.Log
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.animation.LinearInterpolator
|
||||
@@ -18,6 +17,8 @@ import com.mogo.eagle.core.function.call.map.CallerMapIdentifyManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager
|
||||
import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager
|
||||
import com.mogo.eagle.core.function.map.R
|
||||
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.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.zhidaoauto.map.data.road.StopLine
|
||||
@@ -92,12 +93,11 @@ class RoadCrossRoamView @JvmOverloads constructor(
|
||||
|
||||
override fun onStopLineInfo(info: StopLine) {
|
||||
super.onStopLineInfo(info)
|
||||
if(info.distance == 0.0){
|
||||
Log.i("emArrow", "showState return , distance is zero")
|
||||
if(info.distance == 0.0 || info.distance > 200){
|
||||
CallerLogger.d("$M_MAP$TAG", "showState return , distance is ${info.distance}")
|
||||
return
|
||||
}
|
||||
showState = info.distance < 200 && info.distance > 100
|
||||
// Log.i("emArrow", "showState $showState , distance:${info.distance}")
|
||||
showState = info.distance <= 200 && info.distance > 100
|
||||
}
|
||||
|
||||
private fun attachView() {
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user