[6.5.0] 僵尸车修改模型参数,提供路口统计能力,路口探查地图加自车容错及日志
This commit is contained in:
@@ -6,6 +6,7 @@ import com.mogo.eagle.core.data.constants.MogoServicePaths
|
||||
import com.mogo.eagle.core.function.api.datacenter.IDataCenterProvider
|
||||
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
|
||||
import com.mogo.eagle.core.function.datacenter.location.MoGoLocationDispatcher
|
||||
import com.mogo.eagle.core.function.datacenter.v2x.RoadLineEventManager
|
||||
import com.mogo.eagle.core.function.datacenter.v2x.SpeedLimitDispatcher
|
||||
import com.mogo.eagle.core.function.datacenter.v2x.TrafficLightDispatcher
|
||||
|
||||
@@ -24,6 +25,7 @@ class DataCenterProvider: IDataCenterProvider {
|
||||
CallerMsgBoxManager.queryAllMessages(it)
|
||||
TrafficLightDispatcher.INSTANCE.initServer(it)
|
||||
SpeedLimitDispatcher.INSTANCE.initLimit(it)
|
||||
RoadLineEventManager.INSTANCE.init()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.mogo.eagle.core.function.datacenter.v2x
|
||||
|
||||
import android.util.Log
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.api.map.road.IMoGoMapRoadListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager
|
||||
import com.zhidaoauto.map.data.road.RoadCross
|
||||
|
||||
/**
|
||||
* 路线功能相关,绑定路线id后,业务控制,数据变化均可以封装在这里实现
|
||||
*/
|
||||
class RoadLineEventManager : IMoGoMapRoadListener, IMoGoAutopilotStatusListener {
|
||||
|
||||
companion object{
|
||||
|
||||
private const val TAG = "RoadLineEventManager"
|
||||
|
||||
val INSTANCE by lazy(LazyThreadSafetyMode.SYNCHRONIZED){
|
||||
RoadLineEventManager()
|
||||
}
|
||||
}
|
||||
|
||||
private var record = false
|
||||
|
||||
fun init() {
|
||||
CallerMapRoadListenerManager.addListener(TAG, this)
|
||||
CallerAutoPilotStatusListenerManager.addListener(TAG, this)
|
||||
}
|
||||
|
||||
override fun onAutopilotRouteLineId(lineId: Long) {
|
||||
super.onAutopilotRouteLineId(lineId)
|
||||
record = lineId != 0L
|
||||
}
|
||||
|
||||
override fun onRoadChange(cross: Boolean, roadCross: RoadCross?) {
|
||||
super.onRoadChange(cross, roadCross)
|
||||
Log.e(TAG, "onRoadChange: $cross, $roadCross")
|
||||
if(!record){
|
||||
return
|
||||
}
|
||||
if(!cross){
|
||||
CallerAutoPilotStatusListenerManager.updateRoadCount()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -146,7 +146,7 @@ object TrackerSourceFilterHelper {
|
||||
.longitude(data.longitude)
|
||||
.isUseGps(true)
|
||||
.rotate(data.heading.toFloat())
|
||||
.icon3DRes(R.raw.yujingguangquan)
|
||||
.icon3DRes(R.raw.testguangquan)
|
||||
.scale(scale)
|
||||
.set3DMode(true)
|
||||
.build()
|
||||
|
||||
@@ -33,7 +33,7 @@ class RoadCrossCameraManager : IMoGoMapRoadListener {
|
||||
|
||||
private const val TAG = "RoadCrossCameraManager"
|
||||
private const val REQUEST_CAMERA_MSG = 0
|
||||
private const val REMOVE_MARKER_DELAY_TIME = 10_000L
|
||||
private const val REMOVE_MARKER_DELAY_TIME = 10000L
|
||||
|
||||
val instance: RoadCrossCameraManager by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) {
|
||||
RoadCrossCameraManager()
|
||||
@@ -53,6 +53,7 @@ class RoadCrossCameraManager : IMoGoMapRoadListener {
|
||||
private val handler = object :Handler(Looper.getMainLooper()){
|
||||
override fun handleMessage(msg: Message) {
|
||||
super.handleMessage(msg)
|
||||
CallerLogger.d("$M_MAP$TAG", "remove marker")
|
||||
overlayManager?.removeAllPointsInOwner(TAG)
|
||||
}
|
||||
}
|
||||
@@ -169,7 +170,7 @@ class RoadCrossCameraManager : IMoGoMapRoadListener {
|
||||
// 停止请求摄像头数据
|
||||
ndeRoadCameraNetWorkModel.cancelRequest("roadCross")
|
||||
// 清除marker
|
||||
CallerLogger.d("$M_MAP$TAG", "remove marker")
|
||||
CallerLogger.d("$M_MAP$TAG", "remove marker handler")
|
||||
handler.sendEmptyMessageDelayed(REQUEST_CAMERA_MSG, REMOVE_MARKER_DELAY_TIME)
|
||||
// 释放控制
|
||||
isCameraRequest = false
|
||||
|
||||
@@ -77,6 +77,7 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context
|
||||
fun openRoam() {
|
||||
this.onResume()
|
||||
getUI()?.setVisible(true)
|
||||
getUI()?.showMyLocation(false)
|
||||
CallerMapAiCloudDataManager.addListener(RoadCrossRoamView.TAG, this)
|
||||
// 更新地图视角 - 高视角
|
||||
getUI()?.changeMapVisualAngle(VisualAngleMode.MAP_STYLE_VR_ANGLE_TOP, null)
|
||||
|
||||
Binary file not shown.
@@ -16,6 +16,7 @@ import mogo.telematics.pad.MessagePad
|
||||
import mogo_msg.MogoReportMsg
|
||||
import system_master.SsmInfo
|
||||
import system_master.SystemStatusInfo
|
||||
import java.util.concurrent.atomic.AtomicInteger
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
/**
|
||||
@@ -69,6 +70,8 @@ object CallerAutoPilotStatusListenerManager : CallerBase<IMoGoAutopilotStatusLis
|
||||
|
||||
private var status: AdasConstants.IpcConnectionStatus? = null
|
||||
|
||||
private var atomicCountRoad = AtomicInteger(0)
|
||||
|
||||
override fun doSomeAfterAddListener(tag: String, listener: IMoGoAutopilotStatusListener) {
|
||||
listener.onAutopilotStatusResponse(autopilotState)
|
||||
if(dockerV.isNotEmpty()){
|
||||
@@ -289,4 +292,13 @@ object CallerAutoPilotStatusListenerManager : CallerBase<IMoGoAutopilotStatusLis
|
||||
itx.value.onAutopilotTrajectoryDownloadReq(autoPilotLine, downloadType)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun updateRoadCount(){
|
||||
atomicCountRoad.addAndGet(1)
|
||||
}
|
||||
|
||||
fun getRoadCount(): Int {
|
||||
return atomicCountRoad.get()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -101,6 +101,8 @@ void setBlur()
|
||||
void main()
|
||||
{
|
||||
//点光源光照Blinn-Phong模型
|
||||
fragColor = texture(texId,fragTexCoord);
|
||||
return;
|
||||
vec3 L = normalize(fragEyePos - lightEyePos); //光源到此片元的方向
|
||||
vec3 N = normalize(fragEyeNormal); //此片元法线
|
||||
vec3 V = normalize(fragEyePos); //眼睛观察此片元的方向
|
||||
|
||||
@@ -384,7 +384,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle
|
||||
}
|
||||
|
||||
override fun showMyLocation(visible: Boolean) {
|
||||
d(M_MAP + TAG, "showMyLocation1 $visible")
|
||||
d(M_MAP + TAG, "showMyLocation $visible")
|
||||
// 如果是VR模式
|
||||
// if (isVrMold) {
|
||||
// return
|
||||
@@ -402,6 +402,8 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle
|
||||
}
|
||||
mMapView.getMapAutoViewHelper()!!.setMyLocationStyle(style)
|
||||
}
|
||||
}else{
|
||||
d(M_MAP + TAG, "showMyLocation checkAMapView false")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user