From 1d8ba2834d612b7f86793ecbe71e84de73ef78a7 Mon Sep 17 00:00:00 2001 From: donghongyu Date: Thu, 14 Apr 2022 11:25:03 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E3=80=8CChange=E3=80=8D=201=E3=80=81?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=BC=96=E8=AF=91=E6=9C=9F=E6=8E=A7=E5=88=B6?= =?UTF-8?q?=E7=99=BD=E5=A4=A9=E6=A8=A1=E5=BC=8F/=E5=A4=9C=E9=97=B4?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=20FunctionBuildConfig.skinMode=20=3D=201;=20?= =?UTF-8?q?2=E3=80=81=E5=A2=9E=E5=8A=A0=E5=9C=B0=E5=9B=BE3D=E7=99=BD?= =?UTF-8?q?=E5=A4=A9=E6=A8=A1=E5=BC=8F=E5=85=BC=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: donghongyu --- .../core/data/config/FunctionBuildConfig.kt | 11 ++ .../setting/CallerMoGoUiSettingManager.kt | 13 +- .../core/utilcode/mogo/logger/scene/Scene.kt | 2 +- .../java/com/mogo/map/AMapViewWrapper.java | 134 +++++++++++------- .../com/mogo/map/CustomMapApiBuilder.java | 5 +- 5 files changed, 101 insertions(+), 64 deletions(-) diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt index ceea3a1036..49227e0797 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt @@ -86,4 +86,15 @@ object FunctionBuildConfig { @Volatile @JvmField var isIgnoreConditionsDrawAutopilotTrajectoryData = false + + /** + * 皮肤模式 + * 0--默认夜间模式, + * 1-白天模式, + * 2-节日模式(待开发,加载节日图片包) + */ + @Volatile + @JvmField + var skinMode = 0 + } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/setting/CallerMoGoUiSettingManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/setting/CallerMoGoUiSettingManager.kt index c153b47e68..8430deb5cb 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/setting/CallerMoGoUiSettingManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/setting/CallerMoGoUiSettingManager.kt @@ -1,5 +1,6 @@ package com.mogo.eagle.core.function.call.setting +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.setting.MoGoUiSettingProvider /** @@ -8,8 +9,6 @@ import com.mogo.eagle.core.function.api.setting.MoGoUiSettingProvider * @author mogoauto */ object CallerMoGoUiSettingManager : MoGoUiSettingProvider { - // 0--默认夜间模式,1-白天模式,2-节日模式(待开发,加载节日图片包) - private var skinMode = 0 // 是否是VR模式,true-VR模式,false-2D模式 var vrMode = true @@ -23,20 +22,20 @@ object CallerMoGoUiSettingManager : MoGoUiSettingProvider { } override fun stepInDayMode() { - skinMode = 1 - CallerSkinModeListenerManager.invokeListener(skinMode) + FunctionBuildConfig.skinMode = 1 + CallerSkinModeListenerManager.invokeListener(FunctionBuildConfig.skinMode) } override fun stepOutDayMode() { - skinMode = 0 - CallerSkinModeListenerManager.invokeListener(skinMode) + FunctionBuildConfig.skinMode = 0 + CallerSkinModeListenerManager.invokeListener(FunctionBuildConfig.skinMode) } /** * 0--默认夜间模式,1-白天模式,2-节日模式(待开发,加载节日图片包) */ override fun getDayMode(): Int { - return skinMode + return FunctionBuildConfig.skinMode } diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/scene/Scene.kt b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/scene/Scene.kt index 014711b5e3..7608b14962 100644 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/scene/Scene.kt +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/scene/Scene.kt @@ -47,7 +47,7 @@ class Scene { val v2xMap = SceneLogCache(mutableMapOf(), false) sceneCache[M_V2X] = v2xMap //初始化map - val map = SceneLogCache(mutableMapOf(), false) + val map = SceneLogCache(mutableMapOf(), true) sceneCache[M_MAP] = map //初始化路径规划 val routeMap = SceneLogCache(mutableMapOf(), true) diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java index 4040f60538..c2fc03b5f3 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java @@ -1,5 +1,6 @@ package com.mogo.map; +import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_MAP; import static com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ANGLE_300; import static com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ANGLE_CROSS; import static com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ANGLE_TOP; @@ -107,16 +108,12 @@ public class AMapViewWrapper implements IMogoMapView, private EnumMapUI mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT_VR; private VisualAngleMode mVisualAngleMode = MODE_MEDIUM_SIGHT; - private float mDefaultZoomLevel = 16.0f; - private boolean mIsLightStyle = false; private boolean mMapLoaded = false; private boolean mIsFirstLocated = true; private boolean mIsDelayed = false; - private volatile String mRoadId = null; - public AMapViewWrapper(MapAutoView mMapView) { - CallerLogger.INSTANCE.i(TAG, "autoop--AMapViewWrapper: init"); + CallerLogger.INSTANCE.i(M_MAP+TAG, "autoop--AMapViewWrapper: init"); this.mMapView = mMapView; initViews(); initListeners(); @@ -124,6 +121,28 @@ public class AMapViewWrapper implements IMogoMapView, } private void initViews() { + // 初始化首次地图进入的时候的样式, MapAutoApi.INSTANCE.init(context, mapParams);将影响这里的数据 + int mapStyle = MapAutoApi.INSTANCE.getMapParams().getStyleMode(); + switch (mapStyle) { + case MapAutoApi.MAP_STYLE_DAY: + mCurrentUI = EnumMapUI.MAP_STYLE_DAY; + break; + case MapAutoApi.MAP_STYLE_DAY_VR: + mCurrentUI = EnumMapUI.MAP_STYLE_DAY_VR; + break; + case MapAutoApi.MAP_STYLE_DAY_NAV: + mCurrentUI = EnumMapUI.MAP_STYLE_DAY_NAV; + break; + case MapAutoApi.MAP_STYLE_NIGHT: + mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT; + break; + case MapAutoApi.MAP_STYLE_NIGHT_VR: + mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT_VR; + break; + case MapAutoApi.MAP_STYLE_NIGHT_NAV: + mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT_NAV; + break; + } } @@ -158,17 +177,17 @@ public class AMapViewWrapper implements IMogoMapView, mMapView.setOnMapStyleListener(this); mMapView.setOnMapViewVisualAngleChangeListener(this); mMapView.setOnRoadInfoListener(this, 1); - CallerLogger.INSTANCE.d(TAG, "styleop - initListeners - setOnMapStyleListener - view " + mMapView); + CallerLogger.INSTANCE.d(M_MAP+TAG, "styleop - initListeners - setOnMapStyleListener - view " + mMapView); } @Override public void onRoadIdInfo(@androidx.annotation.Nullable String roadId) { if (roadId != null && !TextUtils.isEmpty(roadId)) { - CallerLogger.INSTANCE.d(TAG, "onRoadIdInfo::" + roadId); + CallerLogger.INSTANCE.d(M_MAP+TAG, "onRoadIdInfo::" + roadId); CallerMapRoadListenerManager.INSTANCE.invokeListenersOnRoadIdGet(roadId); } else { - CallerLogger.INSTANCE.d(TAG, "onRoadIdInfo::null"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "onRoadIdInfo::null"); } } @@ -186,27 +205,27 @@ public class AMapViewWrapper implements IMogoMapView, * } */ String provider = carLoc.getProvider(); - CallerLogger.INSTANCE.d(TAG, "car_loc: " + carLoc + ""); + CallerLogger.INSTANCE.d(M_MAP+TAG, "car_loc: " + carLoc + ""); if (!MapAutoApi.GPS_FLAG.equals(provider)) { - CallerLogger.INSTANCE.d(TAG, "convert before: car_loc: {lon: " + carLoc.getLongitude() + ", lat: " + carLoc.getLatitude() + "}"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "convert before: car_loc: {lon: " + carLoc.getLongitude() + ", lat: " + carLoc.getLatitude() + "}"); LonLatPoint p = new LonLatPoint(carLoc.getLongitude(), carLoc.getLatitude()); p = MapTools.INSTANCE.switchLonLatWGS84(p); carLoc.setLongitude(p.longitude); carLoc.setLatitude(p.latitude); - CallerLogger.INSTANCE.d(TAG, "convert after: car_loc: {lon: " + carLoc.getLongitude() + ", lat: " + carLoc.getLatitude() + "}"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "convert after: car_loc: {lon: " + carLoc.getLongitude() + ", lat: " + carLoc.getLatitude() + "}"); } - CallerLogger.INSTANCE.d(TAG, "onStopLineInfo:stop_line" + stopLine + ", car_loc:{lon: " + carLoc.getLatitude() + ", lat: " + carLoc.getLongitude() + "}"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "onStopLineInfo:stop_line" + stopLine + ", car_loc:{lon: " + carLoc.getLatitude() + ", lat: " + carLoc.getLongitude() + "}"); MapRoadInfo.StopLine stopInfo = convert(stopLine); LonLatPoint p1 = points.get(0); LonLatPoint p2 = points.get(points.size() - 1); double distanceOfCarToStopLine = MapDataApi.INSTANCE.getNearstFromPointToSegment(carLoc.getLongitude(), carLoc.getLatitude(), p1.longitude, p1.latitude, p2.longitude, p2.latitude) * 10_0000; stopInfo.setDistanceOfCarToStopLine(distanceOfCarToStopLine); - CallerLogger.INSTANCE.d(TAG, "onStopLineInfo: --- distance: " + distanceOfCarToStopLine); + CallerLogger.INSTANCE.d(M_MAP+TAG, "onStopLineInfo: --- distance: " + distanceOfCarToStopLine); CallerMapRoadListenerManager.INSTANCE.invokeListenersOnStopLineGet(stopInfo); } } else { if (carLoc != null) { - CallerLogger.INSTANCE.d(TAG, "onStopLineInfo::null, car_loc:{lon: " + carLoc.getLatitude() + ", lat: " + carLoc.getLongitude() + "}"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "onStopLineInfo::null, car_loc:{lon: " + carLoc.getLatitude() + ", lat: " + carLoc.getLongitude() + "}"); } } } @@ -254,7 +273,7 @@ public class AMapViewWrapper implements IMogoMapView, public void onCreate(Bundle bundle) { if (mMapView != null) { mMapView.onCreate(bundle); - CallerLogger.INSTANCE.d(TAG, "map onCreate"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "map onCreate"); } } @@ -262,7 +281,7 @@ public class AMapViewWrapper implements IMogoMapView, public void onResume() { if (mMapView != null) { mMapView.onResume(); - CallerLogger.INSTANCE.d(TAG, "map onResume"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "map onResume"); } } @@ -270,7 +289,7 @@ public class AMapViewWrapper implements IMogoMapView, public void onPause() { if (mMapView != null) { mMapView.onPause(); - CallerLogger.INSTANCE.d(TAG, "map onPause"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "map onPause"); } } @@ -284,7 +303,7 @@ public class AMapViewWrapper implements IMogoMapView, mMapView.setOnMapClickListener(null); mMapView.getLocationClient().unRegisterListener(this); mMapView.setOnCameraChangeListener(null); - CallerLogger.INSTANCE.d(TAG, "map onDestroy"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "map onDestroy"); } } @@ -292,7 +311,7 @@ public class AMapViewWrapper implements IMogoMapView, public void onSaveInstanceState(Bundle outState) { if (mMapView != null) { mMapView.onSaveInstanceState(outState); - CallerLogger.INSTANCE.d(TAG, "map onSaveInstanceState"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "map onSaveInstanceState"); } } @@ -306,9 +325,9 @@ public class AMapViewWrapper implements IMogoMapView, if (isVrMold()) { return MapControlResult.ERROR; } - CallerLogger.INSTANCE.d(TAG, "changeZoom : " + zoom); + CallerLogger.INSTANCE.d(M_MAP+TAG, "changeZoom : " + zoom); if (DebugConfig.isDebug()) { - CallerLogger.INSTANCE.d(TAG, Log.getStackTraceString(new Throwable())); + CallerLogger.INSTANCE.d(M_MAP+TAG, Log.getStackTraceString(new Throwable())); } getMap().changeZoom(zoom); return MapControlResult.SUCCESS; @@ -322,7 +341,7 @@ public class AMapViewWrapper implements IMogoMapView, mVisualAngleMode = angelMode; if (angelMode == MODE_CLOSE_SIGHT) { if (mogoLatLng == null) { - CallerLogger.INSTANCE.e(TAG, "切换地图近景需要传入要移动的经纬度数据"); + CallerLogger.INSTANCE.e(M_MAP+TAG, "切换地图近景需要传入要移动的经纬度数据"); return; } // 近景传入经纬度为点击地图上静态marker经纬度数据,为GPS坐标点。 @@ -345,7 +364,7 @@ public class AMapViewWrapper implements IMogoMapView, private boolean checkAMapView() { if (mMapView == null || mMapView.getMapAutoViewHelper() == null) { - CallerLogger.INSTANCE.e(TAG, "自研mapView实例为空,请检查"); + CallerLogger.INSTANCE.e(M_MAP+TAG, "自研mapView实例为空,请检查"); return false; } return true; @@ -353,20 +372,20 @@ public class AMapViewWrapper implements IMogoMapView, @Override public void moveToCenter(MogoLatLng latLng, boolean animate) { - CallerLogger.INSTANCE.d(TAG, "move to center " + latLng); + CallerLogger.INSTANCE.d(M_MAP+TAG, "move to center " + latLng); if (latLng == null || latLng.lat == 0.0d || latLng.lon == 0.0d) { - CallerLogger.INSTANCE.e(TAG, "latlng = null or is illegal"); + CallerLogger.INSTANCE.e(M_MAP+TAG, "latlng = null or is illegal"); return; } if (DebugConfig.isDebug()) { - CallerLogger.INSTANCE.d(TAG, Log.getStackTraceString(new Throwable())); + CallerLogger.INSTANCE.d(M_MAP+TAG, Log.getStackTraceString(new Throwable())); } mMapView.getMapAutoViewHelper().animateCamera(new LonLatPoint(latLng.lon, latLng.lat)); } @Override public void showMyLocation(boolean visible) { - CallerLogger.INSTANCE.d(TAG, "showMyLocation1 " + visible); + CallerLogger.INSTANCE.d(M_MAP+TAG, "showMyLocation1 " + visible); // 如果是VR模式 if (isVrMold()) { return; @@ -388,7 +407,9 @@ public class AMapViewWrapper implements IMogoMapView, * @return true-是,false=不是 */ private boolean isVrMold() { - return mCurrentUI == EnumMapUI.MAP_STYLE_NIGHT_VR || mCurrentUI == EnumMapUI.MAP_STYLE_DAY_VR; + boolean isVrMode = mCurrentUI == EnumMapUI.MAP_STYLE_NIGHT_VR || mCurrentUI == EnumMapUI.MAP_STYLE_DAY_VR; + CallerLogger.INSTANCE.d(M_MAP+TAG, "是否是VR模式: " + isVrMode); + return isVrMode; } /** @@ -396,16 +417,18 @@ public class AMapViewWrapper implements IMogoMapView, * * @return true-是,false-不是 */ - private boolean isDayMold() { - return mCurrentUI == EnumMapUI.MAP_STYLE_DAY_VR + private boolean isDayMode() { + boolean isDayMode = mCurrentUI == EnumMapUI.MAP_STYLE_DAY_VR || mCurrentUI == EnumMapUI.MAP_STYLE_DAY || mCurrentUI == EnumMapUI.MAP_STYLE_DAY_NAV; + CallerLogger.INSTANCE.d(M_MAP+TAG, "是否是白天模式: " + isDayMode); + return isDayMode; } @Override public void showMyLocation(View view) { if (DebugConfig.isDebug()) { - CallerLogger.INSTANCE.d(TAG, Log.getStackTraceString(new Throwable())); + CallerLogger.INSTANCE.d(M_MAP+TAG, Log.getStackTraceString(new Throwable())); } if (checkAMapView()) { MyLocationStyle style = mMapView.getMapAutoViewHelper().getMyLocationStyle(); @@ -474,7 +497,7 @@ public class AMapViewWrapper implements IMogoMapView, if (isVrMold()) { return; } - CallerLogger.INSTANCE.d(TAG, "setPointToCenter x : " + mapCenterX + " y : " + mapCenterY); + CallerLogger.INSTANCE.d(M_MAP+TAG, "setPointToCenter x : " + mapCenterX + " y : " + mapCenterY); mMapView.getMapAutoViewHelper().setPointToCenter((float) mapCenterX, (float) mapCenterY); } } @@ -511,7 +534,7 @@ public class AMapViewWrapper implements IMogoMapView, if (checkAMapView()) { if (mMapView.getMapAutoViewHelper() != null) { mMapView.getMapAutoViewHelper().setRenderFps(fps); - CallerLogger.INSTANCE.d(TAG, "设置刷新帧率 fps = " + fps); + CallerLogger.INSTANCE.d(M_MAP+TAG, "设置刷新帧率 fps = " + fps); } } } @@ -522,16 +545,16 @@ public class AMapViewWrapper implements IMogoMapView, return; } if (isVrMold()) { - CallerLogger.INSTANCE.w(TAG, "vr 模式下忽略该设置"); + CallerLogger.INSTANCE.w(M_MAP+TAG, "vr 模式下忽略该设置"); return; } - CallerLogger.INSTANCE.i(TAG, "showBounds : " + tag + " , " + carPosition.toString() + " , " + bound.toShortString() + " , " + lockCarPosition); + CallerLogger.INSTANCE.i(M_MAP+TAG, "showBounds : " + M_MAP+TAG + " , " + carPosition.toString() + " , " + bound.toShortString() + " , " + lockCarPosition); try { LatLngBounds latLngBounds = MogoMapUtils.getLatLngBounds(carPosition, lonLats, lockCarPosition); mMapView.getMapAutoViewHelper().setCenter(ObjectUtils.fromMogo(carPosition)); mMapView.getMapAutoViewHelper().moveCamera(CameraUpdateFactory.INSTANCE.newLatLngBounds(latLngBounds, bound.left, bound.right, bound.top, bound.bottom)); } catch (Exception e) { - CallerLogger.INSTANCE.e(TAG, "tag : " + tag + " error : " + e); + CallerLogger.INSTANCE.e(M_MAP+TAG, "M_MAP+TAG : " + M_MAP+TAG + " error : " + e); } } @@ -674,14 +697,14 @@ public class AMapViewWrapper implements IMogoMapView, if (!mIsDelayed) { mIsDelayed = true; UiThreadHandler.postDelayed(() -> { - //CallerLogger.INSTANCE.d(TAG, "倒计时结束"); + //CallerLogger.INSTANCE.d(M_MAP+TAG, "倒计时结束"); mIsFirstLocated = false; }, 5_000L); } } else { mIsFirstLocated = true; mIsDelayed = false; - CallerLogger.INSTANCE.d(TAG, "同步定位:" + GsonUtils.toJson(location)); + CallerLogger.INSTANCE.d(M_MAP+TAG, "同步定位:" + GsonUtils.toJson(location)); } } } @@ -694,13 +717,13 @@ public class AMapViewWrapper implements IMogoMapView, @Override public void onMapInit() { - CallerLogger.INSTANCE.i(TAG, "autoop--onMapInit: "); + CallerLogger.INSTANCE.i(M_MAP+TAG, "autoop--onMapInit: "); MogoMapListenerHandler.getInstance().onMapLoaded(); } @Override public void onMapLoaded() { - CallerLogger.INSTANCE.i(TAG, "autoop--onMapLoaded: "); + CallerLogger.INSTANCE.i(M_MAP+TAG, "autoop--onMapLoaded: "); mMapLoaded = true; CameraPosition cameraPosition = mMapView.getMapAutoViewHelper().getCameraPosition(); Trace.beginSection("timer.onCameraChangeFinish"); @@ -727,18 +750,18 @@ public class AMapViewWrapper implements IMogoMapView, @Override public void onRoadLoaded(@Nullable String s) { - CallerLogger.INSTANCE.i(TAG, "autoop--onMapLoaded: "); + CallerLogger.INSTANCE.i(M_MAP+TAG, "autoop--onMapLoaded: "); } @Override public void onMapStatusChanged(int type, int value) { - //CallerLogger.INSTANCE.i(TAG, "mapop--onMapStatusChanged-: " + type + "," + value); + //CallerLogger.INSTANCE.i(M_MAP+TAG, "mapop--onMapStatusChanged-: " + type + "," + value); } @Override public void onMapViewVisualAngleChange(int i) { - CallerLogger.INSTANCE.d(TAG, " 地图自动更改视距 currentThread : " + Thread.currentThread().getName()); + CallerLogger.INSTANCE.d(M_MAP+TAG, " 地图自动更改视距 currentThread : " + Thread.currentThread().getName()); mVisualAngleMode = getVisualAngleMode(i); MogoMapListenerHandler.getInstance().onMapVisualAngleChanged(mVisualAngleMode); } @@ -770,12 +793,12 @@ public class AMapViewWrapper implements IMogoMapView, @Override public void onCameraChange(int type, int value) { - //CallerLogger.INSTANCE.i(TAG, "mapop--onCameraChange-: " + type + "," + value); + //CallerLogger.INSTANCE.i(M_MAP+TAG, "mapop--onCameraChange-: " + type + "," + value); } @Override public void onCameraChangeFinish(@Nullable CameraPosition cameraPosition) { - // CallerLogger.INSTANCE.i( TAG, "mapop--onCameraChangeFinish-: " + cameraPosition + "cost:" + ( System.currentTimeMillis() - startTime ) ); + // CallerLogger.INSTANCE.i( M_MAP+TAG, "mapop--onCameraChangeFinish-: " + cameraPosition + "cost:" + ( System.currentTimeMillis() - startTime ) ); if (cameraPosition != null) { Trace.beginSection("timer.onCameraChangeFinish"); MogoMapListenerHandler.getInstance().onMapChanged(ObjectUtils.fromAMap(cameraPosition.getTarget()), @@ -788,8 +811,8 @@ public class AMapViewWrapper implements IMogoMapView, @Override public void onChangeMapStyle(int styleId) { - CallerLogger.INSTANCE.d(TAG, "currentMapStyle = " + styleId); - CallerLogger.INSTANCE.d(TAG, Log.getStackTraceString(new Throwable())); + CallerLogger.INSTANCE.d(M_MAP+TAG, "currentMapStyle = " + styleId); + CallerLogger.INSTANCE.d(M_MAP+TAG, Log.getStackTraceString(new Throwable())); // 映射地图样式ID到鹰眼样式ID if (styleId == MapAutoApi.MAP_STYLE_DAY @@ -810,7 +833,7 @@ public class AMapViewWrapper implements IMogoMapView, if (mCurrentUI != null) { UiThreadHandler.post(() -> { try { - CallerLogger.INSTANCE.d(TAG, "currentUI = " + mCurrentUI); + CallerLogger.INSTANCE.d(M_MAP+TAG, "currentUI = " + mCurrentUI); MogoMapListenerHandler.getInstance().onMapModeChanged(mCurrentUI); CallerMapStyleListenerManager.INSTANCE.invokeMapStyleChange(styleId); } catch (Exception e) { @@ -830,7 +853,7 @@ public class AMapViewWrapper implements IMogoMapView, TipToast.shortTip(mRtkEnable ? "已开启rtk道路匹配" : "已开启gps道路匹配"); mMapView.getLocationClient().rtkEnable(mRtkEnable); } catch (Exception e) { - CallerLogger.INSTANCE.e(TAG, "rtkEnable has exception : " + e); + CallerLogger.INSTANCE.e(M_MAP+TAG, "rtkEnable has exception : " + e); } } @@ -840,7 +863,7 @@ public class AMapViewWrapper implements IMogoMapView, return; } if (data == null) { - CallerLogger.INSTANCE.d(TAG, "停止使用rtk定位数据"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "停止使用rtk定位数据"); return; } double lon = data.optDouble("lon", -1); @@ -934,8 +957,11 @@ public class AMapViewWrapper implements IMogoMapView, } + /** + * 加载3D模型 + */ private void loadPreVehicleModel() { - CallerLogger.INSTANCE.d(TAG, "添加感知模型到地图中……"); + CallerLogger.INSTANCE.d(M_MAP+TAG, "添加感知模型到地图中……"); addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_WEI_ZHI, "添加感知模型到地图中……preVehicleStrWeiZhi="); addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_PEOPLE, "添加感知模型到地图中……preVehicleStrPeople="); @@ -960,7 +986,7 @@ public class AMapViewWrapper implements IMogoMapView, private void addPreVehicleModelWeiZhi(TrafficTypeEnum typeTrafficId, String logMsg) { String preVehicleStrWeiZhi; // 根据当前的地图皮肤模式动态替换 - if (isDayMold()) { + if (isDayMode()) { preVehicleStrWeiZhi = // 添加模型到地图中 MogoMarkerManager.getInstance(getContext()) @@ -972,11 +998,11 @@ public class AMapViewWrapper implements IMogoMapView, .addPreVehicleModel(typeTrafficId.getType(), typeTrafficId.getTraffic3DNightIconId()); } - CallerLogger.INSTANCE.d(TAG, logMsg + preVehicleStrWeiZhi); + CallerLogger.INSTANCE.d(M_MAP+TAG, logMsg + preVehicleStrWeiZhi); if (preVehicleStrWeiZhi == null) { UiThreadHandler.postDelayed(() -> { - CallerLogger.INSTANCE.w(TAG, "添加感知模型到地图中失败,尝试重复添加……"); + CallerLogger.INSTANCE.w(M_MAP+TAG, "添加感知模型到地图中失败,尝试重复添加……"); addPreVehicleModelWeiZhi(typeTrafficId, logMsg); }, 1000L); } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/CustomMapApiBuilder.java b/libraries/mogo-map/src/main/java/com/mogo/map/CustomMapApiBuilder.java index b91b0ac345..c327f9e862 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/CustomMapApiBuilder.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/CustomMapApiBuilder.java @@ -4,6 +4,7 @@ import android.content.Context; import android.util.Log; import com.alibaba.android.arouter.facade.annotation.Route; +import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.map.location.ALocationClient; import com.mogo.map.location.IMogoLocationClient; @@ -64,8 +65,8 @@ public class CustomMapApiBuilder implements IMogoMapApiBuilder { // .setPointToCenter( 0.734375f, 0.5f ) //todo 2D模式下需要注意ADAS部分遮挡 //.setPointToCenter(0.5f, 0.5f) - // 默认地图样式 - .setStyleMode(MapParams.MAP_STYLE_NIGHT_VR); + // 根据 FunctionBuildConfig 配置的皮肤样式设置题图的样式 + .setStyleMode(FunctionBuildConfig.skinMode == 0 ? MapParams.MAP_STYLE_NIGHT_VR : MapParams.MAP_STYLE_DAY_VR); MapAutoApi.INSTANCE.init(context, mapParams); MapAutoView mapAutoView = new MapAutoView(context); From a6c6c0f96e9434ffc9ba84b7b2e65601c000e6bf Mon Sep 17 00:00:00 2001 From: zhongchao Date: Thu, 14 Apr 2022 13:16:25 +0800 Subject: [PATCH 2/5] fix aicloud of loctype problem --- .../impl/collect/MoGoMapDataCollectProvider.kt | 2 +- .../main/java/com/mogo/map/utils/ObjectUtils.java | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/collect/MoGoMapDataCollectProvider.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/collect/MoGoMapDataCollectProvider.kt index 7d182921df..4bedb63ea8 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/collect/MoGoMapDataCollectProvider.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/collect/MoGoMapDataCollectProvider.kt @@ -155,7 +155,7 @@ class MoGoMapDataCollectProvider : IMoGoMapDataCollectProvider, OnTaskListener, location.latitude, location.bearing, location.speed, - location.provider == "GPS_SELF") + location.provider == "GPS_RTK") } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java b/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java index d2dae39072..6db2022059 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java @@ -157,7 +157,19 @@ public class ObjectUtils { return null; } MogoLocation location = new MogoLocation(); - location.setLocType(1); // 定位类型 + + //agps 高德 + //agps_rtk 高德-高精 + if (aLocation.getProvider().isEmpty()) { + location.setLocType(0); + } + if ("AGPS".equals(aLocation.getProvider())) { + location.setLocType(1); // 定位类型为高德坐标(网路或者硬件定位) + } else if ("AGPS_RTK".equals(aLocation.getProvider())) { + location.setLocType(1000); // 定位类型为WGS84进行转译的坐标 + } else { + location.setLocType(0); + } location.setSatellite(4); location.setSpeed(aLocation.getSpeed()); location.setLatitude(aLocation.getLat()); From 971309c6788f8f3c1352f2377b5d9fa553ea4f4b Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Thu, 14 Apr 2022 14:16:17 +0800 Subject: [PATCH 3/5] delete bus passger dialog --- .../core/function/obu/mogo/MoGoObuProvider.kt | 27 +++++++++++++------ .../eagle/core/function/v2x/V2XProvider.kt | 19 ++++++++++--- 2 files changed, 35 insertions(+), 11 deletions(-) diff --git a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MoGoObuProvider.kt b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MoGoObuProvider.kt index 6fb5911cc7..e427bfe345 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MoGoObuProvider.kt +++ b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MoGoObuProvider.kt @@ -2,9 +2,11 @@ package com.mogo.eagle.core.function.obu.mogo import android.content.Context import com.alibaba.android.arouter.facade.annotation.Route +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.constants.MoGoConfig import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.function.api.obu.IMoGoObuProvider +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OBU import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr @@ -29,18 +31,27 @@ class MoGoObuProvider : IMoGoObuProvider { override fun init(context: Context) { CallerLogger.d("$M_OBU$TAG", "初始化蘑菇自研OBU……") - mContext = context - val ipAddress = - SharedPrefsMgr.getInstance(context).getString(MoGoConfig.OBU_IP, "192.168.1.199") - MogoPrivateObuManager.INSTANCE.init(context, ipAddress) + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + //不处理 + } else { + mContext = context + val ipAddress = + SharedPrefsMgr.getInstance(context).getString(MoGoConfig.OBU_IP, "192.168.1.199") + MogoPrivateObuManager.INSTANCE.init(context, ipAddress) + } } override fun connect(ipAddress: String) { - mContext?.let { - // 保存本地OBU IP地址 - SharedPrefsMgr.getInstance(it).putString(MoGoConfig.OBU_IP, ipAddress) - MogoPrivateObuManager.INSTANCE.connectObu(it, ipAddress) + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + //不处理 + } else { + mContext?.let { + // 保存本地OBU IP地址 + SharedPrefsMgr.getInstance(it).putString(MoGoConfig.OBU_IP, ipAddress) + MogoPrivateObuManager.INSTANCE.connectObu(it, ipAddress) + } } + } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/V2XProvider.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/V2XProvider.kt index 1c4dd60b5e..bd61805e39 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/V2XProvider.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/V2XProvider.kt @@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.v2x import android.content.Context import com.alibaba.android.arouter.facade.annotation.Route +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.constants.MogoServicePaths.PATH_V2X_MODULE import com.mogo.eagle.core.function.api.base.IMoGoFunctionServerProvider import com.mogo.eagle.core.function.call.trafficlight.CallTrafficLightManager @@ -9,6 +10,7 @@ import com.mogo.eagle.core.function.v2x.events.V2XEventManager import com.mogo.eagle.core.function.v2x.redlightwarning.RedLightWarningManager import com.mogo.eagle.core.function.v2x.speedlimit.SpeedLimitDataManager import com.mogo.eagle.core.function.v2x.vip.VipCarManager +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils @Route(path = PATH_V2X_MODULE) class V2XProvider : IMoGoFunctionServerProvider { @@ -20,14 +22,25 @@ class V2XProvider : IMoGoFunctionServerProvider { CallTrafficLightManager.getTrafficLightProvider().initTrafficLightServer(context) VipCarManager.INSTANCE.initServer(context) SpeedLimitDataManager.getInstance().start() - V2XEventManager.init(context) - SpeedLimitDataManager.getInstance().start(); + + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + //不处理 + } else { + V2XEventManager.init(context) + } + // RedLightWarningManager.INSTANCE.listenTrafficLight() } override fun onDestroy() { VipCarManager.INSTANCE.destroy() - V2XEventManager.onDestroy() + + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + //不处理 + } else { + V2XEventManager.onDestroy() + } + // RedLightWarningManager.INSTANCE.onDestroy() } } \ No newline at end of file From af14f38a735ffe2e0bb855f7829566fa1c47e6b0 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Thu, 14 Apr 2022 14:51:24 +0800 Subject: [PATCH 4/5] =?UTF-8?q?[driver=20passenger=20]=20bus=E4=B9=98?= =?UTF-8?q?=E5=AE=A2=E5=B1=8F=201=E3=80=81UI=E8=B5=B0=E6=9F=A5=202?= =?UTF-8?q?=E3=80=81=E9=9A=90=E8=97=8F=E6=91=84=E5=83=8F=E5=A4=B4=203?= =?UTF-8?q?=E3=80=81=E5=B0=8F=E5=9C=B0=E5=9B=BE=E6=98=BE=E7=A4=BA=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bus/passenger/MogoOCHBusPassenger.java | 5 +- .../passenger/model/BusPassengerModel.java | 3 + .../ui/BusPassengerBaseFragment.java | 2 +- .../ui/BusPassengerMapDirectionView.java | 128 +++--- .../ui/BusPassengerRouteFragment.java | 233 ++-------- .../ui/BusPassengerTrafficLightView.java | 9 - .../utils/BPCoordinateCalculateRouteUtil.java | 8 + .../passenger/utils/BPRouteDataTestUtils.java | 222 ++++++++++ .../bus_p_light_green_nor.png | Bin 13677 -> 13615 bytes .../bus_p_light_red_nor.png | Bin 12901 -> 12368 bytes .../bus_p_light_yellow_nor.png | Bin 12751 -> 12771 bytes .../bus_p_map_view_dir_end.png | Bin 628 -> 0 bytes .../bus_p_map_view_dir_end_point.png | Bin 0 -> 8319 bytes .../bus_p_map_view_dir_way_point.png | Bin 10407 -> 628 bytes .../drawable-xhdpi/bus_p_light_green_nor.png | Bin 13677 -> 13615 bytes .../drawable-xhdpi/bus_p_light_red_nor.png | Bin 12901 -> 12368 bytes .../drawable-xhdpi/bus_p_light_yellow_nor.png | Bin 12751 -> 12771 bytes .../drawable-xhdpi/bus_p_map_view_dir_end.png | Bin 628 -> 0 bytes .../bus_p_map_view_dir_end_point.png | Bin 0 -> 8319 bytes .../bus_p_map_view_dir_start.png | Bin 842 -> 0 bytes .../bus_p_map_view_dir_way_point.png | Bin 10407 -> 628 bytes .../src/main/res/drawable/bus_p_route_bg.xml | 4 +- .../main/res/layout/bus_p_route_fragment.xml | 1 - .../res/layout/bus_p_stations_end_item.xml | 6 +- .../res/layout/bus_p_stations_middle_item.xml | 2 +- .../res/layout/bus_p_stations_start_item.xml | 6 +- .../res/layout/bus_p_traffic_light_view.xml | 2 + .../src/main/res/values-sw320dp/dimens.xml | 11 +- .../src/main/res/values/colors.xml | 1 + .../src/main/res/values/dimens.xml | 11 +- .../com/mogo/och/taxi/ui/TaxiFragment.java | 397 +++++++++--------- .../och/taxi/utils/TPRouteDataTestUtils.java | 46 ++ .../com/mogo/launcher/MogoApplication.java | 7 + gradle.properties | 2 +- 34 files changed, 596 insertions(+), 510 deletions(-) create mode 100644 OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java delete mode 100644 OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end.png create mode 100644 OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end_point.png delete mode 100644 OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_end.png create mode 100644 OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_end_point.png delete mode 100644 OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_start.png create mode 100644 OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java index c341867ff3..30cbec38f9 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java @@ -7,6 +7,7 @@ import androidx.fragment.app.FragmentActivity; import com.alibaba.android.arouter.facade.annotation.Route; import com.elegant.utils.UiThreadHandler; +import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.map.MogoMapUIController; import com.mogo.module.common.MogoApisHandler; @@ -44,7 +45,7 @@ public class MogoOCHBusPassenger implements IMogoOCH, IMogoStatusChangedListener this.mActivity = activity; this.mContainerId = containerId; - UiThreadHandler.post(() -> stepIntoVrMode()); +// UiThreadHandler.post(() -> stepIntoVrMode()); return null; } @@ -85,6 +86,8 @@ public class MogoOCHBusPassenger implements IMogoOCH, IMogoStatusChangedListener CallerLogger.INSTANCE.d( M_TAXI_P + TAG, "进入vr模式" ); MogoMapUIController.getInstance() .stepInVrMode( true ); // 白天模式 + + CallerMoGoUiSettingManager.INSTANCE.stepInDayMode();//白天模式 状态栏字体颜色变黑 } private void showFragment() { diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java index c52d87aa10..c8760c77c0 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java @@ -329,6 +329,9 @@ public class BusPassengerModel { if (DebugConfig.isDebug()) { // TipToast.shortTip("到达目的地"); } + if (mADASStatusCallback != null){ + mADASStatusCallback.onAutopilotArriveEnd(); + } } }; diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java index 870974f144..2de8fb267d 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java @@ -115,7 +115,7 @@ public abstract class BusPassengerBaseFragment距离 " + "" + dis + "" + " "+disUnit+"" - + ""+" "+"剩余 " + "" + (int)Math.ceil((double)timeInSecond/ 60f) + "" + " 分钟"; + + "   剩余 " + "" + (int)Math.ceil((double)timeInSecond/ 60f) + "" + " 分钟"; mCurrentArriveTip.setText(Html.fromHtml(strHtml2)); } diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java index 7ca457caee..65c3593f31 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java @@ -56,14 +56,17 @@ public class BusPassengerMapDirectionView private Marker mStartMarker; private Marker mEndMarker; + private int mCurrentIndex = -1; + private int zoomLevel = 13; private List mCoordinatesLatLng = new ArrayList<>(); - private List mWayPointsLatLng = new ArrayList<>(); + private List mLinePointsLatLng = new ArrayList<>(); private Polyline mPolyline; private CameraUpdate mCameraUpdate; private Context mContext; private List colorList = new ArrayList<>(); + private List mLineMarkers = new ArrayList<>(); private IBusPassengerMapViewCallback mIBusPassengerMapViewCallback; @@ -84,7 +87,7 @@ public class BusPassengerMapDirectionView } } - public void setTaxiPassengerMapViewCallback(IBusPassengerMapViewCallback iBusPassengerMapViewCallback){ + public void setTaxiPassengerMapViewCallback(IBusPassengerMapViewCallback iBusPassengerMapViewCallback) { this.mIBusPassengerMapViewCallback = iBusPassengerMapViewCallback; } @@ -111,7 +114,7 @@ public class BusPassengerMapDirectionView } private void initAMapView() { - mCameraUpdate = CameraUpdateFactory.zoomTo(zoomLevel); +// mCameraUpdate = CameraUpdateFactory.zoomTo(zoomLevel); mAMap = mAMapNaviView.getMap(); // 设置导航地图模式,aMap是地图控制器对象。 mAMap.setMapType(AMap.MAP_TYPE_NIGHT); @@ -124,20 +127,20 @@ public class BusPassengerMapDirectionView .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_car)) .anchor(0.5f, 0.5f)); mStartMarker = mAMap.addMarker(new MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_start))); + .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_way_point))); mEndMarker = mAMap.addMarker(new MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_end))); + .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_end_point))); // 加载自定义样式 CustomMapStyleOptions customMapStyleOptions = new CustomMapStyleOptions() .setEnable(true) - .setStyleData(BusPassengerMapAssetStyleUtil.getAssetsStyle(getContext(),"map_style.data")) - .setStyleExtraData(BusPassengerMapAssetStyleUtil.getAssetsExtraStyle(getContext(),"map_style_extra.data")); + .setStyleData(BusPassengerMapAssetStyleUtil.getAssetsStyle(getContext(), "map_style.data")) + .setStyleExtraData(BusPassengerMapAssetStyleUtil.getAssetsExtraStyle(getContext(), "map_style_extra.data")); // 设置自定义样式 mAMap.setCustomMapStyle(customMapStyleOptions); //设置希望展示的地图缩放级别 - mAMap.moveCamera(mCameraUpdate); +// mAMap.moveCamera(mCameraUpdate); // 设置地图的样式 UiSettings uiSettings = mAMap.getUiSettings(); @@ -153,8 +156,8 @@ public class BusPassengerMapDirectionView // 加载自定义样式 CustomMapStyleOptions customMapStyleOptions = new CustomMapStyleOptions() .setEnable(true) - .setStyleData(BusPassengerMapAssetStyleUtil.getAssetsStyle(getContext(),"map_style.data")) - .setStyleExtraData(BusPassengerMapAssetStyleUtil.getAssetsExtraStyle(getContext(),"map_style_extra.data")); + .setStyleData(BusPassengerMapAssetStyleUtil.getAssetsStyle(getContext(), "map_style.data")) + .setStyleExtraData(BusPassengerMapAssetStyleUtil.getAssetsExtraStyle(getContext(), "map_style_extra.data")); // 设置自定义样式 mAMap.setCustomMapStyle(customMapStyleOptions); mAMapNaviView.getMap().setPointToCenter(mAMapNaviView.getWidth() / 2, mAMapNaviView.getHeight() / 2); @@ -174,8 +177,8 @@ public class BusPassengerMapDirectionView @Override public void onLocationChanged(@Nullable MogoLocation location) { - CallerLogger.INSTANCE.d(M_BUS_P + TAG, "onCarLocationChanged2 :" + location.getLatitude()+":"+location.getLongitude()); - if (location == null){ + CallerLogger.INSTANCE.d(M_BUS_P + TAG, "onCarLocationChanged2 :" + location.getLatitude() + ":" + location.getLongitude()); + if (location == null) { return; } LatLng currentLatLng = new LatLng(location.getLatitude(), location.getLongitude()); @@ -188,21 +191,17 @@ public class BusPassengerMapDirectionView mCarMarker.setToTop(); } - if (mCoordinatesLatLng.size() > 1) { + if (mLinePointsLatLng.size() > 1){ //圈定地图显示范围 - LatLng endLatLng = mCoordinatesLatLng.get(mCoordinatesLatLng.size() - 1); - LatLng startLatLng = mCoordinatesLatLng.get(0); //存放经纬度 LatLngBounds.Builder boundsBuilder = new LatLngBounds.Builder(); - boundsBuilder.include(startLatLng); - boundsBuilder.include(endLatLng); - for (int i=0;i < mWayPointsLatLng.size();i++){ - boundsBuilder.include(mWayPointsLatLng.get(i)); + for (int i = 0; i < mLinePointsLatLng.size(); i++) { + boundsBuilder.include(mLinePointsLatLng.get(i)); } //第二个参数为四周留空宽度 - mAMap.animateCamera(CameraUpdateFactory.newLatLngBounds(boundsBuilder.build(), 100)); + mAMap.animateCamera(CameraUpdateFactory.newLatLngBoundsRect(boundsBuilder.build(),100,100,100,100)); - } else { + }else { //设置希望展示的地图缩放级别 CameraPosition cameraPosition = new CameraPosition.Builder() .target(mCarMarker.getPosition()).tilt(0).bearing(location.getBearing()).zoom(zoomLevel).build(); @@ -240,15 +239,6 @@ public class BusPassengerMapDirectionView mPolyline = mAMap.addPolyline(polylineOptions); } - - if (mWayPointsLatLng.size() > 0){ - for (int i =0 ;i< mWayPointsLatLng.size(); i++){ - Marker mWayPointMarker = mAMap.addMarker(new MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_way_point))); - mWayPointMarker.setPosition(mWayPointsLatLng.get(i)); - mWayPointMarker.setVisible(true); - } - } } } @@ -256,29 +246,11 @@ public class BusPassengerMapDirectionView * 添加画线颜色值 */ private void addRouteColorList() { - for (int i = 0; i < mCoordinatesLatLng.size(); i++){ + for (int i = 0; i < mCoordinatesLatLng.size(); i++) { colorList.add(Color.argb(255, 70, 147, 253));//路线颜色 } } - - public LatLng CoordinateConverterFrom84(Context mContext, MogoLatLng mogoLatLng) { - CoordinateConverter mCoordinateConverter = new CoordinateConverter(mContext); - mCoordinateConverter.from(CoordinateConverter.CoordType.GPS); - mCoordinateConverter.coord(new LatLng(mogoLatLng.lat, mogoLatLng.lon)); - LatLng latLng = mCoordinateConverter.convert(); - return latLng; - } - - public List CoordinateConverterFrom84ForList(Context mContext, List mogoLatLngList) { - List list = new ArrayList<>(); - for (MogoLatLng m : mogoLatLngList) { - LatLng mogoLatLng = CoordinateConverterFrom84(mContext, m); - list.add(mogoLatLng); - } - return list; - } - @Override public void clearPolyline() { if (mPolyline != null) { @@ -292,19 +264,6 @@ public class BusPassengerMapDirectionView } } - public void resetPolyine() { - mCoordinatesLatLng.clear(); - if (mPolyline != null) { - mPolyline.remove(); - } - if (mStartMarker != null) { - mStartMarker.setVisible(false); - } - if (mEndMarker != null) { - mEndMarker.setVisible(false); - } - } - public void onCreateView(Bundle savedInstanceState) { if (mAMapNaviView != null) { mAMapNaviView.onCreate(savedInstanceState); @@ -321,28 +280,53 @@ public class BusPassengerMapDirectionView if (mAMapNaviView != null) { mAMapNaviView.onPause(); } + mCurrentIndex = -1; } public void onDestroy() { if (mAMapNaviView != null) { mAMapNaviView.onDestroy(); } + mCurrentIndex = -1; } - public void convert(List coordinates) { - mCoordinatesLatLng.clear(); - List latLngs = CoordinateConverterFrom84ForList(mContext, coordinates); - mCoordinatesLatLng.addAll(latLngs); - } - - public void setCoordinatesLatLng(List latLngs){ + public void setCoordinatesLatLng(List latLngs) { mCoordinatesLatLng.clear(); mCoordinatesLatLng.addAll(latLngs); } - public void setWayPointMarker(List wayPointLatLngs){ - mWayPointsLatLng.clear(); - mCoordinatesLatLng.addAll(wayPointLatLngs); + public void setLinePointMarkerAndDraw(List routeLineLatLngs, int currentIndex) { + mLinePointsLatLng.clear(); + mLineMarkers.clear(); + mLinePointsLatLng.addAll(routeLineLatLngs); + for (int i = 0; i < mLinePointsLatLng.size(); i++) { + Marker mWayPointMarker = mAMap.addMarker(new MarkerOptions() + .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_way_point))); + mLineMarkers.add(mWayPointMarker); + } + + if (mCoordinatesLatLng.size() == 0) { + for (int i = 0; i < mLineMarkers.size(); i++) { + mLineMarkers.get(i).setPosition(mLinePointsLatLng.get(i)); + mLineMarkers.get(i).setVisible(true); + } + mCurrentIndex = -1; + return; + } + + if (mCurrentIndex != currentIndex) { + if (mAMap != null && mLineMarkers.size() > 0) { + mCurrentIndex = currentIndex; + for (int i = 0; i < mLineMarkers.size(); i++) { + if (i != currentIndex && i + 1 != currentIndex) { + mLineMarkers.get(i).setPosition(mLinePointsLatLng.get(i)); + mLineMarkers.get(i).setVisible(true); + } else { + mLineMarkers.get(i).setVisible(false); + } + } + } + } } @Override diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java index 52187371bc..dab37fe048 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java @@ -22,19 +22,13 @@ import com.mogo.och.bus.passenger.R; import com.mogo.och.bus.passenger.adapter.BusPassengerLineStationsAdapter; import com.mogo.och.bus.passenger.bean.BusPassengerStation; import com.mogo.och.bus.passenger.callback.IBusPassengerMapViewCallback; -import com.mogo.och.bus.passenger.model.BusPassengerModel; import com.mogo.och.bus.passenger.presenter.BaseBusPassengerPresenter; - -import org.jetbrains.annotations.NotNull; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; +import com.mogo.och.bus.passenger.utils.BPCoordinateCalculateRouteUtil; +import com.mogo.och.bus.passenger.utils.BPRouteDataTestUtils; import java.util.ArrayList; import java.util.List; -import mogo.telematics.pad.MessagePad; - import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS_P; /** @@ -48,7 +42,7 @@ public class BusPassengerRouteFragment extends private BusPassengerTrafficLightView mTrafficLightView; private List mStationsList = new ArrayList<>(); - private List mWayPointsList = new ArrayList<>(); + private List mRoutePointsList = new ArrayList<>(); private TextView mSpeedTv; private ConstraintLayout mNoLineInfoView; @@ -100,196 +94,13 @@ public class BusPassengerRouteFragment extends mSpeedTv.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { - String listStr = "{\"models\":[{\n" + - "\t\t\"lat\": 40.19927810144466,\n" + - "\t\t\"lon\": 116.73527259387767\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19927836356079,\n" + - "\t\t\"lon\": 116.73513114732762\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19927759500293,\n" + - "\t\t\"lon\": 116.73497660879111\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.199264819842284,\n" + - "\t\t\"lon\": 116.73480063747202\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1992510141554,\n" + - "\t\t\"lon\": 116.73463922037767\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.199245872804,\n" + - "\t\t\"lon\": 116.73445960685193\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19924673374912,\n" + - "\t\t\"lon\": 116.73427704009703\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19924747108264,\n" + - "\t\t\"lon\": 116.7340707102972\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19924828745573,\n" + - "\t\t\"lon\": 116.73385916927226\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19924941093133,\n" + - "\t\t\"lon\": 116.73364048294795\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19924939253381,\n" + - "\t\t\"lon\": 116.73340837408566\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19924949105934,\n" + - "\t\t\"lon\": 116.73317368725336\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19925040039033,\n" + - "\t\t\"lon\": 116.73296532811216\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1992515355653,\n" + - "\t\t\"lon\": 116.73277787366743\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1992512720328,\n" + - "\t\t\"lon\": 116.73263377253741\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.199205174954606,\n" + - "\t\t\"lon\": 116.73249773114644\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1991015743076,\n" + - "\t\t\"lon\": 116.7324219601283\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.198971862686285,\n" + - "\t\t\"lon\": 116.73239393296355\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19883883071582,\n" + - "\t\t\"lon\": 116.73237676435652\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19870171355796,\n" + - "\t\t\"lon\": 116.73236052150362\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1985491853193,\n" + - "\t\t\"lon\": 116.73234157857011\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1983890047355,\n" + - "\t\t\"lon\": 116.73232167996464\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1982209877466,\n" + - "\t\t\"lon\": 116.73230101645792\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.198037574138326,\n" + - "\t\t\"lon\": 116.73227735486083\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19787327856243,\n" + - "\t\t\"lon\": 116.73225676816314\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19771917207499,\n" + - "\t\t\"lon\": 116.73223814728027\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.197548305175935,\n" + - "\t\t\"lon\": 116.73221624705808\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19739568979691,\n" + - "\t\t\"lon\": 116.73219618210774\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19724703821575,\n" + - "\t\t\"lon\": 116.73217598293311\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1970956560885,\n" + - "\t\t\"lon\": 116.73215773721505\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19697703483188,\n" + - "\t\t\"lon\": 116.73214337172284\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19687000725696,\n" + - "\t\t\"lon\": 116.73210037067965\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.196833449601726,\n" + - "\t\t\"lon\": 116.73196646708011\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19685833847804,\n" + - "\t\t\"lon\": 116.73181315361103\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.196889170203264,\n" + - "\t\t\"lon\": 116.73164355747393\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19692242860347,\n" + - "\t\t\"lon\": 116.7314555399657\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19696431701069,\n" + - "\t\t\"lon\": 116.7312261834129\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19700025925464,\n" + - "\t\t\"lon\": 116.73102774016093\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19703414798773,\n" + - "\t\t\"lon\": 116.73084270562073\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19707287604138,\n" + - "\t\t\"lon\": 116.73062835248406\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19710951629977,\n" + - "\t\t\"lon\": 116.73041744082339\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19714593807105,\n" + - "\t\t\"lon\": 116.73021414314803\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.197183297026285,\n" + - "\t\t\"lon\": 116.7300057066447\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.1972247359487,\n" + - "\t\t\"lon\": 116.7297751515664\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19726518822745,\n" + - "\t\t\"lon\": 116.72954958923812\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19730538240706,\n" + - "\t\t\"lon\": 116.72932440756041\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19734272112662,\n" + - "\t\t\"lon\": 116.72911631453036\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.197379191549075,\n" + - "\t\t\"lon\": 116.72890982812105\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.197417565369314,\n" + - "\t\t\"lon\": 116.72869447869044\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19746052080799,\n" + - "\t\t\"lon\": 116.72845641541247\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19750040582118,\n" + - "\t\t\"lon\": 116.72823569991117\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19753999704064,\n" + - "\t\t\"lon\": 116.72801998373052\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19757796882569,\n" + - "\t\t\"lon\": 116.72781280504363\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.197617062364586,\n" + - "\t\t\"lon\": 116.72759949431683\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19765391602761,\n" + - "\t\t\"lon\": 116.72739776789756\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19768973009218,\n" + - "\t\t\"lon\": 116.72719980764646\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.197726191028785,\n" + - "\t\t\"lon\": 116.72699719861669\n" + - "\t}, {\n" + - "\t\t\"lat\": 40.19776233489642,\n" + - "\t\t\"lon\": 116.72679516155276\n" + - "\t}]}\n"; - List list = new ArrayList<>(); - try { - JSONObject jsonObject = new JSONObject(listStr); - JSONArray jsonElements = jsonObject.getJSONArray("models"); - for (int i = 0; i < jsonElements.length(); i++){ - JSONObject s = jsonElements.getJSONObject(i); - MessagePad.Location.Builder routeModels = MessagePad.Location.newBuilder(); - routeModels.setLatitude(s.getDouble("lat")); - routeModels.setLongitude(s.getDouble("lon")); - list.add(routeModels.build()); + BPRouteDataTestUtils.converToRouteData(); + UiThreadHandler.postDelayed(new Runnable() { + @Override + public void run() { + updateWayPointList(mStationsList,1); } - BusPassengerModel.getInstance().updateRoutePoints(list); - } catch (JSONException e) { - e.printStackTrace(); - } + },1000); return false; } }); @@ -343,7 +154,6 @@ public class BusPassengerRouteFragment extends */ private void drawablePolyline(List coordinates) { if (mMapDirectionView != null) { - mMapDirectionView.setWayPointMarker(mWayPointsList); mMapDirectionView.setCoordinatesLatLng(coordinates); UiThreadHandler.post(new Runnable() { @Override @@ -354,12 +164,13 @@ public class BusPassengerRouteFragment extends } } - private void clearPolyline() { + public void clearPolyline() { if (mMapDirectionView != null) { UiThreadHandler.post(new Runnable() { @Override public void run() { mMapDirectionView.clearPolyline(); + } }); } @@ -385,22 +196,30 @@ public class BusPassengerRouteFragment extends } } + /** + * + * @param stations + * @param currentStationIndex + * @param isArrived 是否到站并离开,true 到达当前站 currentStationIndex 未离开, false 正在前往此站 currentStationIndex + */ public void updateStationsInfo(List stations, int currentStationIndex,boolean isArrived) { updateArrivedStation(stations.get(currentStationIndex).getName(),currentStationIndex,isArrived); mStationsList.clear(); mStationsList.addAll(stations); mAdapter.notifyDataSetChanged(); - if (stations.size() > 2){ - updateWayPointList(stations); + if (stations.size() > 0){ + updateWayPointList(stations,currentStationIndex); } } - private void updateWayPointList(List stations) { - mWayPointsList.clear(); - for (int i = 1; i< stations.size() -1; i++) {//去除路线的起点和终点, 只要中间途径站点 - LatLng latLng = new LatLng(stations.get(i).getLat(),stations.get(i).getLon());// lat,lon - mWayPointsList.add(latLng); + private void updateWayPointList(List stations,int currentStationIndex) { + mRoutePointsList.clear(); + for (int i = 0; i< stations.size(); i++) {//站点集合 + LatLng latLng = BPCoordinateCalculateRouteUtil.coordinateConverterWgsToGcj(getContext() + ,stations.get(i).getLon(),stations.get(i).getLat());// lat,lon + mRoutePointsList.add(latLng); } + mMapDirectionView.setLinePointMarkerAndDraw(mRoutePointsList,currentStationIndex); } @Override diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java index aea35cc715..16cda08315 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java @@ -97,9 +97,6 @@ public class BusPassengerTrafficLightView extends IViewTrafficLight { super.changeCountdownRed(redNum); UiThreadHandler.post(() -> { if (redNum > 0) { -// mLightTimeTV.setVertrial(true); -// mLightTimeTV.setmColorList(new int[]{getResources().getColor(R.color.bus_p_traffic_light_red_color_up), -// getResources().getColor(R.color.bus_p_traffic_light_red_color_down)}); mLightTimeTV.setText(String.valueOf(redNum)); } else { mLightTimeTV.setText(""); @@ -112,9 +109,6 @@ public class BusPassengerTrafficLightView extends IViewTrafficLight { super.changeCountdownGreen(greenNum); UiThreadHandler.post(() -> { if (greenNum > 0) { -// mLightTimeTV.setVertrial(true); -// mLightTimeTV.setmColorList(new int[]{getResources().getColor(R.color.bus_p_traffic_light_green_color_up), -// getResources().getColor(R.color.bus_p_traffic_light_green_color_down)}); mLightTimeTV.setText(String.valueOf(greenNum)); } else { mLightTimeTV.setText(""); @@ -127,9 +121,6 @@ public class BusPassengerTrafficLightView extends IViewTrafficLight { super.changeCountdownYellow(yellowNum); UiThreadHandler.post(() -> { if (yellowNum > 0) { -// mLightTimeTV.setVertrial(true); -// mLightTimeTV.setmColorList(new int[]{getResources().getColor(R.color.bus_p_traffic_light_yellow_color_up), -// getResources().getColor(R.color.bus_p_traffic_light_yellow_color_down)}); mLightTimeTV.setText(String.valueOf(yellowNum)); } else { mLightTimeTV.setText(""); diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPCoordinateCalculateRouteUtil.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPCoordinateCalculateRouteUtil.java index 9ddb9522cf..077db0ec52 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPCoordinateCalculateRouteUtil.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPCoordinateCalculateRouteUtil.java @@ -48,6 +48,14 @@ public class BPCoordinateCalculateRouteUtil { return list; } + public static LatLng coordinateConverterWgsToGcj(Context mContext, double lon, double lat) { + CoordinateConverter mCoordinateConverter = new CoordinateConverter(mContext); + mCoordinateConverter.from(CoordinateConverter.CoordType.GPS); + mCoordinateConverter.coord(new LatLng(lat,lon)); + LatLng latLng = mCoordinateConverter.convert(); + return latLng; + } + public static LatLng coordinateConverterWgsToGcj(Context mContext, MessagePad.Location mogoLatLng) { CoordinateConverter mCoordinateConverter = new CoordinateConverter(mContext); mCoordinateConverter.from(CoordinateConverter.CoordType.GPS); diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java new file mode 100644 index 0000000000..e04070b965 --- /dev/null +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java @@ -0,0 +1,222 @@ +package com.mogo.och.bus.passenger.utils; + +import com.mogo.och.bus.passenger.model.BusPassengerModel; +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.ArrayList; +import java.util.List; + +import mogo.telematics.pad.MessagePad; + +/** + * @author: wangmingjun + * @date: 2022/4/13 + */ +public class BPRouteDataTestUtils { + + //13号路口起-13号路口终 +// static String jsonStr ="{\n" + +// " \"models\": [\n" + +// " {\n" + +// " \"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927760268911,\"lon\":116.73512607061035,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927736555187,\"lon\":116.73498243020299,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927135941599,\"lon\":116.73482951462647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199260672670036,\"lon\":116.73468429259535,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199251260349946,\"lon\":116.73453933465,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924691997577,\"lon\":116.7343756435551,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199247953493625,\"lon\":116.73421240809087,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924986849947,\"lon\":116.73400425509712,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199249431152175,\"lon\":116.73378579041055,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199248921305724,\"lon\":116.73357811807278,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925012387371,\"lon\":116.73337650020184,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252270195075,\"lon\":116.73318223781153,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992521615169,\"lon\":116.73298632625203,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925202633083,\"lon\":116.73279582043983,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199261230205735,\"lon\":116.73263403473568,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199327991681926,\"lon\":116.73251962434813,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19944850496711,\"lon\":116.73249661840195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199582026896415,\"lon\":116.73251038561487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199743326352014,\"lon\":116.73253087453938,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199908347167394,\"lon\":116.73255070500186,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200065950595445,\"lon\":116.7325720694418,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20022747460407,\"lon\":116.73259461416663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384057310536,\"lon\":116.73261575018056,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20053849777916,\"lon\":116.73263451936387,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200696919444624,\"lon\":116.7326540541723,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2008524952796,\"lon\":116.7326743511824,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20101429705625,\"lon\":116.73269393580199,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118279997041,\"lon\":116.73271564378308,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201342388452076,\"lon\":116.73273653366076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201476063822355,\"lon\":116.73275292393079,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163479199852,\"lon\":116.73277440686762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181243476041,\"lon\":116.7328052766508,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201991767093304,\"lon\":116.7328453845644,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20215573733484,\"lon\":116.73287624009339,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202313648759784,\"lon\":116.73289887933315,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434745374454,\"lon\":116.7329182210956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253164952098,\"lon\":116.73297539811277,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258043275509,\"lon\":116.73312335324984,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258233576585,\"lon\":116.73331077089557,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20257107560234,\"lon\":116.73351244039137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202561578580514,\"lon\":116.73370176209845,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20256256788661,\"lon\":116.73391325024126,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20255633158834,\"lon\":116.73413195000244,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202543311179575,\"lon\":116.73436614303907,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253067346457,\"lon\":116.73458032609663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20251776111356,\"lon\":116.73477082198242,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202503997557805,\"lon\":116.73498624001282,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20249129260376,\"lon\":116.73518976336872,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247877796589,\"lon\":116.73537786253135,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246651610268,\"lon\":116.73559239130266,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245754388014,\"lon\":116.73574239922202,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20244749208,\"lon\":116.73589674090469,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243806550113,\"lon\":116.73607057284322,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243550556816,\"lon\":116.73628106525871,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243654127756,\"lon\":116.7364949950665,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243738221016,\"lon\":116.7367061649993,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243672476754,\"lon\":116.73691115930336,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243590788176,\"lon\":116.73710722104272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202436434375336,\"lon\":116.73730688607075,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243749821501,\"lon\":116.73750140347998,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243625962803,\"lon\":116.73771330926793,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434515480725,\"lon\":116.73791895606205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024326561388,\"lon\":116.73815206945737,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243092086137,\"lon\":116.73838655528765,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202430876006126,\"lon\":116.73861890759498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242914053177,\"lon\":116.73882029918758,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242843336561,\"lon\":116.73904465495175,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242661219026,\"lon\":116.73922453252953,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426462811076,\"lon\":116.7393708046956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242687134937,\"lon\":116.73954685547025,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242694967377,\"lon\":116.73975021183773,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202424630601236,\"lon\":116.73999740812975,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202422502184625,\"lon\":116.74028266774337,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202419634158936,\"lon\":116.7405942561498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241975959762,\"lon\":116.7409069557092,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241920524113,\"lon\":116.74120156191647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241765540262,\"lon\":116.74149288504978,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241569149764,\"lon\":116.7418080096762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202414529497084,\"lon\":116.74210262897205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241419532155,\"lon\":116.74241767661879,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202413879360954,\"lon\":116.7427571218185,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241287045245,\"lon\":116.7431284691325,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241214965105,\"lon\":116.74343354359334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241141271715,\"lon\":116.7437220210538,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024080520075,\"lon\":116.74399113498052,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202391714280026,\"lon\":116.74427625698272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20238163805639,\"lon\":116.74452083315958,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379293010274,\"lon\":116.74475703837204,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379007817086,\"lon\":116.7449961645494,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20237814181231,\"lon\":116.7452036063558,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202375477619896,\"lon\":116.74539567654291,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2023632396621,\"lon\":116.74555457589031,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20229396554444,\"lon\":116.7456716047369,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20217800547467,\"lon\":116.74574081942625,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202047498095304,\"lon\":116.74573659255675,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20188573786706,\"lon\":116.74571018281719,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201738240263026,\"lon\":116.74568463148606,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20157507049073,\"lon\":116.74565525041498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20137985142042,\"lon\":116.745619970576,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201187335613575,\"lon\":116.74558631350607,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20098251429043,\"lon\":116.74555055587679,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2007748533628,\"lon\":116.74551426934663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20057082986032,\"lon\":116.74547749663195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20036944224329,\"lon\":116.74544156175533,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016365229035,\"lon\":116.74540577510051,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1999958572445,\"lon\":116.74537505807076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19984100521566,\"lon\":116.7453433678602,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1996863960282,\"lon\":116.74529675648621,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19953919567943,\"lon\":116.74525916493474,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19940587189373,\"lon\":116.74523402869453,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19929047792381,\"lon\":116.74518617038383,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922141745155,\"lon\":116.74506912884067,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920798885308,\"lon\":116.744896716334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920912644279,\"lon\":116.74467216715483,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199209186509314,\"lon\":116.74448257515108,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920910709997,\"lon\":116.74430613406223,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992100786082,\"lon\":116.74410888316238,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921081961254,\"lon\":116.74391968819582,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921040855518,\"lon\":116.7437082083402,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921085053439,\"lon\":116.74346931155634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921197237373,\"lon\":116.74325149697013,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921248248983,\"lon\":116.74301103786591,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992139724646,\"lon\":116.74277237066539,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215818352386,\"lon\":116.74253219408898,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216175018876,\"lon\":116.74228853120842,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215970354246,\"lon\":116.74204663206451,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216627492966,\"lon\":116.74183871233049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921789170398,\"lon\":116.74165788334192,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922000138535,\"lon\":116.74144512197054,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199221559127494,\"lon\":116.741249370491,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922287231889,\"lon\":116.7410525810756,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922229019589,\"lon\":116.74085266662037,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992216995901,\"lon\":116.74061957723823,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922263073874,\"lon\":116.74041638149129,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922478093337,\"lon\":116.7402123910757,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199227066091595,\"lon\":116.74003419421553,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199228634241756,\"lon\":116.73985841944678,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922951636012,\"lon\":116.7397079274105,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252095329484,\"lon\":116.73956265582487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199346162997905,\"lon\":116.73944690416265,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199470799628024,\"lon\":116.73941941053417,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19962513314346,\"lon\":116.7394280706812,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199780626058924,\"lon\":116.73944255215424,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199961525343376,\"lon\":116.73945856750177,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016196947193,\"lon\":116.73947572081121,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384479551936,\"lon\":116.7394949225795,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200595083817475,\"lon\":116.73951027963179,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200792203321086,\"lon\":116.73952526850614,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200985930701684,\"lon\":116.73954125209579,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20115978977055,\"lon\":116.73955610094161,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201321019536124,\"lon\":116.7395695239138,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20147117943043,\"lon\":116.7395823299481,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163699848565,\"lon\":116.73959633422596,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20178484338371,\"lon\":116.7396085776486,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201962185646316,\"lon\":116.73962351991214,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021018923927,\"lon\":116.7396354059821,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2022137620686,\"lon\":116.73964348380458,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20232600820075,\"lon\":116.73961190446633,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241090270993,\"lon\":116.73951649703137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245777783807,\"lon\":116.73937664238166,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246906634823,\"lon\":116.73920146119093,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470916682884,\"lon\":116.73898763065634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247034830421,\"lon\":116.73878158418357,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246978204673,\"lon\":116.73857680142473,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247082638905,\"lon\":116.73834517890637,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202471943178196,\"lon\":116.7381047689514,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247131648035,\"lon\":116.73787761484981,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470799473765,\"lon\":116.73766230702478,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247013054322,\"lon\":116.73743619407796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246999515433,\"lon\":116.73724916823292,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247199652478,\"lon\":116.73704888970806,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202473960263525,\"lon\":116.73684083235807,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202474504753205,\"lon\":116.73665462440796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247501354581,\"lon\":116.73650710371837,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246541231906,\"lon\":116.73635807696789,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426768984274,\"lon\":116.73622283382787,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20236638788854,\"lon\":116.73610589402243,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20227106919894,\"lon\":116.73600895001849,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021428343084,\"lon\":116.73596816020945,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20197815580698,\"lon\":116.73594623645097,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181789535303,\"lon\":116.73593148707488,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201667906886954,\"lon\":116.73591743008926,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201505897730755,\"lon\":116.7359002912543,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20135083580946,\"lon\":116.73588579696379,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118617904595,\"lon\":116.73586970398149,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20102374028594,\"lon\":116.73585314703226,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20085554043743,\"lon\":116.73583763953049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20069451888229,\"lon\":116.73582073901778,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200530837344964,\"lon\":116.73580314359012,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2003608457064,\"lon\":116.73578183888779,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20021770046798,\"lon\":116.73575292592922,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20003454701824,\"lon\":116.7357174959358,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19986125116602,\"lon\":116.73569499961796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19969408518737,\"lon\":116.73567725223492,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19955533048882,\"lon\":116.73566375985422,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19943174810538,\"lon\":116.73564927714162,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19933167546824,\"lon\":116.735595995086,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199280357603875,\"lon\":116.73546293260645,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927848361656,\"lon\":116.73531579486274,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19928127892504,\"lon\":116.73505848474375,\"speed\": 0.0\n" + +// " }\n" + +// " ]\n" + +// "}"; + + //13号路口西-汇源果汁 + static String jsonStr = "{\"models\":[{\n" + + "\t\t\"lat\": 40.19927810144466,\n" + + "\t\t\"lon\": 116.73527259387767\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19927836356079,\n" + + "\t\t\"lon\": 116.73513114732762\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19927759500293,\n" + + "\t\t\"lon\": 116.73497660879111\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.199264819842284,\n" + + "\t\t\"lon\": 116.73480063747202\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1992510141554,\n" + + "\t\t\"lon\": 116.73463922037767\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.199245872804,\n" + + "\t\t\"lon\": 116.73445960685193\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19924673374912,\n" + + "\t\t\"lon\": 116.73427704009703\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19924747108264,\n" + + "\t\t\"lon\": 116.7340707102972\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19924828745573,\n" + + "\t\t\"lon\": 116.73385916927226\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19924941093133,\n" + + "\t\t\"lon\": 116.73364048294795\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19924939253381,\n" + + "\t\t\"lon\": 116.73340837408566\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19924949105934,\n" + + "\t\t\"lon\": 116.73317368725336\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19925040039033,\n" + + "\t\t\"lon\": 116.73296532811216\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1992515355653,\n" + + "\t\t\"lon\": 116.73277787366743\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1992512720328,\n" + + "\t\t\"lon\": 116.73263377253741\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.199205174954606,\n" + + "\t\t\"lon\": 116.73249773114644\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1991015743076,\n" + + "\t\t\"lon\": 116.7324219601283\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.198971862686285,\n" + + "\t\t\"lon\": 116.73239393296355\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19883883071582,\n" + + "\t\t\"lon\": 116.73237676435652\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19870171355796,\n" + + "\t\t\"lon\": 116.73236052150362\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1985491853193,\n" + + "\t\t\"lon\": 116.73234157857011\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1983890047355,\n" + + "\t\t\"lon\": 116.73232167996464\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1982209877466,\n" + + "\t\t\"lon\": 116.73230101645792\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.198037574138326,\n" + + "\t\t\"lon\": 116.73227735486083\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19787327856243,\n" + + "\t\t\"lon\": 116.73225676816314\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19771917207499,\n" + + "\t\t\"lon\": 116.73223814728027\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.197548305175935,\n" + + "\t\t\"lon\": 116.73221624705808\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19739568979691,\n" + + "\t\t\"lon\": 116.73219618210774\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19724703821575,\n" + + "\t\t\"lon\": 116.73217598293311\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1970956560885,\n" + + "\t\t\"lon\": 116.73215773721505\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19697703483188,\n" + + "\t\t\"lon\": 116.73214337172284\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19687000725696,\n" + + "\t\t\"lon\": 116.73210037067965\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.196833449601726,\n" + + "\t\t\"lon\": 116.73196646708011\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19685833847804,\n" + + "\t\t\"lon\": 116.73181315361103\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.196889170203264,\n" + + "\t\t\"lon\": 116.73164355747393\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19692242860347,\n" + + "\t\t\"lon\": 116.7314555399657\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19696431701069,\n" + + "\t\t\"lon\": 116.7312261834129\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19700025925464,\n" + + "\t\t\"lon\": 116.73102774016093\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19703414798773,\n" + + "\t\t\"lon\": 116.73084270562073\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19707287604138,\n" + + "\t\t\"lon\": 116.73062835248406\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19710951629977,\n" + + "\t\t\"lon\": 116.73041744082339\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19714593807105,\n" + + "\t\t\"lon\": 116.73021414314803\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.197183297026285,\n" + + "\t\t\"lon\": 116.7300057066447\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.1972247359487,\n" + + "\t\t\"lon\": 116.7297751515664\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19726518822745,\n" + + "\t\t\"lon\": 116.72954958923812\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19730538240706,\n" + + "\t\t\"lon\": 116.72932440756041\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19734272112662,\n" + + "\t\t\"lon\": 116.72911631453036\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.197379191549075,\n" + + "\t\t\"lon\": 116.72890982812105\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.197417565369314,\n" + + "\t\t\"lon\": 116.72869447869044\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19746052080799,\n" + + "\t\t\"lon\": 116.72845641541247\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19750040582118,\n" + + "\t\t\"lon\": 116.72823569991117\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19753999704064,\n" + + "\t\t\"lon\": 116.72801998373052\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19757796882569,\n" + + "\t\t\"lon\": 116.72781280504363\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.197617062364586,\n" + + "\t\t\"lon\": 116.72759949431683\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19765391602761,\n" + + "\t\t\"lon\": 116.72739776789756\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19768973009218,\n" + + "\t\t\"lon\": 116.72719980764646\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.197726191028785,\n" + + "\t\t\"lon\": 116.72699719861669\n" + + "\t}, {\n" + + "\t\t\"lat\": 40.19776233489642,\n" + + "\t\t\"lon\": 116.72679516155276\n" + + "\t}]}\n"; + public static void converToRouteData(){ + List list = new ArrayList<>(); + + try { + JSONObject jsonObject = new JSONObject(jsonStr); + JSONArray jsonElements = jsonObject.getJSONArray("models"); + for (int i = 0; i < jsonElements.length(); i++) { + JSONObject s = jsonElements.getJSONObject(i); + MessagePad.Location.Builder builder = MessagePad.Location.newBuilder(); + builder.setLatitude(s.getDouble("lat")); + builder.setLongitude(s.getDouble("lon")); + list.add(builder.build()); + } + BusPassengerModel.getInstance().updateRoutePoints(list); + } catch (JSONException e) { + e.printStackTrace(); + } + } +} diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_green_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_green_nor.png index 76787134b699b0a28904ff75f116388bc2ff3ff2..939d5c0214f4a2755ab912598c2cfc9eb4eb889f 100644 GIT binary patch delta 13118 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 Yc&+{URl`w?000002uVdwM6N<$g32Z_^Z)<= delta 13169 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 P00000NkvXXu0mjfSkg?t diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_yellow_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_yellow_nor.png index 74dec2954001a85214ed1b3b38ceb71c873bc93e..a782062c3480b7703f17391350edc6c2247882fd 100644 GIT binary patch literal 12771 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 literal 12751 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 diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end_point.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end_point.png new file mode 100644 index 0000000000000000000000000000000000000000..1e647134810322d3aa067e80715e3910182171c2 GIT binary patch literal 8319 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 JPDHLkV1kpHEXe=> literal 0 HcmV?d00001 diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_way_point.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_way_point.png index cb158ffb8380c8249ae1fbb3d250c14769c3e659..ff04c01f13bb77dab574e033abf2182c8390f3d3 100644 GIT binary patch delta 569 zcmV-90>=HPQS<~MiBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_>mz{Av@uBkQax~*h#@vK?`)*Ny!a~i3;N{a z>Rz-#0h@Y05L03M*|phm&FtdF?CIHWotiXTUNBqFnyoH|k?#7X-z`nqVc6O-2;5Kf z!inE&RyX#|&L!LlD>5o=o6WLXJ}_C6$tjP{K;q2boj6A0<*inB$L!^uf2ZykAJt0l znJvw?V&8N(CzD1v6}xJ1;(U2O;z;r#^r3G6w9qt9U(etk#1YZ58g92~A?`OYT{TT> zfKOd#7y6wQ|zdEaxRLLT2~dXj?8+QE@Fs{R8lmGfu>)s z5e0v7;P}dsUk)B|Xh&v5x_v8yp&k0M#BQ5#C!@rFTfPCOv37Ta4`>8D00000NkvXX Hu0mjf%E0}2 literal 10407 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 R^uPcB002ovPDHLkV1k>I*en15 diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_light_green_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_light_green_nor.png index 76787134b699b0a28904ff75f116388bc2ff3ff2..939d5c0214f4a2755ab912598c2cfc9eb4eb889f 100644 GIT binary patch delta 13118 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 Yc&+{URl`w?000002uVdwM6N<$g32Z_^Z)<= delta 13169 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 P00000NkvXXu0mjfSkg?t diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_light_yellow_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_light_yellow_nor.png index 74dec2954001a85214ed1b3b38ceb71c873bc93e..a782062c3480b7703f17391350edc6c2247882fd 100644 GIT binary patch literal 12771 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 literal 12751 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 diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_end_point.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_end_point.png new file mode 100644 index 0000000000000000000000000000000000000000..1e647134810322d3aa067e80715e3910182171c2 GIT binary patch literal 8319 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 JPDHLkV1kpHEXe=> literal 0 HcmV?d00001 diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_start.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_map_view_dir_start.png deleted file mode 100644 index 22d8f225c2c3b91161636bce2ef5bdc6f5093d51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 842 zcmeAS@N?(olHy`uVBq!ia0vp^5y|uln((ef zRd30ansmuH2awhb=ZO z*Ge*Ns1R>5Ua;}%{FkOXjZM|pJIxP$Xa6>^zCA|f-DJ1&y|dyQFZZjxmo$)asFD67 zaN}%(&BSThx|o@Q)_Q!Nimuk^tE?wOue_^)`HB6 zn+tqB)e667w=TPQjP2UgLenc(SLx4k>*8J0oS#{8^^U{kj?IoPE5DUQEnn&+8ttom zi0!i1(}MGIPs4Iedo#^An)a`(NXTC;bLYC(cC8K5q|{bOmOOHdYBFBAX!^Nto`0|D zW<_jE<;~8WvBa$0;SP&&NzFaAomF-Ue#^g3GL8{B1C;X(=$@5i;;@|c$6_9Vn#cJ) zGJ^fx>njQk+IOzmn0V#NogeZmIQP_Te-Iz`c&bmBoDH{h{g(GDLq*Nr^u6UR`ZK}* z+}t=HPQS<~MiBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_>mz{Av@uBkQax~*h#@vK?`)*Ny!a~i3;N{a z>Rz-#0h@Y05L03M*|phm&FtdF?CIHWotiXTUNBqFnyoH|k?#7X-z`nqVc6O-2;5Kf z!inE&RyX#|&L!LlD>5o=o6WLXJ}_C6$tjP{K;q2boj6A0<*inB$L!^uf2ZykAJt0l znJvw?V&8N(CzD1v6}xJ1;(U2O;z;r#^r3G6w9qt9U(etk#1YZ58g92~A?`OYT{TT> zfKOd#7y6wQ|zdEaxRLLT2~dXj?8+QE@Fs{R8lmGfu>)s z5e0v7;P}dsUk)B|Xh&v5x_v8yp&k0M#BQ5#C!@rFTfPCOv37Ta4`>8D00000NkvXX Hu0mjf%E0}2 literal 10407 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 R^uPcB002ovPDHLkV1k>I*en15 diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable/bus_p_route_bg.xml b/OCH/mogo-och-bus-passenger/src/main/res/drawable/bus_p_route_bg.xml index a1e022a3bc..73fbe1f005 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/drawable/bus_p_route_bg.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/drawable/bus_p_route_bg.xml @@ -4,8 +4,8 @@ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml index 3f4fd3015c..31cab964c2 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml @@ -71,7 +71,6 @@ android:id="@+id/dividing_line_1" android:layout_width="match_parent" android:layout_height="@dimen/bus_p_route_line_dividing_view_height" - android:layout_marginTop="@dimen/dp_30" android:background="@drawable/bus_p_dividing_line_bg" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/bus_p_speed_tv" /> diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml index f530b3ea84..3468664cc3 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml @@ -50,11 +50,13 @@ app:layout_constraintRight_toRightOf="parent" app:layout_constraintBottom_toBottomOf="parent"/> @@ -27,6 +28,7 @@ android:layout_height="match_parent" android:textSize="@dimen/bus_p_traffic_light_time_size" android:textStyle="bold" + android:textColor="@color/bus_p_traffic_txt_color" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" android:gravity="center" /> diff --git a/OCH/mogo-och-bus-passenger/src/main/res/values-sw320dp/dimens.xml b/OCH/mogo-och-bus-passenger/src/main/res/values-sw320dp/dimens.xml index 3dc928c0b7..a1fc427a76 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/values-sw320dp/dimens.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/values-sw320dp/dimens.xml @@ -4,10 +4,10 @@ 40px 40px 40px - 70px + 110px 224px 510px - 1px + 3px 158px 90px @@ -15,8 +15,8 @@ 158px 90px 45px - 100px - 100px + 90px + 90px 3px 224px @@ -41,7 +41,8 @@ 6px 50px 36px - 75px + 80px + 100px 50px 6px diff --git a/OCH/mogo-och-bus-passenger/src/main/res/values/colors.xml b/OCH/mogo-och-bus-passenger/src/main/res/values/colors.xml index eb3a91012c..06035c5d4b 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/values/colors.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/values/colors.xml @@ -25,4 +25,5 @@ #2D3E5F #E6E9EFFC #33394C63 + #2D3E5F \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml b/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml index b43711e918..bb114661c1 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml @@ -5,10 +5,10 @@ 40px 40px 40px - 70px + 110px 224px 510px - 1px + 3px 158px 90px @@ -16,8 +16,8 @@ 158px 90px 45px - 100px - 100px + 90px + 90px 3px 224px @@ -42,7 +42,8 @@ 6px 50px 36px - 75px + 80px + 100px 50px 6px diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java index e395d1894c..0a9bdcb5dc 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java @@ -22,17 +22,11 @@ import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean; import com.mogo.och.taxi.model.TaxiModel; import com.mogo.och.taxi.presenter.TaxiPresenter; import com.mogo.och.taxi.utils.PinYinUtil; - -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; +import com.mogo.och.taxi.utils.TPRouteDataTestUtils; import java.lang.ref.WeakReference; -import java.util.ArrayList; import java.util.List; -import mogo.telematics.pad.MessagePad; - /** * @author congtaowang * @since 2021/1/18 @@ -359,200 +353,201 @@ public class TaxiFragment extends BaseTaxiTabFragment list = new ArrayList<>(); - - try { - JSONObject jsonObject = new JSONObject(listStr); - JSONArray jsonElements = jsonObject.getJSONArray("models"); - for (int i = 0; i < jsonElements.length(); i++) { - JSONObject s = jsonElements.getJSONObject(i); - MessagePad.Location.Builder builder = MessagePad.Location.newBuilder(); - builder.setLatitude(s.getDouble("lat")); - builder.setLongitude(s.getDouble("lon")); - list.add(builder.build()); - } - TaxiModel.getInstance().updateOrderRoute(list); - TaxiModel.getInstance().updateOrderRouteInfo(list); - } catch (JSONException e) { - e.printStackTrace(); - } + TPRouteDataTestUtils.converToRouteData(); +// String listStr = "{\"models\":[{\n" + +// "\t\t\"lat\": 40.19927810144466,\n" + +// "\t\t\"lon\": 116.73527259387767\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19927836356079,\n" + +// "\t\t\"lon\": 116.73513114732762\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19927759500293,\n" + +// "\t\t\"lon\": 116.73497660879111\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.199264819842284,\n" + +// "\t\t\"lon\": 116.73480063747202\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1992510141554,\n" + +// "\t\t\"lon\": 116.73463922037767\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.199245872804,\n" + +// "\t\t\"lon\": 116.73445960685193\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19924673374912,\n" + +// "\t\t\"lon\": 116.73427704009703\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19924747108264,\n" + +// "\t\t\"lon\": 116.7340707102972\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19924828745573,\n" + +// "\t\t\"lon\": 116.73385916927226\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19924941093133,\n" + +// "\t\t\"lon\": 116.73364048294795\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19924939253381,\n" + +// "\t\t\"lon\": 116.73340837408566\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19924949105934,\n" + +// "\t\t\"lon\": 116.73317368725336\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19925040039033,\n" + +// "\t\t\"lon\": 116.73296532811216\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1992515355653,\n" + +// "\t\t\"lon\": 116.73277787366743\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1992512720328,\n" + +// "\t\t\"lon\": 116.73263377253741\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.199205174954606,\n" + +// "\t\t\"lon\": 116.73249773114644\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1991015743076,\n" + +// "\t\t\"lon\": 116.7324219601283\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.198971862686285,\n" + +// "\t\t\"lon\": 116.73239393296355\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19883883071582,\n" + +// "\t\t\"lon\": 116.73237676435652\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19870171355796,\n" + +// "\t\t\"lon\": 116.73236052150362\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1985491853193,\n" + +// "\t\t\"lon\": 116.73234157857011\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1983890047355,\n" + +// "\t\t\"lon\": 116.73232167996464\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1982209877466,\n" + +// "\t\t\"lon\": 116.73230101645792\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.198037574138326,\n" + +// "\t\t\"lon\": 116.73227735486083\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19787327856243,\n" + +// "\t\t\"lon\": 116.73225676816314\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19771917207499,\n" + +// "\t\t\"lon\": 116.73223814728027\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.197548305175935,\n" + +// "\t\t\"lon\": 116.73221624705808\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19739568979691,\n" + +// "\t\t\"lon\": 116.73219618210774\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19724703821575,\n" + +// "\t\t\"lon\": 116.73217598293311\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1970956560885,\n" + +// "\t\t\"lon\": 116.73215773721505\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19697703483188,\n" + +// "\t\t\"lon\": 116.73214337172284\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19687000725696,\n" + +// "\t\t\"lon\": 116.73210037067965\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.196833449601726,\n" + +// "\t\t\"lon\": 116.73196646708011\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19685833847804,\n" + +// "\t\t\"lon\": 116.73181315361103\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.196889170203264,\n" + +// "\t\t\"lon\": 116.73164355747393\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19692242860347,\n" + +// "\t\t\"lon\": 116.7314555399657\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19696431701069,\n" + +// "\t\t\"lon\": 116.7312261834129\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19700025925464,\n" + +// "\t\t\"lon\": 116.73102774016093\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19703414798773,\n" + +// "\t\t\"lon\": 116.73084270562073\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19707287604138,\n" + +// "\t\t\"lon\": 116.73062835248406\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19710951629977,\n" + +// "\t\t\"lon\": 116.73041744082339\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19714593807105,\n" + +// "\t\t\"lon\": 116.73021414314803\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.197183297026285,\n" + +// "\t\t\"lon\": 116.7300057066447\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.1972247359487,\n" + +// "\t\t\"lon\": 116.7297751515664\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19726518822745,\n" + +// "\t\t\"lon\": 116.72954958923812\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19730538240706,\n" + +// "\t\t\"lon\": 116.72932440756041\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19734272112662,\n" + +// "\t\t\"lon\": 116.72911631453036\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.197379191549075,\n" + +// "\t\t\"lon\": 116.72890982812105\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.197417565369314,\n" + +// "\t\t\"lon\": 116.72869447869044\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19746052080799,\n" + +// "\t\t\"lon\": 116.72845641541247\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19750040582118,\n" + +// "\t\t\"lon\": 116.72823569991117\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19753999704064,\n" + +// "\t\t\"lon\": 116.72801998373052\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19757796882569,\n" + +// "\t\t\"lon\": 116.72781280504363\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.197617062364586,\n" + +// "\t\t\"lon\": 116.72759949431683\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19765391602761,\n" + +// "\t\t\"lon\": 116.72739776789756\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19768973009218,\n" + +// "\t\t\"lon\": 116.72719980764646\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.197726191028785,\n" + +// "\t\t\"lon\": 116.72699719861669\n" + +// "\t}, {\n" + +// "\t\t\"lat\": 40.19776233489642,\n" + +// "\t\t\"lon\": 116.72679516155276\n" + +// "\t}]}\n"; +// +// +// List list = new ArrayList<>(); +// +// try { +// JSONObject jsonObject = new JSONObject(listStr); +// JSONArray jsonElements = jsonObject.getJSONArray("models"); +// for (int i = 0; i < jsonElements.length(); i++) { +// JSONObject s = jsonElements.getJSONObject(i); +// MessagePad.Location.Builder builder = MessagePad.Location.newBuilder(); +// builder.setLatitude(s.getDouble("lat")); +// builder.setLongitude(s.getDouble("lon")); +// list.add(builder.build()); +// } +// TaxiModel.getInstance().updateOrderRoute(list); +// TaxiModel.getInstance().updateOrderRouteInfo(list); +// } catch (JSONException e) { +// e.printStackTrace(); +// } } public void clickTestBar() { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java new file mode 100644 index 0000000000..472d0bbf27 --- /dev/null +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java @@ -0,0 +1,46 @@ +package com.mogo.och.taxi.utils; + +import com.mogo.och.taxi.model.TaxiModel; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.ArrayList; +import java.util.List; + +import mogo.telematics.pad.MessagePad; + +/** + * @author: wangmingjun + * @date: 2022/4/13 + */ +public class TPRouteDataTestUtils { + + static String jsonStr ="{\n" + + " \"models\": [\n" + + " {\n" + + " \"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927760268911,\"lon\":116.73512607061035,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927736555187,\"lon\":116.73498243020299,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927135941599,\"lon\":116.73482951462647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199260672670036,\"lon\":116.73468429259535,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199251260349946,\"lon\":116.73453933465,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924691997577,\"lon\":116.7343756435551,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199247953493625,\"lon\":116.73421240809087,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924986849947,\"lon\":116.73400425509712,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199249431152175,\"lon\":116.73378579041055,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199248921305724,\"lon\":116.73357811807278,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925012387371,\"lon\":116.73337650020184,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252270195075,\"lon\":116.73318223781153,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992521615169,\"lon\":116.73298632625203,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925202633083,\"lon\":116.73279582043983,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199261230205735,\"lon\":116.73263403473568,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199327991681926,\"lon\":116.73251962434813,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19944850496711,\"lon\":116.73249661840195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199582026896415,\"lon\":116.73251038561487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199743326352014,\"lon\":116.73253087453938,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199908347167394,\"lon\":116.73255070500186,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200065950595445,\"lon\":116.7325720694418,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20022747460407,\"lon\":116.73259461416663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384057310536,\"lon\":116.73261575018056,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20053849777916,\"lon\":116.73263451936387,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200696919444624,\"lon\":116.7326540541723,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2008524952796,\"lon\":116.7326743511824,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20101429705625,\"lon\":116.73269393580199,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118279997041,\"lon\":116.73271564378308,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201342388452076,\"lon\":116.73273653366076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201476063822355,\"lon\":116.73275292393079,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163479199852,\"lon\":116.73277440686762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181243476041,\"lon\":116.7328052766508,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201991767093304,\"lon\":116.7328453845644,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20215573733484,\"lon\":116.73287624009339,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202313648759784,\"lon\":116.73289887933315,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434745374454,\"lon\":116.7329182210956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253164952098,\"lon\":116.73297539811277,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258043275509,\"lon\":116.73312335324984,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258233576585,\"lon\":116.73331077089557,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20257107560234,\"lon\":116.73351244039137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202561578580514,\"lon\":116.73370176209845,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20256256788661,\"lon\":116.73391325024126,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20255633158834,\"lon\":116.73413195000244,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202543311179575,\"lon\":116.73436614303907,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253067346457,\"lon\":116.73458032609663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20251776111356,\"lon\":116.73477082198242,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202503997557805,\"lon\":116.73498624001282,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20249129260376,\"lon\":116.73518976336872,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247877796589,\"lon\":116.73537786253135,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246651610268,\"lon\":116.73559239130266,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245754388014,\"lon\":116.73574239922202,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20244749208,\"lon\":116.73589674090469,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243806550113,\"lon\":116.73607057284322,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243550556816,\"lon\":116.73628106525871,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243654127756,\"lon\":116.7364949950665,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243738221016,\"lon\":116.7367061649993,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243672476754,\"lon\":116.73691115930336,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243590788176,\"lon\":116.73710722104272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202436434375336,\"lon\":116.73730688607075,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243749821501,\"lon\":116.73750140347998,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243625962803,\"lon\":116.73771330926793,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434515480725,\"lon\":116.73791895606205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024326561388,\"lon\":116.73815206945737,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243092086137,\"lon\":116.73838655528765,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202430876006126,\"lon\":116.73861890759498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242914053177,\"lon\":116.73882029918758,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242843336561,\"lon\":116.73904465495175,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242661219026,\"lon\":116.73922453252953,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426462811076,\"lon\":116.7393708046956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242687134937,\"lon\":116.73954685547025,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242694967377,\"lon\":116.73975021183773,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202424630601236,\"lon\":116.73999740812975,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202422502184625,\"lon\":116.74028266774337,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202419634158936,\"lon\":116.7405942561498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241975959762,\"lon\":116.7409069557092,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241920524113,\"lon\":116.74120156191647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241765540262,\"lon\":116.74149288504978,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241569149764,\"lon\":116.7418080096762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202414529497084,\"lon\":116.74210262897205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241419532155,\"lon\":116.74241767661879,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202413879360954,\"lon\":116.7427571218185,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241287045245,\"lon\":116.7431284691325,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241214965105,\"lon\":116.74343354359334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241141271715,\"lon\":116.7437220210538,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024080520075,\"lon\":116.74399113498052,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202391714280026,\"lon\":116.74427625698272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20238163805639,\"lon\":116.74452083315958,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379293010274,\"lon\":116.74475703837204,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379007817086,\"lon\":116.7449961645494,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20237814181231,\"lon\":116.7452036063558,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202375477619896,\"lon\":116.74539567654291,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2023632396621,\"lon\":116.74555457589031,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20229396554444,\"lon\":116.7456716047369,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20217800547467,\"lon\":116.74574081942625,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202047498095304,\"lon\":116.74573659255675,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20188573786706,\"lon\":116.74571018281719,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201738240263026,\"lon\":116.74568463148606,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20157507049073,\"lon\":116.74565525041498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20137985142042,\"lon\":116.745619970576,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201187335613575,\"lon\":116.74558631350607,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20098251429043,\"lon\":116.74555055587679,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2007748533628,\"lon\":116.74551426934663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20057082986032,\"lon\":116.74547749663195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20036944224329,\"lon\":116.74544156175533,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016365229035,\"lon\":116.74540577510051,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1999958572445,\"lon\":116.74537505807076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19984100521566,\"lon\":116.7453433678602,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1996863960282,\"lon\":116.74529675648621,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19953919567943,\"lon\":116.74525916493474,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19940587189373,\"lon\":116.74523402869453,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19929047792381,\"lon\":116.74518617038383,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922141745155,\"lon\":116.74506912884067,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920798885308,\"lon\":116.744896716334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920912644279,\"lon\":116.74467216715483,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199209186509314,\"lon\":116.74448257515108,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920910709997,\"lon\":116.74430613406223,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992100786082,\"lon\":116.74410888316238,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921081961254,\"lon\":116.74391968819582,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921040855518,\"lon\":116.7437082083402,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921085053439,\"lon\":116.74346931155634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921197237373,\"lon\":116.74325149697013,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921248248983,\"lon\":116.74301103786591,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992139724646,\"lon\":116.74277237066539,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215818352386,\"lon\":116.74253219408898,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216175018876,\"lon\":116.74228853120842,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215970354246,\"lon\":116.74204663206451,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216627492966,\"lon\":116.74183871233049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921789170398,\"lon\":116.74165788334192,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922000138535,\"lon\":116.74144512197054,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199221559127494,\"lon\":116.741249370491,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922287231889,\"lon\":116.7410525810756,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922229019589,\"lon\":116.74085266662037,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992216995901,\"lon\":116.74061957723823,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922263073874,\"lon\":116.74041638149129,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922478093337,\"lon\":116.7402123910757,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199227066091595,\"lon\":116.74003419421553,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199228634241756,\"lon\":116.73985841944678,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922951636012,\"lon\":116.7397079274105,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252095329484,\"lon\":116.73956265582487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199346162997905,\"lon\":116.73944690416265,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199470799628024,\"lon\":116.73941941053417,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19962513314346,\"lon\":116.7394280706812,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199780626058924,\"lon\":116.73944255215424,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199961525343376,\"lon\":116.73945856750177,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016196947193,\"lon\":116.73947572081121,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384479551936,\"lon\":116.7394949225795,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200595083817475,\"lon\":116.73951027963179,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200792203321086,\"lon\":116.73952526850614,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200985930701684,\"lon\":116.73954125209579,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20115978977055,\"lon\":116.73955610094161,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201321019536124,\"lon\":116.7395695239138,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20147117943043,\"lon\":116.7395823299481,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163699848565,\"lon\":116.73959633422596,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20178484338371,\"lon\":116.7396085776486,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201962185646316,\"lon\":116.73962351991214,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021018923927,\"lon\":116.7396354059821,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2022137620686,\"lon\":116.73964348380458,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20232600820075,\"lon\":116.73961190446633,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241090270993,\"lon\":116.73951649703137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245777783807,\"lon\":116.73937664238166,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246906634823,\"lon\":116.73920146119093,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470916682884,\"lon\":116.73898763065634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247034830421,\"lon\":116.73878158418357,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246978204673,\"lon\":116.73857680142473,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247082638905,\"lon\":116.73834517890637,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202471943178196,\"lon\":116.7381047689514,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247131648035,\"lon\":116.73787761484981,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470799473765,\"lon\":116.73766230702478,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247013054322,\"lon\":116.73743619407796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246999515433,\"lon\":116.73724916823292,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247199652478,\"lon\":116.73704888970806,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202473960263525,\"lon\":116.73684083235807,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202474504753205,\"lon\":116.73665462440796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247501354581,\"lon\":116.73650710371837,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246541231906,\"lon\":116.73635807696789,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426768984274,\"lon\":116.73622283382787,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20236638788854,\"lon\":116.73610589402243,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20227106919894,\"lon\":116.73600895001849,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021428343084,\"lon\":116.73596816020945,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20197815580698,\"lon\":116.73594623645097,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181789535303,\"lon\":116.73593148707488,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201667906886954,\"lon\":116.73591743008926,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201505897730755,\"lon\":116.7359002912543,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20135083580946,\"lon\":116.73588579696379,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118617904595,\"lon\":116.73586970398149,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20102374028594,\"lon\":116.73585314703226,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20085554043743,\"lon\":116.73583763953049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20069451888229,\"lon\":116.73582073901778,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200530837344964,\"lon\":116.73580314359012,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2003608457064,\"lon\":116.73578183888779,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20021770046798,\"lon\":116.73575292592922,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20003454701824,\"lon\":116.7357174959358,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19986125116602,\"lon\":116.73569499961796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19969408518737,\"lon\":116.73567725223492,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19955533048882,\"lon\":116.73566375985422,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19943174810538,\"lon\":116.73564927714162,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19933167546824,\"lon\":116.735595995086,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199280357603875,\"lon\":116.73546293260645,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927848361656,\"lon\":116.73531579486274,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19928127892504,\"lon\":116.73505848474375,\"speed\": 0.0\n" + + " }\n" + + " ]\n" + + "}"; + public static void converToRouteData(){ + List list = new ArrayList<>(); + + try { + JSONObject jsonObject = new JSONObject(jsonStr); + JSONArray jsonElements = jsonObject.getJSONArray("models"); + for (int i = 0; i < jsonElements.length(); i++) { + JSONObject s = jsonElements.getJSONObject(i); + MessagePad.Location.Builder builder = MessagePad.Location.newBuilder(); + builder.setLatitude(s.getDouble("lat")); + builder.setLongitude(s.getDouble("lon")); + list.add(builder.build()); + } + TaxiModel.getInstance().updateOrderRoute(list); + TaxiModel.getInstance().updateOrderRouteInfo(list); + } catch (JSONException e) { + e.printStackTrace(); + } + } +} diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index 525609d945..7ea1b64e0d 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -123,6 +123,13 @@ public class MogoApplication extends MainMoGoApplication { } else if (DebugConfig.getProductFlavor().equals("fPadLenovoOchBusPassenger")) { //是否显示 红绿等 HmiBuildConfig.isShowTrafficLightView = false; + //是否显示 限速UI + HmiBuildConfig.isShowLimitingVelocityView = false; + //是否显示 路侧监控 + HmiBuildConfig.isShowCameraView = false; + //白天模式 + FunctionBuildConfig.skinMode = 1; + } //och模块 MogoModulePaths.addModuleFunction(new MogoModule("/och/api", "IMoGoFunctionProvider")); diff --git a/gradle.properties b/gradle.properties index cc19574c73..6cb026d147 100644 --- a/gradle.properties +++ b/gradle.properties @@ -82,7 +82,7 @@ MOGO_LOCATION_VERSION=1.3.52 MOGO_TELEMATIC_VERSION=1.3.52 ######## MogoAiCloudSDK Version ######## # 自研地图 -MAP_SDK_VERSION=2.1.0.3 +MAP_SDK_VERSION=2.1.0.5 MAP_SDK_OPERATION_VERSION=1.0.12 # websocket WEBSOCKET_VERSION=1.1.7 From a7f7b635bc56e7624acc313fda0bc635273a4e0e Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Thu, 14 Apr 2022 17:01:55 +0800 Subject: [PATCH 5/5] =?UTF-8?q?[Fix]=E8=A7=A3=E5=86=B3=E5=B1=80=E5=9F=9F?= =?UTF-8?q?=E7=BD=91=E5=86=85=E5=A4=9A=E4=B8=AApad=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E5=90=8C=E5=90=8Dservice=E5=AF=BC=E8=87=B4=E8=BF=9E=E6=8E=A5?= =?UTF-8?q?=E4=B8=8D=E4=B8=8A=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app_ipc_monitoring/build.gradle | 2 +- .../autopilot/MoGoAutopilotProvider.kt | 18 ++++++++++----- .../mogo/eagle/core/data/app/AppConfigInfo.kt | 1 + gradle.properties | 22 +++++++++---------- 4 files changed, 26 insertions(+), 17 deletions(-) diff --git a/app_ipc_monitoring/build.gradle b/app_ipc_monitoring/build.gradle index 55fb55ffda..e19c5feaa5 100644 --- a/app_ipc_monitoring/build.gradle +++ b/app_ipc_monitoring/build.gradle @@ -57,5 +57,5 @@ dependencies { // api "com.zhidao.support.adas:high:1.2.1.2_bate21" implementation 'org.greenrobot:eventbus:3.2.0' implementation 'com.android.support:multidex:1.0.3' - implementation 'com.mogo.cloud:telematic:1.3.52' + implementation 'com.mogo.cloud:telematic:1.3.53-beta' } diff --git a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt index ba471cb925..f203fb848f 100644 --- a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt +++ b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt @@ -14,6 +14,7 @@ import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL import com.mogo.eagle.core.data.trafficlight.TrafficLightResult import com.mogo.eagle.core.data.trafficlight.toTrafficLightDetail +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotCarConfigListener import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotProvider import com.mogo.eagle.core.function.api.map.collect.IMoGoMapDataCollectProvider import com.mogo.eagle.core.function.autopilot.adapter.MoGoAdasListenerImpl @@ -21,17 +22,16 @@ import com.mogo.eagle.core.function.autopilot.adapter.MoGoAdasMsgConnectStatusLi import com.mogo.eagle.core.function.autopilot.adapter.MoGoHandAdasMsgManager import com.mogo.eagle.core.function.autopilot.server.AsyncDataToAutopilotServer import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarConfigListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.function.call.map.CallerMapDataCollectorManager import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.telematic.MogoProtocolMsg import com.mogo.telematic.MogoProtocolMsg.* import com.mogo.telematic.NSDNettyManager -import com.mogo.telematic.client.listener.MessageStateListener import com.mogo.telematic.client.listener.NettyClientListener import com.mogo.telematic.client.status.ConnectState import com.mogo.telematic.server.netty.NettyServerListener @@ -44,6 +44,7 @@ import com.zhidao.support.adas.high.common.Constants.IPC_CONNECTION_STATUS import com.zhidao.support.adas.high.common.CupidLogUtils import com.zhidao.support.adas.high.common.MogoReport import io.netty.channel.Channel +import mogo.telematics.pad.MessagePad import java.util.concurrent.TimeUnit @@ -54,7 +55,8 @@ import java.util.concurrent.TimeUnit */ @Route(path = MogoServicePaths.PATH_AUTO_PILOT) class MoGoAutopilotProvider : - IMoGoAutopilotProvider, IMoGoMapDataCollectProvider.OnMapCollectCmdListener { + IMoGoAutopilotProvider, IMoGoMapDataCollectProvider.OnMapCollectCmdListener, + IMoGoAutopilotCarConfigListener { private val TAG = "MoGoAutoPilotProvider" private var mContext: Context? = null @@ -178,6 +180,8 @@ class MoGoAutopilotProvider : CallerLogger.d("$M_ADAS_IMPL$TAG", "司机端Server未启动!") } } + } else {// 乘客屏监听工控机基础信息回调 + CallerAutopilotCarConfigListenerManager.addListener(TAG, this) } CallerLogger.i("$M_ADAS_IMPL$TAG", "initServer……") @@ -451,8 +455,6 @@ class MoGoAutopilotProvider : } REQ_CAR_NUMBER -> { AppConfigInfo.plateNumber = String(msg.body) - ToastUtils.showShort(AppConfigInfo.plateNumber) - // TODO:("获取到车牌号") } else -> {} } @@ -467,6 +469,7 @@ class MoGoAutopilotProvider : when (statusCode) { ConnectState.STATUS_CONNECT_SUCCESS -> { CallerLogger.d("$M_ADAS_IMPL$TAG", "乘客端连接司机端服务成功! sign is:${sign}") + // 连接成功后,乘客屏没拿到车牌号就像司机屏请求 if (AppConfigInfo.plateNumber.isNullOrEmpty()) { var byteArray = byteArrayOf(0) NSDNettyManager.getInstance().sendMogoProtocolMsgToServer( @@ -485,4 +488,9 @@ class MoGoAutopilotProvider : } } } + + override fun onAutopilotCarConfig(carConfigResp: MessagePad.CarConfigResp) { + // 乘客屏才监听 + AppConfigInfo.plateNumber = carConfigResp.plateNumber + } } \ No newline at end of file diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/AppConfigInfo.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/AppConfigInfo.kt index 0347ce8be0..22ac34dc37 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/AppConfigInfo.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/app/AppConfigInfo.kt @@ -27,6 +27,7 @@ object AppConfigInfo { var mogoSN: String? = null //车牌号 + @Volatile var plateNumber: String? = null //工控机MAC地址 var iPCMacAddress: String? = null diff --git a/gradle.properties b/gradle.properties index 6cb026d147..1854bb30cb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -23,7 +23,7 @@ kotlin.parallel.tasks.in.project=true #优化kapt #并行运行kapt1.2.60版本以上支持 kapt.use.worker.api=true -#增量编译 kapt1.3.52版本以上支持 +#增量编译 kapt1.3.53版本以上支持 kapt.incremental.apt=true #kapt avoiding 如果用kapt依赖的内容没有变化,会完全重用编译内容,省掉app:kaptGenerateStubsDebugKotlin的时间 kapt.include.compile.classpath=false @@ -63,23 +63,23 @@ SERVICE_CHAIN_VERSION=1.1.0 LOGLIB_VERSION=1.2.30 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION -MOGO_NETWORK_VERSION=1.3.52 +MOGO_NETWORK_VERSION=1.3.53 # 鉴权 -MOGO_PASSPORT_VERSION=1.3.52 +MOGO_PASSPORT_VERSION=1.3.53 # 常链接 -MOGO_SOCKET_VERSION=1.3.52 +MOGO_SOCKET_VERSION=1.3.53 # 数据采集 -MOGO_REALTIME_VERSION=1.3.52 +MOGO_REALTIME_VERSION=1.3.53 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.3.52 +MOGO_TANLU_VERSION=1.3.53 # 直播推流 -MOGO_LIVE_VERSION=1.3.52 +MOGO_LIVE_VERSION=1.3.53 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.3.52 +MOGO_TRAFFICLIVE_VERSION=1.3.53 # 定位服务 -MOGO_LOCATION_VERSION=1.3.52 +MOGO_LOCATION_VERSION=1.3.53 # 远程通讯模块 -MOGO_TELEMATIC_VERSION=1.3.52 +MOGO_TELEMATIC_VERSION=1.3.53 ######## MogoAiCloudSDK Version ######## # 自研地图 MAP_SDK_VERSION=2.1.0.5 @@ -155,5 +155,5 @@ MOGO_OCH_TAXI_VERSION=2.0.66 # mogoAiCloud sdk services MOGO_AICLOUD_SERVICES_SDK_VERSION=2.1.16.10 # v2x-sdk -MOGO_V2X_SDK_VERSION=1.3.52 +MOGO_V2X_SDK_VERSION=1.3.53 ################# 旧版本架构模块版本 #################