Merge branch 'test_MogoAP_eagle-1030_211020_8.0.14.2' into dev_MogoAP_eagle-1030_211020_8.0.14_for_newtts

This commit is contained in:
donghongyu
2021-12-01 14:13:40 +08:00
9 changed files with 44 additions and 30 deletions

View File

@@ -111,13 +111,13 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener,
when {
trafficLightStatus.isRed() -> {
Logger.d(TAG, "=====当前为红灯=====")
// 到达路口时红灯还没走完(由于多个数据有偏差红灯预警延长1s绿灯提示延长2s多报出错不如少报且准)
// 到达路口时红灯还没走完(由于多个数据有偏差红灯预警延长1s绿灯提示延长3s多报出错不如少报且准)
if (arriveTime <= remainTime + 1) {
redLightWarning()
} else if (arriveTime > remainTime + trafficLightResult.flashYellow + 2) {// 到达时红、黄灯都走完
} else if (arriveTime > remainTime + trafficLightResult.flashYellow + 3) {// 到达时红、黄灯都走完
// 单位Km/h当前为红灯推荐速度越慢越容易绿灯通过且要满足[10,50]
val originRemainSpeed =
floor(distance / (remainTime + trafficLightResult.flashYellow) * 3.6).toInt()
floor(distance / (remainTime + trafficLightResult.flashYellow + 3) * 3.6).toInt()
when {
originRemainSpeed > 50 -> greenLightWarning("10到50")
originRemainSpeed in 10..50 -> greenLightWarning("10到$originRemainSpeed")
@@ -126,12 +126,12 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener,
}
trafficLightStatus.isYellow() -> {
Logger.d(TAG, "=====当前为黄灯=====")
// 到达路口时黄灯还没走完(由于多个数据有偏差红灯预警延长1s绿灯提示延长2s多报出错不如少报且准)
// 到达路口时黄灯还没走完(由于多个数据有偏差红灯预警延长1s绿灯提示延长3s多报出错不如少报且准)
if (arriveTime <= remainTime + 1) {
redLightWarning()
} else if (arriveTime > remainTime + 2) {
} else if (arriveTime > remainTime + 3) {
// 单位Km/h当前为黄灯推荐速度越慢越容易绿灯通过且要满足[10,50]
val originRemainSpeed = floor(distance / remainTime * 3.6).toInt()
val originRemainSpeed = floor(distance / (remainTime + 3) * 3.6).toInt()
when {
originRemainSpeed > 50 -> greenLightWarning("10到50")
originRemainSpeed in 10..50 -> greenLightWarning("10到$originRemainSpeed")
@@ -143,9 +143,9 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener,
// 到达路口时绿灯已经走完(由于多个数据有偏差,多报出错不如少报且准,绿灯时间减少一点)
if (arriveTime >= remainTime - 1) {
redLightWarning()
} else if (arriveTime < remainTime - 2) {
} else if (arriveTime < remainTime - 3) {
// 单位Km/h当前为绿灯推荐速度越快越容易绿灯通过且要满足[10,50]
val originRemainSpeed = ceil(distance / remainTime * 3.6).toInt()
val originRemainSpeed = ceil(distance / (remainTime - 3) * 3.6).toInt()
when {
originRemainSpeed < 10 -> greenLightWarning("10到50")
originRemainSpeed in 10..50 -> greenLightWarning("${originRemainSpeed}到50")

View File

@@ -40,11 +40,8 @@ public class SpeedLimitDataManager implements IMogoCarLocationChangedListener2 {
UiThreadHandler.post(new Runnable() {
@Override
public void run() {
int speed = (int) (mLocation.getSpeed() * 3.6f);
if (speed > 0 && speedLimmit > 0){
if (speedLimmit > 0){
CallerHmiManager.INSTANCE.showLimitingVelocity(speedLimmit);
}else {
CallerHmiManager.INSTANCE.disableLimitingVelocity();
}
}
});

Binary file not shown.

View File

@@ -80,7 +80,7 @@ MOGO_TRAFFICLIVE_VERSION=1.3.13
MOGO_LOCATION_VERSION=1.3.13
######## MogoAiCloudSDK Version ########
# 自研地图
MAP_SDK_VERSION=2.0.0.11
MAP_SDK_VERSION=2.0.0.12
# websocket
WEBSOCKET_VERSION=1.1.7
## 产品库必备配置产品库自动对versionCode和versionName版本进行升级

View File

@@ -216,7 +216,7 @@ public class BaseDrawer {
} else if (recognizedType == AdasRecognizedType.classIdStopLine) {
return R.raw.stopline;
} else if (recognizedType == AdasRecognizedType.classIdWarningArrows) {
return R.raw.stopline;
return R.raw.jiantou;
} else if (recognizedType == AdasRecognizedType.classIdUnKnow) {
return R.raw.special_vehicle;
} else if (recognizedType == AdasRecognizedType.classIdBicycle) {

View File

@@ -31,6 +31,7 @@ public class RouteOverlayDrawer {
private RouteOverlayDrawer(Context context) {
mPolylineOptions = new MogoPolylineOptions();
mPolylineOptions.zIndex(20000f);
mPolylineOptions.setGps(true);
// 绘制路径集合
mPolylinePointList = new ArrayList<>();
// 引导线颜色
@@ -115,6 +116,7 @@ public class RouteOverlayDrawer {
public void clearMogoRouteOverlay(){
if (mMoGoPolyline != null) {
mMoGoPolyline.remove();
mMoGoPolyline = null;
mPolylinePointList.clear();
mPolylineColors.clear();
}
@@ -125,19 +127,24 @@ public class RouteOverlayDrawer {
}
public void drawTrajectoryList(List<MogoLatLng> routeList) {
clearMogoRouteOverlay();
// clearMogoRouteOverlay();
mPolylinePointList.clear();
if (routeList != null) {
for (MogoLatLng latLng : routeList) {
mPolylinePointList.add(latLng);
}
mPolylineOptions.setGps(true);
mPolylineColors.addAll(ColorUtils.getGradientAlpha("#002965ED", "#FF2965ED", "#002965ED", mPolylinePointList.size()));
// 替换路径集合
mPolylineOptions.points(mPolylinePointList);
if (mPolylineColors.isEmpty()){
mPolylineColors.addAll(ColorUtils.getGradientAlpha("#002965ED", "#FF2965ED", "#002965ED", mPolylinePointList.size()));
}
// 线条粗细,渐变,渐变色值
mPolylineOptions.width(25).useGradient(true).colorValues(mPolylineColors);
// 绘制线
mMoGoPolyline = mogoOverlayManager.addPolyline(mPolylineOptions);
mPolylineOptions.width(20).useGradient(true).colorValues(mPolylineColors);
if (mMoGoPolyline == null || mMoGoPolyline.isDestroyed()){
mPolylineOptions.points(mPolylinePointList);
mMoGoPolyline = mogoOverlayManager.addPolyline(mPolylineOptions);
}else {
mMoGoPolyline.setPoints(mPolylinePointList);
}
}
}
}

View File

@@ -33,7 +33,7 @@ import static com.mogo.module.v2x.V2XServiceManager.getContext;
/**
* @author liujing
* @description 前方预警marker打点 绘制安全线和预警线
* @description 前方预警marker打点 绘制安全线和预警线 衡阳交付-取消划线需求,只渲染识别物红色模型移动过程,代码保留
* @since: 2021/3/30
*/
public class V2XWarningMarker implements IV2XMarker{
@@ -86,20 +86,26 @@ public class V2XWarningMarker implements IV2XMarker{
WorkThreadHandler.getInstance().postDelayed(() -> {
if (carLocation.lat != 0 && carLocation.lon != 0) {
//在自车与停止线直线绘制蓝色预警线
drawSelfCarLine(carLocation.lon, carLocation.lat, bearing);
//衡阳交付-取消划线需求,只渲染识别物红色模型移动过程
//drawSelfCarLine(carLocation.lon, carLocation.lat, bearing);
} else {
}
//二轮车和行人的渲染和移动
V2XServiceManager.getMarkerManager().removeMarkers(TYPE_MARKER_CLOUD_WARN_DATA);
/* 衡阳交付-取消划线需求,只渲染识别物红色模型移动过程
//获取停止线前方50m坐标点
MogoLatLng warningLocation = Trigonometric.getNewLocation(middleLocationInStopLine,
50, angleForCarMoveDirection());
//停止线向前方50m绘制红色预警线
drawRedWarningLineFrontOfStopLine(mCloundWarningInfo, middleLocationInStopLine,
warningLocation);
*/
V2XWarnDataDrawer.getInstance().renderWarnData(mCloundWarningInfo);
//添加停止线marker
handleStopLine();
//衡阳交付-取消划线需求,只渲染识别物红色模型移动过程
//handleStopLine();
}, 0);
Log.d(TAG, "显示时间为++" + String.valueOf(showTime) + "识别物类型:" +
String.valueOf(mCloundWarningInfo.getType()));
@@ -108,6 +114,7 @@ public class V2XWarningMarker implements IV2XMarker{
} else { //无停止线
Log.d(TAG, "无停止线");
WorkThreadHandler.getInstance().postDelayed(() -> {
/* 衡阳交付-取消划线需求,只渲染识别物红色模型移动过程
Log.d(TAG, "无停止线" + mCloundWarningInfo.toString());
//绘制识别物与交汇点连线,并且更新连线数据
drawOtherObjectLine(mCloundWarningInfo);
@@ -118,6 +125,7 @@ public class V2XWarningMarker implements IV2XMarker{
} else {
Log.d(TAG, "数据为空carLocation == null");
}
*/
V2XWarnDataDrawer.getInstance().renderWarnData(mCloundWarningInfo);
}, 0);
@@ -390,7 +398,8 @@ public class V2XWarningMarker implements IV2XMarker{
if (mCloundWarningInfo != null) {
mCloundWarningInfo.setCarLocation(new MogoLatLng(latLng.getLatitude(), latLng.getLongitude()));
}
drawSelfCarLine(latLng.getLongitude(), latLng.getLatitude(), latLng.getBearing());
//衡阳交付-取消划线需求,只渲染识别物红色模型移动过程
//drawSelfCarLine(latLng.getLongitude(), latLng.getLatitude(), latLng.getBearing());
}
Log.d(TAG, "车辆行驶轨迹" + String.valueOf(latLng.getLongitude()) + "," + String.valueOf(latLng.getLatitude()));
}

View File

@@ -1,8 +1,8 @@
{
"type": 1,
"lat": 26.851993861219782,
"lon": 112.57065318116094,
"distance": 5.89,
"lat": 26.851909,
"lon": 112.571751,
"distance": 40.119,
"collisionLat": 26.85198163866211,
"collisionLon": 112.57059540184451,
"stopLines": [

View File

@@ -36,7 +36,8 @@ public class BuglyCrashReportProvider implements ITestCrashReportProvider {
String processName = getProcessName(android.os.Process.myPid());
CrashReport.UserStrategy strategy = new CrashReport.UserStrategy(context);
strategy.setUploadProcess(processName == null || processName.equals(packageName));
//该用户本次启动后的异常日志用户ID都将是 sn
CrashReport.setUserId(MoGoAiCloudClientConfig.getInstance().getSn());
String productFlavor = DebugConfig.getProductFlavor();
strategy.setAppChannel(productFlavor);
Bugly.init(context, CrashReportConstants.buglyAppID, true, strategy);