diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java index 65ef5770a2..3b8a60b226 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java @@ -6,6 +6,7 @@ import android.location.Location; import android.net.ConnectivityManager; import android.text.TextUtils; +import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.data.BaseData; import com.mogo.commons.network.SubscribeImpl; import com.mogo.commons.network.Utils; @@ -19,7 +20,6 @@ import com.mogo.service.adas.RemoteControlAutoPilotParameters; import com.mogo.service.adas.entity.AdasOCHData; import com.mogo.service.connection.IMogoOnMessageListener; import com.mogo.service.intent.IMogoIntentListener; -import com.mogo.utils.CoordinateUtils; import com.mogo.utils.NetworkUtils; import com.mogo.utils.TipToast; import com.mogo.utils.logger.Logger; diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java index 52421d08ec..d56444e6e7 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java @@ -7,6 +7,7 @@ import android.widget.TextView; import androidx.annotation.NonNull; +import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.map.MogoLatLng; import com.mogo.map.navi.IMogoCarLocationChangedListener2; import com.mogo.module.common.MogoApisHandler; @@ -21,9 +22,6 @@ import com.mogo.och.view.SlidePanelView; import com.mogo.service.adas.IMogoAdasOCHCallback; import com.mogo.service.statusmanager.IMogoStatusChangedListener; import com.mogo.service.statusmanager.StatusDescriptor; -import com.mogo.utils.CoordinateUtils; -import com.mogo.utils.TipToast; -import com.mogo.utils.UiThreadHandler; import com.mogo.utils.logger.Logger; public diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/CoordinateUtils.java b/foudations/mogo-utils/src/main/java/com/mogo/utils/CoordinateUtils.java deleted file mode 100644 index d75732e362..0000000000 --- a/foudations/mogo-utils/src/main/java/com/mogo/utils/CoordinateUtils.java +++ /dev/null @@ -1,203 +0,0 @@ -package com.mogo.utils; - -import org.jetbrains.annotations.NotNull; - -import java.math.BigDecimal; - -/** - * @author donghongyu - */ -public class CoordinateUtils { - -// private static double a = 6378245.0; -// private static double ee = 0.00669342162296594323; -// -// /** -// * 手机GPS坐标转火星坐标 -// * -// * @return -// */ -// public static double[] transformFromWGSToGCJ( double lat, double lon ) { -// -// //如果在国外,则默认不进行转换 -// if ( outOfChina( lat, lon ) ) { -// return new double[]{lat, lon}; -// } -// double dLat = transformLat( lon - 105.0, lat - 35.0 ); -// double dLon = transformLon( lon - 105.0, lat - 35.0 ); -// double radLat = lat / 180.0 * Math.PI; -// double magic = Math.sin( radLat ); -// magic = 1 - ee * magic * magic; -// double sqrtMagic = Math.sqrt( magic ); -// dLat = ( dLat * 180.0 ) / ( ( a * ( 1 - ee ) ) / ( magic * sqrtMagic ) * Math.PI ); -// dLon = ( dLon * 180.0 ) / ( a / sqrtMagic * Math.cos( radLat ) * Math.PI ); -// -// return new double[]{lat + dLat, lon + dLon}; -// } -// -// public static double transformLat( double x, double y ) { -// double ret = -100.0 + 2.0 * x + 3.0 * y + 0.2 * y * y + 0.1 * x * y + 0.2 * Math.sqrt( x > 0 ? x : -x ); -// ret += ( 20.0 * Math.sin( 6.0 * x * Math.PI ) + 20.0 * Math.sin( 2.0 * x * Math.PI ) ) * 2.0 / 3.0; -// ret += ( 20.0 * Math.sin( y * Math.PI ) + 40.0 * Math.sin( y / 3.0 * Math.PI ) ) * 2.0 / 3.0; -// ret += ( 160.0 * Math.sin( y / 12.0 * Math.PI ) + 320 * Math.sin( y * Math.PI / 30.0 ) ) * 2.0 / 3.0; -// return ret; -// } -// -// public static double transformLon( double x, double y ) { -// double ret = 300.0 + x + 2.0 * y + 0.1 * x * x + 0.1 * x * y + 0.1 * Math.sqrt( x > 0 ? x : -x ); -// ret += ( 20.0 * Math.sin( 6.0 * x * Math.PI ) + 20.0 * Math.sin( 2.0 * x * Math.PI ) ) * 2.0 / 3.0; -// ret += ( 20.0 * Math.sin( x * Math.PI ) + 40.0 * Math.sin( x / 3.0 * Math.PI ) ) * 2.0 / 3.0; -// ret += ( 150.0 * Math.sin( x / 12.0 * Math.PI ) + 300.0 * Math.sin( x / 30.0 * Math.PI ) ) * 2.0 / 3.0; -// return ret; -// } -// -// public static boolean outOfChina( double lat, double lon ) { -// if ( lon < 72.004 || lon > 137.8347 ) -// return true; -// if ( lat < 0.8293 || lat > 55.8271 ) -// return true; -// return false; -// } -// -// public static final double[] transformGcj02toWgs84( double lat, double lng ) { -// double[] var10000; -// if ( outOfChina( lat, lng ) ) { -// var10000 = new double[]{lng, lat}; -// } else { -// double dlat = transformLat( lng - 105.0D, lat - 35.0D ); -// double dlng = transformLon( lng - 105.0D, lat - 35.0D ); -// double radlat = lat / 180.0D * Math.PI; -// double magic = Math.sin( radlat ); -// magic = ( double ) 1 - 0.006693421622965943D * magic * magic; -// double sqrtmagic = Math.sqrt( magic ); -// dlat = dlat * 180.0D / ( 6335552.717000426D / ( magic * sqrtmagic ) * Math.PI ); -// dlng = dlng * 180.0D / ( 6378245.0D / sqrtmagic * Math.cos( radlat ) * Math.PI ); -// double mglat = lat + dlat; -// double mglng = lng + dlng; -// var10000 = new double[]{lng * ( double ) 2 - mglng, lat * ( double ) 2 - mglat}; -// } -// -// return var10000; -// } - - /** - * @param lon1 - * @param lat1 - * @param lon2 - * @param lat2 - * @return 两坐标的距离 单位:米(M) - */ - public static float calculateLineDistance( double lon1, double lat1, double lon2, double lat2 ) { - try { - double var2 = lon1; - double var4 = lat1; - double var6 = lon2; - double var8 = lat2; - 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; - } - } - - - // ------ - private static final double x_PI = 52.35987755982988D; - private static final double PI = 3.141592653589793D; - private static final double a = 6378245.0D; - private static final double ee = 0.006693421622965943D; - - public static final boolean outOfChina( double lat, double lng ) { - return lng <= 73.66D || lng >= 135.05D || lat <= 3.86D || lat >= 53.55D; - } - - private static final double transformLat( double lng, double lat ) { - double ret = -100.0D + 2.0D * lng + 3.0D * lat + 0.2D * lat * lat + 0.1D * lng * lat + 0.2D * Math.sqrt( Math.abs( lng ) ); - ret += ( 20.0D * Math.sin( 6.0D * lng * 3.141592653589793D ) + 20.0D * Math.sin( 2.0D * lng * 3.141592653589793D ) ) * 2.0D / 3.0D; - ret += ( 20.0D * Math.sin( lat * 3.141592653589793D ) + 40.0D * Math.sin( lat / 3.0D * 3.141592653589793D ) ) * 2.0D / 3.0D; - ret += ( 160.0D * Math.sin( lat / 12.0D * 3.141592653589793D ) + ( double ) 320 * Math.sin( lat * 3.141592653589793D / 30.0D ) ) * 2.0D / 3.0D; - return ret; - } - - private static final double transformLon( double lng, double lat ) { - double ret = 300.0D + lng + 2.0D * lat + 0.1D * lng * lng + 0.1D * lng * lat + 0.1D * Math.sqrt( Math.abs( lng ) ); - ret += ( 20.0D * Math.sin( 6.0D * lng * 3.141592653589793D ) + 20.0D * Math.sin( 2.0D * lng * 3.141592653589793D ) ) * 2.0D / 3.0D; - ret += ( 20.0D * Math.sin( lng * 3.141592653589793D ) + 40.0D * Math.sin( lng / 3.0D * 3.141592653589793D ) ) * 2.0D / 3.0D; - ret += ( 150.0D * Math.sin( lng / 12.0D * 3.141592653589793D ) + 300.0D * Math.sin( lng / 30.0D * 3.141592653589793D ) ) * 2.0D / 3.0D; - return ret; - } - - @NotNull - // World Geodetic System ==> Mars Geodetic System - public static final double[] transformWgsToGcj( double wgLat, double wgLon ) { - double[] point = new double[2]; - if ( outOfChina( wgLat, wgLon ) ) { - point[0] = wgLon; - point[1] = wgLat; - return point; - } else { - double dLat = transformLat( wgLon - 105.0D, wgLat - 35.0D ); - double dLon = transformLon( wgLon - 105.0D, wgLat - 35.0D ); - double radLat = wgLat / 180.0D * 3.141592653589793D; - double magic = Math.sin( radLat ); - magic = ( double ) 1 - 0.006693421622965943D * magic * magic; - double sqrtMagic = Math.sqrt( magic ); - dLat = dLat * 180.0D / ( 6335552.717000426D / ( magic * sqrtMagic ) * 3.141592653589793D ); - dLon = dLon * 180.0D / ( 6378245.0D / sqrtMagic * Math.cos( radLat ) * 3.141592653589793D ); - double mgLat = wgLat + dLat; - double mgLon = wgLon + dLon; - point[0] = dealRound( mgLon ); - point[1] = dealRound( mgLat ); - return point; - } - } - - @NotNull - public static final double[] transformGcj02toWgs84( double lat, double lng ) { - double[] var10000; - if ( outOfChina( lat, lng ) ) { - var10000 = new double[]{lng, lat}; - } else { - double dlat = transformLat( lng - 105.0D, lat - 35.0D ); - double dlng = transformLon( lng - 105.0D, lat - 35.0D ); - double radlat = lat / 180.0D * 3.141592653589793D; - double magic = Math.sin( radlat ); - magic = ( double ) 1 - 0.006693421622965943D * magic * magic; - double sqrtmagic = Math.sqrt( magic ); - dlat = dlat * 180.0D / ( 6335552.717000426D / ( magic * sqrtmagic ) * 3.141592653589793D ); - dlng = dlng * 180.0D / ( 6378245.0D / sqrtmagic * Math.cos( radlat ) * 3.141592653589793D ); - double mglat = lat + dlat; - double mglng = lng + dlng; - var10000 = new double[]{dealRound( lng * ( double ) 2 - mglng ), dealRound( lat * ( double ) 2 - mglat )}; - } - - return var10000; - } - - private static final double dealRound( double value ) { - BigDecimal bg = new BigDecimal( value ); - double result = bg.setScale( 6, 4 ).doubleValue(); - return result; - } - -} diff --git a/gradle.properties b/gradle.properties index 1913c5e8fc..46f1a55dc2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -155,19 +155,19 @@ LOGLIB_VERSION = 1.0.4 ######## MogoAiCloudSDK Version # 网络请求 -MOGO_NETWORK_VERSION=1.0.40 +MOGO_NETWORK_VERSION=1.0.41 # 鉴权 -MOGO_PASSPORT_VERSION=1.0.40 +MOGO_PASSPORT_VERSION=1.0.41 # 常链接 -MOGO_SOCKET_VERSION=1.0.40 +MOGO_SOCKET_VERSION=1.0.41 # 数据采集 -MOGO_REALTIME_VERSION=1.0.40 +MOGO_REALTIME_VERSION=1.0.41 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.0.40 +MOGO_TANLU_VERSION=1.0.41 # 直播推流 -MOGO_LIVE_VERSION=1.0.40 +MOGO_LIVE_VERSION=1.0.41 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.0.40 +MOGO_TRAFFICLIVE_VERSION=1.0.41 ######## Foundation MogoAiCloud Module # mogoAiCloud apk services diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java index 2f4f56f30c..b3365d0d02 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java @@ -9,6 +9,7 @@ import android.text.TextUtils; import android.view.View; import android.widget.TextView; +import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.voice.AIAssist; @@ -30,7 +31,6 @@ import com.mogo.module.service.R; import com.mogo.service.adas.RemoteControlAutoPilotParameters; import com.mogo.service.adas.entity.ADASCarStateInfo; import com.mogo.service.entrance.ButtonIndex; -import com.mogo.utils.CoordinateUtils; import com.mogo.utils.TipToast; import com.mogo.utils.WorkThreadHandler; import com.mogo.utils.logger.Logger; diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java index 7872f39477..50c1dfb939 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java @@ -11,6 +11,7 @@ import android.util.ArrayMap; import androidx.localbroadcastmanager.content.LocalBroadcastManager; +import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.debug.DebugConfig; import com.mogo.map.location.MogoLocation; import com.mogo.module.common.MogoApisHandler; @@ -24,7 +25,6 @@ import com.mogo.module.v2x.utils.DrivingDirectionUtils; import com.mogo.module.v2x.utils.ObuConfig; import com.mogo.module.v2x.utils.TestOnLineCarUtils; import com.mogo.service.entrance.IMogoEntranceButtonController; -import com.mogo.utils.CoordinateUtils; import com.mogo.utils.logger.Logger; import com.zhidao.mogo.module.obu.ObuConstant; import com.zhidao.mogo.module.obu.ObuManager; diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/adas/AdasObjectUtils.java b/services/mogo-service/src/main/java/com/mogo/service/impl/adas/AdasObjectUtils.java index 0f7ae9f898..ccfbb5ffc8 100644 --- a/services/mogo-service/src/main/java/com/mogo/service/impl/adas/AdasObjectUtils.java +++ b/services/mogo-service/src/main/java/com/mogo/service/impl/adas/AdasObjectUtils.java @@ -1,9 +1,9 @@ package com.mogo.service.impl.adas; +import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.utils.MortonCode; import com.mogo.realtime.entity.ADASRecognizedResult; import com.mogo.service.adas.entity.ADASWarnMessage; -import com.mogo.utils.CoordinateUtils; import com.zhidao.autopilotservice.model.AdasAIDLOwnerCarRectModel; import com.zhidao.support.adas.high.bean.WarnMessageInfo;