From 68d887299b6d624c198dd145c22b80c354a4d2b3 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Tue, 20 Jun 2023 19:07:32 +0800 Subject: [PATCH] =?UTF-8?q?[3.3.0]=20[feature]=20[=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E3=80=81=E6=B7=BB=E5=8A=A0=E9=80=92=E5=BD=92?= =?UTF-8?q?=E5=92=8C=E9=80=92=E5=BD=92=E4=B8=8A=E9=99=90]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/utils/CoordinateCalculateRouteUtil.kt | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt index b73d57e2fb..9c5326d1d2 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt @@ -6,6 +6,7 @@ import com.amap.api.maps.CoordinateConverter import com.amap.api.maps.model.LatLng import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.utilcode.mogo.logger.Logger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils import com.mogo.och.common.module.manager.trajectorymamager.DistanceDegree @@ -597,9 +598,12 @@ object CoordinateCalculateRouteUtil { endIndex: Int, mRoutePoints: List, location: MogoLocation, - type:Int, // - size:Int = 8 + type:Int, + size:Int = 4 ): Triple { + Logger.d(SceneConstant.M_OCHCOMMON + "calculateRouteSumLength", + "参数:[$preIndex $endIndex) mRoutePoints:${mRoutePoints.size} type:$type size:$size" + + " location:(${location.latitude},${location.longitude},${location.heading})") var currentIndex:Int = preIndex //记录疑似点 //基础点 // 轨迹中的点和定位点的距离集合 val distanceMap: TreeMap = TreeMap() @@ -710,6 +714,10 @@ object CoordinateCalculateRouteUtil { } } + if(distanceMap.size==0&&size<16){ + return getNearestPointInfo(preIndex,endIndex,mRoutePoints,location,type,size+2) + } + // 最近点中包含上次计算的点和上次计算的最近的一个点 if(distanceMap.containsValue(preIndex)&&distanceMap.containsValue(preIndex+1)){ var preIndexDistance:DistanceDegree?=null