diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt index 35eacd0e49..f384ac23e6 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt @@ -14,8 +14,8 @@ data class OrderInfoResponse(val data: OrderInfo?) : BaseData() { val lineName: String?,//线路名称 val siteId: Long?,//站点id val siteName: String?,//站点名称 - val wgs84Lat: Double?,//高精地图 - val wgs84Lon: Double?,//高精地图 + val wgs84Lat: Double?, + val wgs84Lon: Double?, val startTime: Long?,//开始时间 val endTime: Long?,//结束时间 val passengerPhone: String?,//乘客手机号 diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt index e25c66f001..63be6ad799 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt @@ -531,6 +531,8 @@ object CharterPassengerModel { //设置全局轨迹信息 locusInfo = data.data CallerLogger.d(M_BUS_P+TAG,"查询自动驾驶轨迹信息") + CallerLogger.d(M_BUS_P+TAG,GsonUtil.jsonFromObject( + locusInfo)) } override fun onFail(code: Int, msg: String) { @@ -559,11 +561,12 @@ object CharterPassengerModel { * 查询车辆状态 判断订单是否结束、是否显示结束业务 */ private fun calculateDistance() { + //mLocation gcj坐标 mLocation?.let { // 启动轨迹计算 //当前站在轨迹中对应的点 val currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( - 0, mRoutePoints, it.latitude, it.longitude + 0, mRoutePoints, it.longitude, it.latitude ) //要前往的站在轨迹中对应的点 var nextRouteIndex: Int = mRoutePoints.size - 1 @@ -574,8 +577,9 @@ object CharterPassengerModel { ) } var lastSumLength = 0f - if (currentRouteIndex < nextRouteIndex) {// - val subList = mRoutePoints.subList(currentRouteIndex, nextRouteIndex) + if (currentRouteIndex < nextRouteIndex) { + // subList 是[) 需要的是[] + val subList = mRoutePoints.subList(currentRouteIndex, nextRouteIndex+1) val middlePoingDistancee = CoordinateCalculateRouteUtil.calculateRouteSumLength(subList) val lastPoints = mRoutePoints.get(currentRouteIndex) diff --git a/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.kt b/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.kt index d940b2948f..81ae52637e 100644 --- a/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.kt +++ b/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.kt @@ -1,15 +1,93 @@ -package com.mogo.och.bus.passenger; +package com.mogo.och.bus.passenger -import org.junit.Test; +import com.mogo.eagle.core.data.map.MogoLocation +import com.mogo.eagle.core.network.utils.GsonUtil +import com.mogo.eagle.core.utilcode.util.CoordinateTransform +import com.mogo.eagle.core.utilcode.util.CoordinateUtils +import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil +import org.json.JSONException +import org.json.JSONObject +import org.junit.Test /** * Example local unit test, which will execute on the development machine (host). * - * @see Testing documentation + * @see [Testing documentation](http://d.android.com/tools/testing) */ -public class ExampleUnitTest { +class ExampleUnitTest { @Test - public void addition_isCorrect() { + fun addition_isCorrect() { + //13号路口起-13号路口终 + val jsonStr = """ + {"models": [{"altitude_":0.0,"heading_":0.0,"latitude_":25.87506159122434,"longitude_":100.13463113454593,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874963432017065,"longitude_":100.13431083742782,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87481475105022,"longitude_":100.13402921175965,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874646001578594,"longitude_":100.13381071517328,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874280379177108,"longitude_":100.13344505101841,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87422474353087,"longitude_":100.13336522063217,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.8741846037573,"longitude_":100.13326081770579,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874169301193604,"longitude_":100.133157732712,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87417865388365,"longitude_":100.13305383003687,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87424355168725,"longitude_":100.13288988207758,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87441186213399,"longitude_":100.1326293335985,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874490698935094,"longitude_":100.13247594955229,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874551609777672,"longitude_":100.13227787460397,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874574232444672,"longitude_":100.1320943662068,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874574936235152,"longitude_":100.13109176087639,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874553271326842,"longitude_":100.13095333429315,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874468877309848,"longitude_":100.1307193884582,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874449652750723,"longitude_":100.1306199898516,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874449487671647,"longitude_":100.13046154976821,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87448439242463,"longitude_":100.13030173580755,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874554236422213,"longitude_":100.13013644761386,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874657614202334,"longitude_":100.1299792051648,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.874777620037,"longitude_":100.12985830283493,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.8749211786138,"longitude_":100.12975642056448,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.875123187810807,"longitude_":100.12965486650492,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.875282658783302,"longitude_":100.12960819854966,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87555277290776,"longitude_":100.12954493830546,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.875686392944456,"longitude_":100.12948797177033,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87609150201856,"longitude_":100.12914349760804,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87645852877848,"longitude_":100.1289124421148,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87667085149294,"longitude_":100.1288070141346,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.877063427631544,"longitude_":100.12866094818,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87751767381502,"longitude_":100.1286538378911,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87776644058061,"longitude_":100.12861180318971,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.87866240134362,"longitude_":100.12843614360035,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.879103098247672,"longitude_":100.12837521690956,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.879326467139197,"longitude_":100.12832846342278,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.8800083487784,"longitude_":100.12811951944514,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88019070137511,"longitude_":100.12802255167708,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.880357426115513,"longitude_":100.12787083439976,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.880481954487596,"longitude_":100.1276940858994,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.880653097994426,"longitude_":100.12740127585158,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.880758517533007,"longitude_":100.12730743064938,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.880799507331627,"longitude_":100.12724835914499,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88098572681533,"longitude_":100.12658255210448,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.881039332211476,"longitude_":100.1263847771375,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.881100185621683,"longitude_":100.12625820340021,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.881198711287677,"longitude_":100.12611952057267,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88133930457031,"longitude_":100.12599337741426,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.881467122690022,"longitude_":100.12592180492642,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88159423650277,"longitude_":100.12588048516646,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.882012210316635,"longitude_":100.12584119198453,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88240347787595,"longitude_":100.12581569076075,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.882530989675523,"longitude_":100.1258417579907,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88266718412272,"longitude_":100.1258996456634,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.882846062879587,"longitude_":100.12604302069693,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.883143169798704,"longitude_":100.12643363872347,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.883316147374213,"longitude_":100.12660436351877,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.883516631635977,"longitude_":100.12670006660859,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.884412161186358,"longitude_":100.12681096840119,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88456077756699,"longitude_":100.12680626559008,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88490956874977,"longitude_":100.12672087342608,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.885302490381278,"longitude_":100.12667304829165,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.885521440240353,"longitude_":100.1266801970379,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.885748782438256,"longitude_":100.12673442989593,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.886184311775366,"longitude_":100.12689928223388,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.886371044711435,"longitude_":100.12693222015717,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.886556923046193,"longitude_":100.12691593845197,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.887058969863556,"longitude_":100.1267783886852,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.887547354704896,"longitude_":100.12664214250168,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.887745630547965,"longitude_":100.12661296296805,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.887952855908765,"longitude_":100.12663469253742,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88838254724211,"longitude_":100.1267432660041,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88867177268486,"longitude_":100.12674878070436,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.888948154040733,"longitude_":100.12668867979535,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.889119678251383,"longitude_":100.12661519197152,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.88965548111457,"longitude_":100.12632103004057,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.890440398289833,"longitude_":100.12572932612804,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.890595726487316,"longitude_":100.12569393173928,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.89083685708941,"longitude_":100.12572825271758,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.89092017694698,"longitude_":100.12571880871474,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.891037856897587,"longitude_":100.12567497177714,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.891761687561317,"longitude_":100.12513259535619,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.891885118463794,"longitude_":100.1250643533811,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.89201181287785,"longitude_":100.1250211908644,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.892633993404484,"longitude_":100.12487357365991,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.892723272763575,"longitude_":100.12483263537747,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.892820100842155,"longitude_":100.12471361851891,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.89291347694438,"longitude_":100.12434808103623,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.892985029043015,"longitude_":100.12422953782732,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.89308490178189,"longitude_":100.12416612695728,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.893360731467585,"longitude_":100.12410368114618,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.894308353220502,"longitude_":100.12396602611501,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.895020251951685,"longitude_":100.12387330229565,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0},{"altitude_":0.0,"heading_":0.0,"latitude_":25.895317877980734,"longitude_":100.12387135197324,"memoizedIsInitialized":-1,"unknownFields":{"fields":{},"fieldsDescending":{}},"memoizedSize":-1,"memoizedHashCode":0}]} + """ + val list: MutableList = ArrayList() + val tempList: MutableList = ArrayList() + + try { + val jsonObject = JSONObject(jsonStr) + val objectFromJson = GsonUtil.objectFromJson(jsonStr, Model::class.java) + objectFromJson.models.forEach { + val mogoLocation = MogoLocation() + mogoLocation.latitude = it.latitude_ + mogoLocation.longitude = it.longitude_ + tempList.add(mogoLocation) + } + + + //转成MogoLatLng集合 + for (m in tempList) { + val mogoLatLng = CoordinateTransform.WGS84ToGCJ02(m.longitude, m.latitude) + val location = MogoLocation() + location.heading = m.heading.toFloat().toDouble() + location.latitude = mogoLatLng[0] + location.longitude = mogoLatLng[1] + list.add(location) + } + + list.forEachIndexed { index, modelX -> + calculateDistance(modelX,list,list.last()) + } + + } catch (e: JSONException) { + e.printStackTrace() + } } + + private fun calculateDistance(mLocation:MogoLocation?,mRoutePoints: MutableList,orderInfo:MogoLocation) { + //mLocation gcj坐标 + mLocation?.let { + // 启动轨迹计算 + //当前站在轨迹中对应的点 + val currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( + 0, mRoutePoints, it.longitude, it.latitude + ) + //要前往的站在轨迹中对应的点 + var nextRouteIndex: Int = mRoutePoints.size - 1 + nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( + currentRouteIndex, mRoutePoints, orderInfo.longitude, orderInfo.latitude + ) + var lastSumLength = 0f + if (currentRouteIndex < nextRouteIndex) {// + val subList = mRoutePoints.subList(currentRouteIndex, nextRouteIndex+1) + val middlePoingDistancee = + CoordinateCalculateRouteUtil.calculateRouteSumLength(subList) + val lastPoints = mRoutePoints.get(currentRouteIndex) + lastSumLength = CoordinateUtils.calculateLineDistance( + lastPoints.longitude, lastPoints.latitude, + it.longitude, it.latitude + ) + middlePoingDistancee + } else { + val lastPoints = mRoutePoints.get(nextRouteIndex) + lastSumLength = CoordinateUtils.calculateLineDistance( + lastPoints.longitude, lastPoints.latitude, + it.longitude, it.latitude + ) + } + val lastTime: Double = lastSumLength / 15 * 3.6 //秒 + + println("---lastSumLength: $lastSumLength 米" ) + } + } } \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/Model.kt b/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/Model.kt new file mode 100644 index 0000000000..0edf6f363d --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/Model.kt @@ -0,0 +1,5 @@ +package com.mogo.och.bus.passenger + +data class Model( + val models: List +) \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ModelX.kt b/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ModelX.kt new file mode 100644 index 0000000000..056122cc28 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/test/java/com/mogo/och/bus/passenger/ModelX.kt @@ -0,0 +1,11 @@ +package com.mogo.och.bus.passenger + +data class ModelX( + val altitude_: Double, + val heading_: Double, + val latitude_: Double, + val longitude_: Double, + val memoizedHashCode: Int, + val memoizedIsInitialized: Int, + val memoizedSize: Int, +) \ No newline at end of file