diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt index e800e1ddb6..192f8b9633 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt @@ -9,13 +9,13 @@ import androidx.lifecycle.Lifecycle.Event.ON_DESTROY import com.alibaba.android.arouter.facade.annotation.Route import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.data.map.* -import com.mogo.eagle.core.data.map.MapRoadInfo.StopLine import com.mogo.eagle.core.function.api.map.angle.* import com.mogo.eagle.core.function.api.map.angle.Scene import com.mogo.eagle.core.function.call.autopilot.* import com.mogo.eagle.core.function.call.map.* import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager.OnRoadListener import com.mogo.eagle.core.utilcode.kotlin.* +import com.zhidaoauto.map.data.road.StopLine import com.zhidaoauto.map.sdk.open.tools.* import kotlinx.coroutines.* import kotlinx.coroutines.android.* @@ -90,11 +90,11 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { override fun onStopLineInfo(info: StopLine) { - Log.d(TAG, "-- onStopLineInfo --: ${info.distanceOfCarToStopLine}") - if (!hasCrossRoad && info.distanceOfCarToStopLine <= 30.0) { + Log.d(TAG, "-- onStopLineInfo --: ${info.distance}") + if (!hasCrossRoad && info.distance <= 30.0) { hasCrossRoad = true triggerRoadId.set(this.roadId.get()) - distanceOfCarToStopLine.set(info.distanceOfCarToStopLine) + distanceOfCarToStopLine.set(info.distance) triggerLocation.set(CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02()) changeAngle(CrossRoad(true)) } diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/map/MapRoadInfo.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/map/MapRoadInfo.kt deleted file mode 100644 index 127675463d..0000000000 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/map/MapRoadInfo.kt +++ /dev/null @@ -1,36 +0,0 @@ -package com.mogo.eagle.core.data.map - -class MapRoadInfo { - - class StopLine { - /** - * 停止线的长度 - */ - var distance: Double = 0.0 - - /** - * 车道ID - */ - var laneId: List? = null - - /** - * 停止线上的点 - */ - var points: List = emptyList() - - /** - * 道路ID - */ - var roadId: List? = null - - /** - * 瓦片ID - */ - var tieId: String = "" - - /** - * 自车到停止线的距离 - */ - var distanceOfCarToStopLine: Double = 0.0 - } -} \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapRoadListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapRoadListenerManager.kt index 7a9f15ebe1..620a848581 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapRoadListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapRoadListenerManager.kt @@ -1,6 +1,6 @@ package com.mogo.eagle.core.function.call.map -import com.mogo.eagle.core.data.map.MapRoadInfo.StopLine +import com.zhidaoauto.map.data.road.StopLine import java.util.concurrent.ConcurrentHashMap object CallerMapRoadListenerManager { 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 74e8182b33..16507fdd9d 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 @@ -8,10 +8,8 @@ import android.view.MotionEvent import android.view.View import com.mogo.eagle.core.data.deva.chain.ChainConstant import com.mogo.eagle.core.data.enums.TrafficTypeEnum -import com.mogo.eagle.core.data.map.MapRoadInfo import com.mogo.eagle.core.data.map.MogoLatLng import com.mogo.eagle.core.data.map.MogoLocation -import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84 import com.mogo.eagle.core.function.call.map.CallerMapDataCollectorManager.setIsInit import com.mogo.eagle.core.function.call.map.CallerMapDevaListenerManager.invokeUploadLogFile import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager.invokeListenersOnRoadIdGet @@ -42,7 +40,6 @@ import com.zhidaoauto.map.sdk.open.business.PointCloudHelper.setPointCloudSize import com.zhidaoauto.map.sdk.open.business.PointCloudHelper.updatePointCloudDataByPb import com.zhidaoauto.map.sdk.open.camera.CameraPosition import com.zhidaoauto.map.sdk.open.camera.CameraUpdateFactory.newLatLngBounds -import com.zhidaoauto.map.sdk.open.data.MapDataApi.getNearstFromPointToSegment import com.zhidaoauto.map.sdk.open.location.MyLocationStyle import com.zhidaoauto.map.sdk.open.marker.BitmapDescriptorFactory.convertViewToBitmap import com.zhidaoauto.map.sdk.open.marker.Marker @@ -209,54 +206,17 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle } override fun onRoadCrossInfo(roadCross: RoadCross?) { + //todo d(SceneConstant.M_MAP + TAG, "onRoadCrossInfo:roadCross$roadCross") } - //todo 多实例 对象替换 override fun onStopLineInfo(stopLine: StopLine?) { - val carLoc = getChassisLocationWGS84() - if (stopLine != null && stopLine.road_id.isNotEmpty() && stopLine.points.size > 0) { - val points = stopLine.points - d(SceneConstant.M_MAP + TAG, "onStopLineInfo:stop_line$stopLine") - val stopInfo = convert(stopLine) - val p1 = points[0] - val p2 = points[points.size - 1] - val distanceOfCarToStopLine = getNearstFromPointToSegment( - carLoc.longitude, - carLoc.latitude, - p1.longitude, - p1.latitude, - p2.longitude, - p2.latitude - ) * 100000 - stopInfo.distanceOfCarToStopLine = distanceOfCarToStopLine - d(SceneConstant.M_MAP + TAG, "onStopLineInfo: --- distance: $distanceOfCarToStopLine") - invokeListenersOnStopLineGet(stopInfo) - } - } - - private fun convert(line: StopLine): MapRoadInfo.StopLine { - val ret = MapRoadInfo.StopLine() - ret.distance = line.distance - ret.laneId = line.lane_id - ret.roadId = line.road_id - ret.tieId = line.tile_id - val points = line.points - if (points.size > 0) { - val newPoints: MutableList = ArrayList() - for (i in points.indices) { - val lonLatPoint = points[i] - val latLng = MogoLatLng(lonLatPoint.latitude, lonLatPoint.longitude) - latLng.duration = lonLatPoint.duration - latLng.angle = lonLatPoint.angle - latLng.speed = lonLatPoint.speed - latLng.altitude = lonLatPoint.altitude - latLng.provider = lonLatPoint.provider - newPoints.add(latLng) + stopLine?.let { + if(it.road_id.isNotEmpty() && it.points.size > 0){ + d(SceneConstant.M_MAP + TAG, "onStopLineInfo: $it") + invokeListenersOnStopLineGet(it) } - ret.points = newPoints } - return ret } override fun changeZoom(zoom: Float) {