diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java index 003d29e48e..3fd74804eb 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java @@ -158,27 +158,44 @@ public class MogoRouteOverlayManager implements @Override public void onLocationChanged(@Nullable MogoLocation location) { //todo 拖尾 +// mLocation = location; +// if (mTrajectoryList.isEmpty()) { +// return; +// } +// Log.d(TAG, "onLocationChanged : " + mTrajectoryList.size()); +// ArrayList list = new ArrayList(); +// for (MogoLatLng latLng : mTrajectoryList) { +// if (!isPointOnCarFront(mLocation, latLng)) { +// list.add(latLng); +// } +// } +// +// StringBuilder builder = new StringBuilder(); +// for (int i = 0; i < list.size(); i++) { +// MogoLatLng latLng = (MogoLatLng) list.get(i); +// builder.append(latLng.getLon()).append(","); +// builder.append(latLng.getLat()).append(","); +// } +// Log.d(TAG, "onLocationChanged : " + GsonUtils.toJson(builder.toString())); +// Log.d(TAG,"onLocationChanged size = " + list.size() + "---TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "----" + STATUS_AUTOPILOT); +// if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData || STATUS_AUTOPILOT == 1) { +// RouteOverlayDrawer.getInstance(mContext).drawTrajectoryList(list); +// } + mLocation = location; - if (mTrajectoryList.isEmpty()) { + List temp = mTrajectoryList; + if (temp.isEmpty()){ return; } - Log.d(TAG, "onLocationChanged : " + mTrajectoryList.size()); - ArrayList list = new ArrayList(); - for (MogoLatLng latLng : mTrajectoryList) { - if (!isPointOnCarFront(mLocation, latLng)) { + Log.e(TAG, "onLocationChanged: size = "+ mTrajectoryList.size()+" ----- "+mLocation.getLongitude()+"-"+mLocation.getLatitude()); + ArrayList list = new ArrayList(); + for (MogoLatLng latLng:temp) { + if(!isPointOnCarFront(mLocation,latLng)){ list.add(latLng); } } - - StringBuilder builder = new StringBuilder(); - for (int i = 0; i < list.size(); i++) { - MogoLatLng latLng = (MogoLatLng) list.get(i); - builder.append(latLng.getLon()).append(","); - builder.append(latLng.getLat()).append(","); - } - Log.d(TAG, "onLocationChanged : " + GsonUtils.toJson(builder.toString())); - Log.d(TAG,"onLocationChanged size = " + list.size() + "---TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "----" + STATUS_AUTOPILOT); - if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData || STATUS_AUTOPILOT == 1) { + Log.d(TAG,"TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "---status = " + STATUS_AUTOPILOT + "----size = " + list.size()); + if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData || STATUS_AUTOPILOT == 1){ RouteOverlayDrawer.getInstance(mContext).drawTrajectoryList(list); } } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java index c7a023eebb..575c0cd808 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java @@ -115,7 +115,7 @@ public class RouteOverlayDrawer { long drawstart = System.currentTimeMillis(); mPolylinePointList.clear(); - if (routeList != null) { + if (routeList != null && routeList.size() > 0) { for (MogoLatLng latLng : routeList) { mPolylinePointList.add(latLng); }