diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index e5697eb5dd..34ec3e8a7e 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -28,7 +28,7 @@ public class MogoApplication extends MainMoGoApplication { @Override public void onCreate() { -// TraceNodeCore.Companion.getTraceNodeCore().setDebugMode(false); //todo +// TraceNodeCore.Companion.getTraceNodeCore().setDebugMode(false); //debuggable验证时打开 ARouterStartUp.init(this); ConfigStartUp.init(this); tryEnableStrictMode(); diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/redlightwarning/RedLightWarningManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/redlightwarning/RedLightWarningManager.kt index f1d97cce21..b091bd6e04 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/redlightwarning/RedLightWarningManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/redlightwarning/RedLightWarningManager.kt @@ -16,12 +16,12 @@ import com.mogo.eagle.core.function.api.datacenter.union.IMoGoTrafficLightListen import com.mogo.eagle.core.function.api.v2x.IMoGoVipSetListener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.hmi.CallerHmiManager -import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager import com.mogo.eagle.core.function.call.v2x.CallVipSetListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_V2X +import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.LocationUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.function.biz.v2x.trafficlight.core.MogoTrafficLightManager @@ -108,10 +108,7 @@ class RedLightWarningManager : IMoGoTrafficLightListener, IMoGoVipSetListener, val distance = if (roadResult != null && roadResult.rectLatLngs.size >= 2) { getMinDistance(roadResult.rectLatLngs, it.latitude, it.longitude) } else { - CallerMapUIServiceManager.getMapUIController()?.calculateLineDistance( - MogoLatLng(it.latitude, it.longitude), - MogoLatLng(trafficLightResult.lat, trafficLightResult.lon) - ) ?: 0f + CoordinateUtils.calculateLineDistance(it.latitude, it.longitude,trafficLightResult.lat, trafficLightResult.lon) } CallerLogger.d( "$M_V2X$TAG", diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt index 9dde47c45a..bb5082f8d7 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt @@ -117,6 +117,7 @@ open class MapAutoView : FrameLayout, LonLatPointListener, ITraffic,ILockLocatio //The animation interval of Map private var mDuration = 100 //whether to set weather + @Volatile private var mIsWeatherEnable = true //The controller of weather private var mWeatherController: IWeatherController? = null diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoBaseMapView.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoBaseMapView.java index 34028b9895..1b7ff9c460 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoBaseMapView.java +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoBaseMapView.java @@ -65,10 +65,10 @@ public abstract class MogoBaseMapView extends FrameLayout implements ILifeCycle @Override public void onDestroy() { + MogoMap.Companion.getMapInstance().clear(getInstanceTag()); if ( mMapView != null ) { mMapView.onDestroy(); } - MogoMap.Companion.getMapInstance().clear(getInstanceTag()); } @Override diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.kt b/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.kt index b17976f27d..e8a92d550c 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.kt +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.kt @@ -164,15 +164,6 @@ interface IMogoMapUIController { */ fun forceRender() - /** - * 计算两点之间的距离 - * - * @param p1 - * @param p2 - * @return - */ - fun calculateLineDistance(p1: MogoLatLng, p2: MogoLatLng): Float - /** * 锁车状态 * diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt index 42f8b2a77c..b5d62b348c 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt @@ -539,13 +539,6 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle } } - override fun calculateLineDistance(p1: MogoLatLng, p2: MogoLatLng): Float { - return MogoMapUtils.calculateLineDistance( - ObjectUtils.fromMogo(p1), - ObjectUtils.fromMogo(p2) - ) - } - @get:Synchronized override val isCarLocked: Boolean get() = mMapView.getMapAutoViewHelper()!!.getLockMode() diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/utils/MogoMapUtils.java b/libraries/mogo-map/src/main/java/com/mogo/map/utils/MogoMapUtils.java index d26e0aff9a..781117ec0d 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/utils/MogoMapUtils.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/utils/MogoMapUtils.java @@ -88,46 +88,4 @@ public class MogoMapUtils { return new LatLngBounds.Builder().include( new LonLatPoint( east, north ) ).include( new LonLatPoint( west, south ) ).build(); } - - public static float calculateLineDistance(LonLatPoint var0, LonLatPoint var1) { - if (var0 != null && var1 != null) { - try { - double var2 = var0.getLongitude(); - double var4 = var0.getLatitude(); - double var6 = var1.getLongitude(); - double var8 = var1.getLatitude(); - var2 *= 0.01745329251994329D; - var4 *= 0.01745329251994329D; - var6 *= 0.01745329251994329D; - var8 *= 0.01745329251994329D; - double var10 = Math.sin(var2); - double var12 = Math.sin(var4); - double var14 = Math.cos(var2); - double var16 = Math.cos(var4); - double var18 = Math.sin(var6); - double var20 = Math.sin(var8); - double var22 = Math.cos(var6); - double var24 = Math.cos(var8); - double[] var28 = new double[3]; - double[] var29 = new double[3]; - var28[0] = var16 * var14; - var28[1] = var16 * var10; - var28[2] = var12; - var29[0] = var24 * var22; - var29[1] = var24 * var18; - var29[2] = var20; - return (float)(Math.asin(Math.sqrt((var28[0] - var29[0]) * (var28[0] - var29[0]) + (var28[1] - var29[1]) * (var28[1] - var29[1]) + (var28[2] - var29[2]) * (var28[2] - var29[2])) / 2.0D) * 1.27420015798544E7D); - } catch (Throwable var26) { - var26.printStackTrace(); - return 0.0F; - } - } else { - try { - throw new Exception("非法坐标值"); - } catch (Exception var27) { - var27.printStackTrace(); - return 0.0F; - } - } - } } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/utils/PointInterpolatorUtil.java b/libraries/mogo-map/src/main/java/com/mogo/map/utils/PointInterpolatorUtil.java index f68b2ce783..09dfb4b95d 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/utils/PointInterpolatorUtil.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/utils/PointInterpolatorUtil.java @@ -55,27 +55,6 @@ public class PointInterpolatorUtil { } } - /** - * 道路吸附算法 - *
- * 所谓的道路数据,实际就是道路对应的点集,每两个点之间是直线,但是两点间距并不固定,点集内点的数量也不固定,点集是有序的,按道路方向排序,road[0]是起点。
- * 为了避免拐弯道路的问题,先使用{@link #getCloseTwoPoint(int, int, double, double, List)}从道路数据里面找出距离目标点最近的两个点,记为A、B,最近的两个点就在目标点一前一后排列,
- * 这样的话,求一下目标点到AB的垂直映射以及距离{@link #getFootAndMinDistance(double, double, double, double, double, double)},就是吸附后的经纬度和距离
- *
- * @param lon 目标经度
- * @param lat 目标纬度
- * @param road 目标道路数据
- * @return double[]{吸附后的经度,吸附后的纬度,目标经纬度距离道路的垂直距离}
- */
- public static double[] mergeToRoad(double lon, double lat, ArrayList