添加转向灯和刹车灯的显示,待验证

This commit is contained in:
lixiaopeng
2022-07-11 17:01:29 +08:00
parent 79613224a0
commit 65320311de
5 changed files with 81 additions and 5 deletions

View File

@@ -38,6 +38,7 @@ import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager
import com.mogo.eagle.core.function.call.check.CallerCheckManager
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
import com.mogo.eagle.core.function.call.map.CallerMapDataCollectorManager
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.function.call.monitor.CallerMonitorManager
import com.mogo.eagle.core.function.hmi.R
import com.mogo.eagle.core.function.hmi.WaringConst
@@ -68,7 +69,6 @@ import kotlinx.coroutines.*
import mogo_msg.MogoReportMsg
import record_cache.RecordPanelOuterClass
import java.util.*
import kotlin.collections.ArrayList
/**
@@ -945,28 +945,68 @@ import kotlin.collections.ArrayList
}
}
private var isLeftLight :Boolean = false
private var isRightLight :Boolean = false
private var isDisappare :Boolean = false
/**
* 显示转向灯效果 if (HmiBuildConfig.isShowBadCaseView) {
*/
override fun showTurnLight(light: Int) {
if (HmiBuildConfig.isShowTurnLightView) {
ThreadUtils.runOnUiThread {
turnLightView?.let {
turnLightView.setTurnLight(light)
if (light == 1) {
if (!isLeftLight) {
isLeftLight = true
isRightLight = false
isDisappare = false
//TODO
CallerMapUIServiceManager.getMapUIController()?.setCarLightsType(4, 500)
}
} else if (light == 2) {
if (!isRightLight) {
isRightLight = true
isLeftLight = false
isDisappare = false
CallerMapUIServiceManager.getMapUIController()?.setCarLightsType(2, 500)
}
} else {
if (!isDisappare) {
isDisappare = true
isLeftLight = false
isRightLight = false
CallerMapUIServiceManager.getMapUIController()?.setCarLightsType(3, 500)
}
}
// turnLightView?.let {
// turnLightView.setTurnLight(light)
// }
}
}
}
private var isBrake: Boolean = false
/**
* 显示刹车效果
*/
override fun showBrakeLight(light: Int) {
if (HmiBuildConfig.isShowBrakeLightView) {
ThreadUtils.runOnUiThread {
brakeView?.let {
brakeView.setBrakeLight(light)
if (light == 1) { //刹车灯亮
if (!isBrake) {
isBrake = true
CallerMapUIServiceManager.getMapUIController()?.setCarLightsType(0, 500)
}
} else {
isBrake = false
CallerMapUIServiceManager.getMapUIController()?.setCarLightsType(3, 500)
}
// brakeView?.let {
// brakeView.setBrakeLight(light)
// }
}
}
}

View File

@@ -178,6 +178,12 @@ public interface IMogoMapUIController {
*/
void setCarCursorOption(@Nullable CarCursorOption option);
/**
*
* @param type :车尾灯类型 time: 闪烁时间 最小500ms 小于500ms 默认为500ms
*/
void setCarLightsType(int type, int time);
/**
* 获取地图视图描述快照
*

View File

@@ -639,6 +639,17 @@ public class AMapViewWrapper implements IMogoMapView,
mMapView.getMapAutoViewHelper().setMyLocationStyle(style);
}
/**
* 设置转向灯和刹车灯
* @param type :车尾灯类型 time: 闪烁时间 最小500ms 小于500ms 默认为500ms
* @param time
*/
@Override
public void setCarLightsType(int type, int time) {
Log.d("liyz", "AMapViewWrapper setCarLightsType type = " + type + "---time = " + time);
mMapView.getMapAutoViewHelper().setTailLightsType(type, time);
}
@Override
public MapCameraPosition getMapCameraPosition() {
if (checkAMapView()) {

View File

@@ -3,6 +3,7 @@ package com.mogo.map;
import android.graphics.Point;
import android.graphics.Rect;
import android.location.Location;
import android.util.Log;
import android.view.View;
import com.mogo.eagle.core.data.map.CenterLine;
@@ -252,6 +253,15 @@ public class MogoMapUIController implements IMogoMapUIController {
}
}
@Override
public void setCarLightsType(int type, int time) {
initDelegate();
if (mDelegate != null) {
Log.d("liyz", "MogoMapUIController type = " + type + "---time = " + time);
mDelegate.setCarLightsType(type, time);
}
}
@Override
public MapCameraPosition getMapCameraPosition() {
initDelegate();

View File

@@ -3,6 +3,7 @@ package com.mogo.map.uicontroller;
import android.graphics.Point;
import android.graphics.Rect;
import android.location.Location;
import android.util.Log;
import android.view.View;
import com.mogo.eagle.core.data.map.CenterLine;
@@ -220,6 +221,14 @@ public class AMapUIController implements IMogoMapUIController {
}
}
@Override
public void setCarLightsType(int type, int time) {
Log.d("liyz", "AMapUIController type = " + type + "---time = " + time);
if (mClient != null) {
mClient.setCarLightsType(type, time);
}
}
@Override
public MapCameraPosition getMapCameraPosition() {
if (mClient != null) {