eagle 工控机提供车前引导线数据

This commit is contained in:
lianglihui
2021-10-22 19:39:45 +08:00
parent 18dc7918fd
commit 5742f2ad93
11 changed files with 306 additions and 12 deletions

View File

@@ -2,14 +2,17 @@ package com.mogo.module.service.routeoverlay;
import android.content.Context;
import android.location.Location;
import android.util.Log;
import com.mogo.eagle.core.data.map.MogoLatLng;
import com.mogo.map.location.MogoLocation;
import com.mogo.map.navi.IMogoCarLocationChangedListener2;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.drawer.MarkerDrawer;
import com.mogo.service.adas.IMogoAdasRouteCallBack;
import com.mogo.service.adas.IMogoAdasTrajectoryDataCallBack;
import com.mogo.service.adas.entity.ADASTrajectoryInfo;
import java.util.ArrayList;
import java.util.List;
public class MogoRouteOverlayManager implements IMogoCarLocationChangedListener2 {
@@ -32,7 +35,22 @@ public class MogoRouteOverlayManager implements IMogoCarLocationChangedListener2
RouteOverlayDrawer.getInstance(mContext).putRouteList(routeList);
}
});
MogoApisHandler.getInstance().getApis().getAdasControllerApi().addAdasTrajectoryDataCallBack(new IMogoAdasTrajectoryDataCallBack() {
@Override
public void onAutopilotTrajectory(List<ADASTrajectoryInfo> trajectoryInfos) {
// Log.e("lianglihui","onAutopilotTrajectory");
if (trajectoryInfos == null || trajectoryInfos.size() == 0){
return;
}
// Log.e("lianglihui","trajectoryInfos:"+trajectoryInfos.size());
List<MogoLatLng> mogoLatLngs = new ArrayList<>();
for (ADASTrajectoryInfo a:trajectoryInfos) {
mogoLatLngs.add(new MogoLatLng(a.getLat(),a.getLon()));
}
RouteOverlayDrawer.getInstance(mContext).drawTrajectoryList(mogoLatLngs);
}
});
}
public static MogoRouteOverlayManager getInstance(Context context) {
@@ -49,7 +67,7 @@ public class MogoRouteOverlayManager implements IMogoCarLocationChangedListener2
@Override
public void onCarLocationChanged2(Location latLng) {
updateLocation(latLng);
// updateLocation(latLng);
}
@Override

View File

@@ -124,4 +124,21 @@ public class RouteOverlayDrawer {
public void putRouteList(List<MogoLatLng> routeList) {
this.mRouteList = routeList;
}
public void drawTrajectoryList(List<MogoLatLng> routeList) {
clearMogoRouteOverlay();
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);
// 线条粗细,渐变,渐变色值
mPolylineOptions.width(25).useGradient(true).colorValues(mPolylineColors);
// 绘制线
mMoGoPolyline = mogoOverlayManager.addPolyline(mPolylineOptions);
}
}
}