close route overlay log and fix draw data of route to pb style

This commit is contained in:
zhongchao
2022-04-06 18:56:03 +08:00
parent 4f7cf8608e
commit e1508a3f0f
14 changed files with 49 additions and 187 deletions

View File

@@ -4,7 +4,8 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_OLD
import android.content.Context;
import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo;
import androidx.annotation.NonNull;
import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.data.map.MogoLatLng;
@@ -66,12 +67,10 @@ public class MogoRouteOverlayManager implements
}
@Override
public void onAutopilotTrajectory(ArrayList<ADASTrajectoryInfo> trajectoryInfos) {
public void onAutopilotTrajectory(List<MessagePad.TrajectoryPoint> trajectoryInfos) {
if (trajectoryInfos == null || trajectoryInfos.size() == 0) {
return;
}
// double lat = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLat();
// double lon = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLon();
StringBuilder builder = new StringBuilder();
builder.append("{");
builder.append(System.currentTimeMillis()).append(";");
@@ -80,25 +79,20 @@ public class MogoRouteOverlayManager implements
builder.append(mLocation.getAltitude()).append(";");
builder.append(mLocation.getBearing()).append(";");
builder.append(mLocation.getSpeed()).append(";");
// ADASTrajectoryInfo adasTrajectoryInfo = trajectoryInfos.get(0);
// long temp = SystemClock.currentThreadTimeMillis();
// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "temp:"+temp+" size:" + trajectoryInfos.size());
// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "trajectoryInfos:" + adasTrajectoryInfo.getLat()+":"+adasTrajectoryInfo.getLon());
// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "temp:"+temp+" location:" + lat+":"+lon);
List<MogoLatLng> mogoLatLngs = new ArrayList<>();
for (int i = 0; i < trajectoryInfos.size(); i++) {
// 临时解决车尾拖线问题,丢弃距离车最近的几个经纬度,原因是惯性导航的中心靠近车尾,会导致经纬度靠近尾部,且两个数据不同频
if (i > 5) {
ADASTrajectoryInfo a = trajectoryInfos.get(i);
builder.append(a.getLon()).append(",");
builder.append(a.getLat()).append(",");
mogoLatLngs.add(new MogoLatLng(a.getLat(), a.getLon()));
MessagePad.TrajectoryPoint a = trajectoryInfos.get(i);
builder.append(a.getLongitude()).append(",");
builder.append(a.getLatitude()).append(",");
mogoLatLngs.add(new MogoLatLng(a.getLatitude(), a.getLongitude()));
}
}
mTrajectoryList = mogoLatLngs;
builder.append("}");
CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, builder.toString());
}
@Override
@@ -115,6 +109,7 @@ public class MogoRouteOverlayManager implements
// RouteOverlayDrawer.getInstance(mContext).addEndingMarker(latLngList.get(listSize - 1).lat,latLngList.get(listSize - 1).lon);
}
@Override
public void onAutopilotStatusResponse(@NotNull AutopilotStatusInfo autoPilotStatusInfo) {
if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData) {
@@ -190,7 +185,7 @@ public class MogoRouteOverlayManager implements
list.add(latLng);
// }
}
CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "---status = " + STATUS_AUTOPILOT + "----size = " + list.size());
// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "---status = " + STATUS_AUTOPILOT + "----size = " + list.size());
if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData || STATUS_AUTOPILOT == 1) {
RouteOverlayDrawer.getInstance(mContext).drawTrajectoryList(list);
}

View File

@@ -117,8 +117,6 @@ public class RouteOverlayDrawer {
public void drawTrajectoryList(List<MogoLatLng> routeList) {
// clearMogoRouteOverlay();
long drawstart = System.currentTimeMillis();
mPolylinePointList.clear();
if (routeList != null && routeList.size() > 0) {
for (MogoLatLng latLng : routeList) {
@@ -126,15 +124,12 @@ public class RouteOverlayDrawer {
}
mPolylineColors.clear();
// mPolylineColors.addAll(ColorUtils.gradientAlpha_("#FF2AAFFD", "#7b2965ED", "#002965ED", mPolylinePointList.size()));
long start = System.currentTimeMillis();
List<Integer> list = new ArrayList<>();
// list = ColorUtils.gradientAlpha("#FF2AAFFD", "#002965ED", mPolylinePointList.size());
int[] startColor = ColorUtils.hexToArgb("#CC64C3EA");
int[] endColor = ColorUtils.hexToArgb("#0064C3EA");
list.add(Color.argb(startColor[0], startColor[1], startColor[2], startColor[3]));
list.add(Color.argb(endColor[0], endColor[1], endColor[2], endColor[3]));
long end = System.currentTimeMillis();
CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "get color cost : " + (end - start));
mPolylineColors.addAll(list);
// 线条粗细,渐变,渐变色值
@@ -147,8 +142,6 @@ public class RouteOverlayDrawer {
mMoGoPolyline.setOption(mPolylineOptions);
}
}
long drawend = System.currentTimeMillis();
CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "drawTrajectoryList cost : " + (drawend - drawstart));
}
public void initDraw() {