From 9b9af4c9457c03061ce4d0bb7656a2c3ad04894e Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: Tue, 07 May 2024 15:05:20 +0800
Subject: [PATCH] 视频标签加入有高程及无高程判断提交
---
ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 38 insertions(+), 14 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
index 904161e..4f86e8f 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
@@ -928,24 +928,48 @@
}
List<Map<String,Object>> result = new ArrayList();
- for(ArdAlarmpointsWell ardAlarmpointsWell : innerList){
- Map<String,Object> map = new HashMap();
- double distance_Target = RealDistance(ardCameras.getLongitude(),ardCameras.getLatitude(),ardAlarmpointsWell.getLongitude(), ardAlarmpointsWell.getLatitude());
- double Angle_A = GetAngle(ardCameras.getLongitude(),ardCameras.getLatitude(),ardAlarmpointsWell.getLongitude(), ardAlarmpointsWell.getLatitude());
- //double Angle_E = Math.atan((ardCameras.getAltitude() - 0) / distance_Target) * 180 / Math.PI;//无高程
- double Angle_E = Math.atan((ardCameras.getAltitude() + ardTowers.getAltitude() - ardAlarmpointsWell.getAltitude()) / distance_Target) * 180 / Math.PI;//有高程
+ if(ardTowers.getAltitude() > 5){//有高程
+ for(ArdAlarmpointsWell ardAlarmpointsWell : innerList){
+ Map<String,Object> map = new HashMap();
+ double distance_Target = RealDistance(ardCameras.getLongitude(),ardCameras.getLatitude(),ardAlarmpointsWell.getLongitude(), ardAlarmpointsWell.getLatitude());
- Angle_A = Angle_A - (p - fHorFieldAngle/2);//视场角内方位
- Angle_E = Angle_E - (360 - t - fVerFieldAngle/2);//视场角内俯仰
- if(!(Angle_E/fVerFieldAngle < 0.1 || Angle_A/fHorFieldAngle < 0.08 || Angle_A/fHorFieldAngle > 0.92)){//最上,最左,最右去掉
- map.put("id",ardAlarmpointsWell.getId());
- map.put("wellId",ardAlarmpointsWell.getWellId());
- map.put("horFieldProportion",Angle_A/fHorFieldAngle);//横向占比
- map.put("verFieldProportion",Angle_E/fVerFieldAngle);//纵向占比
- result.add(map);
+ double Angle_A = GetAngle(ardCameras.getLongitude(),ardCameras.getLatitude(),ardAlarmpointsWell.getLongitude(), ardAlarmpointsWell.getLatitude());
+ //double Angle_E = Math.atan((ardCameras.getAltitude() - 0) / distance_Target) * 180 / Math.PI;//无高程
+ double Angle_E = Math.atan((ardCameras.getAltitude() + ardTowers.getAltitude() - ardAlarmpointsWell.getAltitude()) / distance_Target) * 180 / Math.PI;//有高程
+
+ Angle_A = Angle_A - (p - fHorFieldAngle/2);//视场角内方位
+ Angle_E = Angle_E - (360 - t - fVerFieldAngle/2);//视场角内俯仰
+ if(!(Angle_E/fVerFieldAngle < 0.1 || Angle_A/fHorFieldAngle < 0.08 || Angle_A/fHorFieldAngle > 0.92)){//最上,最左,最右去掉
+ map.put("id",ardAlarmpointsWell.getId());
+ map.put("wellId",ardAlarmpointsWell.getWellId());
+ map.put("horFieldProportion",Angle_A/fHorFieldAngle);//横向占比
+ map.put("verFieldProportion",Angle_E/fVerFieldAngle);//纵向占比
+ result.add(map);
+ }
+ }
+ }else{//无高程
+ for(ArdAlarmpointsWell ardAlarmpointsWell : innerList){
+ Map<String,Object> map = new HashMap();
+ double distance_Target = RealDistance(ardCameras.getLongitude(),ardCameras.getLatitude(),ardAlarmpointsWell.getLongitude(), ardAlarmpointsWell.getLatitude());
+
+ double Angle_A = GetAngle(ardCameras.getLongitude(),ardCameras.getLatitude(),ardAlarmpointsWell.getLongitude(), ardAlarmpointsWell.getLatitude());
+ double Angle_E = Math.atan((ardCameras.getAltitude() - 0) / distance_Target) * 180 / Math.PI;//无高程
+ //double Angle_E = Math.atan((ardCameras.getAltitude() + ardTowers.getAltitude() - ardAlarmpointsWell.getAltitude()) / distance_Target) * 180 / Math.PI;//有高程
+
+ Angle_A = Angle_A - (p - fHorFieldAngle/2);//视场角内方位
+ Angle_E = Angle_E - (360 - t - fVerFieldAngle/2);//视场角内俯仰
+ if(!(Angle_E/fVerFieldAngle < 0.1 || Angle_A/fHorFieldAngle < 0.08 || Angle_A/fHorFieldAngle > 0.92)){//最上,最左,最右去掉
+ map.put("id",ardAlarmpointsWell.getId());
+ map.put("wellId",ardAlarmpointsWell.getWellId());
+ map.put("horFieldProportion",Angle_A/fHorFieldAngle);//横向占比
+ map.put("verFieldProportion",Angle_E/fVerFieldAngle);//纵向占比
+ result.add(map);
+ }
}
}
+
+
return result;
}
--
Gitblit v1.9.3