package com.flightfeather.uav.biz.mission
|
|
import com.flightfeather.uav.common.utils.MapUtil
|
import com.flightfeather.uav.domain.entity.BaseRealTimeData
|
|
/**
|
* 走航任务计算工具
|
* @date 2025/8/21
|
* @author feiyu02
|
*/
|
object MissionUtil {
|
|
/**
|
* 计算里程数
|
*/
|
fun calKilometres(data: List<BaseRealTimeData>): Double {
|
var distance = .0
|
for (i in 1 until data.size) {
|
val a = data[i - 1]
|
val b = data[i]
|
if (a.longitude == null || a.latitude == null || b.longitude == null || b.latitude == null) continue
|
|
distance += MapUtil.getDistance(
|
a.longitude!!.toDouble(),
|
a.latitude!!.toDouble(),
|
b.longitude!!.toDouble(),
|
b.latitude!!.toDouble()
|
)
|
}
|
return distance
|
}
|
}
|