From eb3dd00b0b7fcda477229d518d250f9c842b790b Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期二, 21 十月 2025 17:45:44 +0800
Subject: [PATCH] 2025.10.21 1. 走航季度报告相关数据计算逻辑调整
---
src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedArea.kt | 45 ++++++++++++++++++++++++++++++++++++---------
1 files changed, 36 insertions(+), 9 deletions(-)
diff --git a/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedArea.kt b/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedArea.kt
index 563466a..a236efd 100644
--- a/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedArea.kt
+++ b/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedArea.kt
@@ -26,10 +26,23 @@
windLevelCondition: RTExcWindLevelConfig.WindLevelCondition?,
) : this() {
distanceType = windLevelCondition?.distanceType
+ distanceRange = distanceType?.disRange
+ distanceDes = distanceType?.des
windLevelCondition?.let { sourceTrace(historyData, exceptionData, config, it) }
}
+ // 鎵�灞炶闀�
+ var township:String? = null
+ // 鏍煎紡鍖栧湴鍧�
var address: String? = null
+ // 鎵�鍦ㄩ亾璺悕绉�
+ var street:String? = null
+ // 鎵�鍦ㄩ亾璺笂鐨勬渶杩戦棬鐗屽彿
+ var streetNumber:String? = null
+ // 澶勪簬璇ラ棬鐗屽彿鐨勬柟鍚�
+ var direction:String? = null
+ // 鎵�澶勬渶杩戜氦鍙夎矾鍙g殑鏂瑰悜鍜岃窛绂�
+ var roadinter:String? = null
// 姹℃煋鑼冨洿鎵囧舰鍖哄煙(缁忕含搴﹀杈瑰舰)
var polygon: List<Pair<Double, Double>>? = null
@@ -39,6 +52,9 @@
// 姹℃煋鍙兘鐨勫彂鐢熻窛绂�
var distanceType: DistanceType? = null
+
+ var distanceRange: Pair<Double, Double>? = null
+ var distanceDes: String? = null
/**
* 鍙嶅悜婧簮
@@ -58,7 +74,7 @@
val pair = avgData.longitude!!.toDouble() to avgData.latitude!!.toDouble()
polygon = calSector(
- avgData.windDirection!!.toDouble(),
+ avgData.windDirection?.toDouble() ?: .0,
pair,
windLevelCondition.distanceType.disRange,
config.sourceTraceDegOffset
@@ -67,13 +83,24 @@
MapUtil.wgs84ToGcj02(it)
}
- closePolygon = closeSourceTrace(historyData, pair)
+ closePolygon = closeSourceTrace(historyData, pair).map {
+ // 灏嗗潗鏍囪浆鎹负gcj02锛堢伀鏄熷潗鏍囩郴锛夛紝鍥犱负姹℃煋婧愬満鏅俊鎭兘涓烘鍧愭爣绯�
+ MapUtil.wgs84ToGcj02(it)
+ }
- try {
- val address = AMapService.reGeo(pair)
- this.address = address.district + address.township + address.street
- } catch (e: Exception) {
- e.printStackTrace()
+ if (config.isSearchAddress) {
+ try {
+ val address = AMapService.reGeo(MapUtil.wgs84ToGcj02(pair))
+ this.township = address.province + address.district + address.township
+ this.address = address.address
+ this.street = address.street
+ this.streetNumber = address.streetNumber
+ this.direction = address.direction
+ this.roadinter = address.roadinter
+ Thread.sleep(100)
+ } catch (e: Exception) {
+ e.printStackTrace()
+ }
}
}
@@ -102,7 +129,7 @@
// result.add(center)
var startDeg = 0
while (startDeg <= 360) {
- val p = MapUtil.getPointByLen(center, 50.0, startDeg * PI / 180)
+ val p = MapUtil.getPointByLen(center, distanceRange.second, startDeg * PI / 180)
result.add(p)
startDeg++
}
@@ -135,7 +162,7 @@
val result = mutableListOf<Pair<Double, Double>>()
var startDeg = 0
while (startDeg <= 360) {
- val p = MapUtil.getPointByLen(center, 50.0, startDeg * PI / 180)
+ val p = MapUtil.getPointByLen(center, DistanceType.TYPE1.disRange.second, startDeg * PI / 180)
result.add(p)
startDeg++
}
--
Gitblit v1.9.3