feiyu02
2025-08-22 b315032d126a640758d4a6fccf297acbab057772
src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/RealTimeExceptionAnalysisController.kt
@@ -23,7 +23,7 @@
 * @date 2025/5/8
 * @author feiyu02
 */
@Deprecated("2025.5.29, 逻辑与业务不匹配,后续删除")
class RealTimeExceptionAnalysisController {
    constructor(sceneInfoRep: SceneInfoRep, factorFilter: FactorFilter?) {
@@ -43,7 +43,7 @@
                    .withMain(FactorType.VOC)
                    .create()
            )
        initTask(config)
        initTask()
    }
    constructor(sceneInfoRep: SceneInfoRep) : this(sceneInfoRep, null)
@@ -55,7 +55,7 @@
    private val taskList = mutableListOf<BaseExceptionAnalysis<RealTimeAnalysisConfig, RealTimeExceptionResult>>()
    private fun initTask(config: RealTimeAnalysisConfig) {
    fun initTask() {
        taskList.clear()
        taskList.apply {
            add(
@@ -139,9 +139,11 @@
        // 更新中间点信息
        ex.midData = avgData.apply {
            dataTime = midData.dataTime
            createTime = midData.createTime
            longitude = midData.longitude
            latitude = midData.latitude
        }
        }.toDataVo()
        // 更新溯源范围内的污染场景信息
        ex.relatedSceneList = result
    }
@@ -164,14 +166,24 @@
        val eDeg = windDir + defaultDegOffset
        val distance = windSpeed * durationMin * 60
        // 左侧(逆时针侧)顶点
        val p1 = MapUtil.getPointByLen(center, distance, sDeg * PI / 180)
        // 风向反向顶点
        val p2 = MapUtil.getPointByLen(center, distance, windDir * PI / 180)
        // 右侧(顺时针侧)顶点
        val p3 = MapUtil.getPointByLen(center, distance, eDeg * PI / 180)
        val result = mutableListOf(center)
        var startDeg = sDeg
        while (startDeg < eDeg) {
            val p = MapUtil.getPointByLen(center, distance, startDeg * PI / 180)
            result.add(p)
            startDeg++
        }
        return listOf(center, p1, p2, p3)
        return result
//        // 左侧(逆时针侧)顶点
//        val p1 = MapUtil.getPointByLen(center, distance, sDeg * PI / 180)
//        // 风向反向顶点
//        val p2 = MapUtil.getPointByLen(center, distance, windDir * PI / 180)
//        // 右侧(顺时针侧)顶点
//        val p3 = MapUtil.getPointByLen(center, distance, eDeg * PI / 180)
//
//        return listOf(center, p1, p2, p3)
    }
}