[6.5.0] feat: 增加公交站点管理类;
This commit is contained in:
@@ -5,12 +5,15 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MAP
|
||||
import com.mogo.map.MogoData.Companion.mogoMapData
|
||||
import com.mogo.map.entities.BusStation
|
||||
import com.mogo.map.entities.Lane
|
||||
import com.mogo.map.location.GDLocationClient.Companion.gdLocationClient
|
||||
import com.mogo.map.utils.HDMapUtils.getHDCityCode
|
||||
import com.zhidaoauto.map.data.point.LonLatPoint
|
||||
import com.zhidaoauto.map.data.road.CenterLine
|
||||
import com.zhidaoauto.map.data.road.RoadNameInfo
|
||||
import com.zhidaoauto.map.data.road.RoadRectInfos
|
||||
import com.zhidaoauto.map.data.road.RoutePath
|
||||
import com.zhidaoauto.map.data.routeinfo.RoadInfo
|
||||
import com.zhidaoauto.map.sdk.open.MapAutoApi
|
||||
import com.zhidaoauto.map.sdk.open.abs.IResult
|
||||
@@ -82,7 +85,7 @@ object MapDataWrapper : IMogoData {
|
||||
call: ((CenterLine?) -> Unit)
|
||||
) {
|
||||
try {
|
||||
MapDataApi.getCenterLineRangeInfo(lon, lat, angle, distance,false,6,
|
||||
MapDataApi.getCenterLineRangeInfo(lon, lat, angle, distance, false, 6,
|
||||
object : IResult<CenterLine> {
|
||||
override fun result(code: Int, result: CenterLine?) {
|
||||
call.invoke(result)
|
||||
@@ -206,7 +209,7 @@ object MapDataWrapper : IMogoData {
|
||||
location.longitude, location.latitude,
|
||||
object : OnHdDataDownByCityListener {
|
||||
override fun onMapHDDataCacheProgressByCity(id: Int, p: Double) {
|
||||
progress.invoke(id, p * 100)
|
||||
progress.invoke(id, p * 100)
|
||||
}
|
||||
|
||||
override fun onMapHDDataCacheStateByCity(id: Int, state: Int) {
|
||||
@@ -266,12 +269,38 @@ object MapDataWrapper : IMogoData {
|
||||
})
|
||||
latch.await()
|
||||
Logger.d(TAG, "getRoadInfo --- 2 ---: code -> $tempCode, data -> $tempData")
|
||||
return com.mogo.map.entities.RoadInfo(tempCode, tempData?.tile_id?.toLong()?:0L, tempData?.road_id?.toInt() ?: 0, tempData?.road_name ?: "")
|
||||
return com.mogo.map.entities.RoadInfo(
|
||||
tempCode,
|
||||
tempData?.tile_id?.toLong() ?: 0L,
|
||||
tempData?.road_id?.toInt() ?: 0,
|
||||
tempData?.road_name ?: ""
|
||||
)
|
||||
}
|
||||
|
||||
override fun getLaneInfo(tileId: Long, roadId: Int): List<Lane> {
|
||||
return MapDataApi.getLaneInfo(tileId, roadId)?.map { itx ->
|
||||
Lane(itx.laneId, itx.laneWidth, itx.laneLatLonPoints.map { Pair(it.longitude, it.latitude) })
|
||||
Lane(
|
||||
itx.laneId,
|
||||
itx.laneWidth,
|
||||
itx.laneLatLonPoints.map { Pair(it.longitude, it.latitude) })
|
||||
} ?: emptyList()
|
||||
}
|
||||
|
||||
override fun getBusStation(routeList: ArrayList<LonLatPoint>): MutableList<BusStation> {
|
||||
val latch = CountDownLatch(1)
|
||||
val resultList = mutableListOf<BusStation>()
|
||||
MapDataApi.getBusStation(routeList, object : IResult<RoutePath> {
|
||||
override fun result(code: Int, result: RoutePath?) {
|
||||
result?.steps?.forEach {
|
||||
it?.busStations?.forEach {
|
||||
val busStation = BusStation(it.busStationPoints, it.id, it.roadId, it.type)
|
||||
resultList.add(busStation)
|
||||
}
|
||||
}
|
||||
latch.countDown()
|
||||
}
|
||||
})
|
||||
latch.await()
|
||||
return resultList
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user