diff --git a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/controller/JmImageController.java b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/controller/JmImageController.java index 13cdba1..71c0c76 100644 --- a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/controller/JmImageController.java +++ b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/jm/controller/JmImageController.java @@ -11,13 +11,12 @@ import com.zhangy.skyeye.jm.entity.JmImage; import com.zhangy.skyeye.jm.service.JmImageService; import com.zhangy.skyeye.publics.consts.FileTypeEnum; import com.zhangy.skyeye.publics.utils.LocalLockUtil; -import org.opencv.core.Core; +import com.zhangy.skyeye.publics.utils.OpenCVUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; -import java.io.File; import java.net.ConnectException; import java.util.stream.Collectors; @@ -120,21 +119,7 @@ public class JmImageController { static { //System.loadLibrary(Core.NATIVE_LIBRARY_NAME); - //加载 OpenCV (强制使用绝对路径加载,解决 UnsatisfiedLinkError) - String openCvDll = System.getProperty("opencv.library.path") + File.separator + Core.NATIVE_LIBRARY_NAME + ".dll"; - try { - File dllFile = new File(openCvDll); - if (dllFile.exists()) { - // 注意:必须使用 System.load() 加载绝对路径 - System.load(dllFile.getAbsolutePath()); - System.out.println("SUCCESS: OpenCV loaded from -> " + dllFile.getAbsolutePath()); - } else { - System.err.println("ERROR: OpenCV DLL not found at -> " + openCvDll); - } - } catch (Throwable e) { - System.err.println("CRITICAL: Failed to load OpenCV: " + e.getMessage()); - e.printStackTrace(); - } + OpenCVUtil.loadNativeDylib(); } /*@IgnoreAuth diff --git a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/ImageUtil.java b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/ImageUtil.java index 7655c23..2374539 100644 --- a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/ImageUtil.java +++ b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/ImageUtil.java @@ -24,7 +24,8 @@ import java.util.List; public class ImageUtil { static { - System.loadLibrary(Core.NATIVE_LIBRARY_NAME); + //System.loadLibrary(Core.NATIVE_LIBRARY_NAME); + OpenCVUtil.loadNativeDylib(); } /** diff --git a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/OpenCVUtil.java b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/OpenCVUtil.java index bf2b94c..632e9a6 100644 --- a/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/OpenCVUtil.java +++ b/backend/Skyeye-sys-dev/skyeye-service-manager/src/main/java/com/zhangy/skyeye/publics/utils/OpenCVUtil.java @@ -19,7 +19,26 @@ import java.util.List; public class OpenCVUtil { static { - System.loadLibrary(Core.NATIVE_LIBRARY_NAME); + //System.loadLibrary(Core.NATIVE_LIBRARY_NAME); + loadNativeDylib(); + } + + public static void loadNativeDylib() { + //加载 OpenCV (强制使用绝对路径加载,解决 UnsatisfiedLinkError) + String openCvDll = System.getProperty("opencv.library.path") + File.separator + Core.NATIVE_LIBRARY_NAME + ".dll"; + try { + File dllFile = new File(openCvDll); + if (dllFile.exists()) { + // 注意:必须使用 System.load() 加载绝对路径 + System.load(dllFile.getAbsolutePath()); + System.out.println("SUCCESS: OpenCV loaded from -> " + dllFile.getAbsolutePath()); + } else { + System.err.println("ERROR: OpenCV DLL not found at -> " + openCvDll); + } + } catch (Throwable e) { + System.err.println("CRITICAL: Failed to load OpenCV: " + e.getMessage()); + e.printStackTrace(); + } } /** diff --git a/frontend/Skyeye-sys-ui/src/store/modules/dict.js b/frontend/Skyeye-sys-ui/src/store/modules/dict.js index 3db2b31..a7c1d31 100644 --- a/frontend/Skyeye-sys-ui/src/store/modules/dict.js +++ b/frontend/Skyeye-sys-ui/src/store/modules/dict.js @@ -22,10 +22,14 @@ const state = { label: '快速模式', value: '1' }, + { + label: '巡航模式', + value: '2' + }, { label: '创建航线', value: '3' - } + }, ], polarization: {}, polarizationOptions: {}, diff --git a/frontend/Skyeye-sys-ui/src/styles/element.scss b/frontend/Skyeye-sys-ui/src/styles/element.scss index 1e3259a..11e36cd 100644 --- a/frontend/Skyeye-sys-ui/src/styles/element.scss +++ b/frontend/Skyeye-sys-ui/src/styles/element.scss @@ -760,6 +760,7 @@ ------------------------------------- */ .el-message { border: none; + top: 60px !important; // &[class*='success'] { // background-color: rgba(mix(#000, $--color-green, 30%), 0.7); diff --git a/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.js b/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.js index 306ed2a..6e3eb9b 100644 --- a/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.js +++ b/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.js @@ -1296,7 +1296,7 @@ export default { name: params.name, mode: params.mode, pointList: pointList, - startAltitude: params.startAltitude, + startAltitude: params.mode === '2' ? 0 : params.startAltitude, imageLight: parseFloat(params.imageLight), headingDiff: parseFloat(params.headingDiff), imageBit: parseFloat(params.imageBit), @@ -1305,20 +1305,16 @@ export default { uavList: [ { uavId: params.uav, - // startLon: params.startPoint.lon, - // startLat: params.startPoint.lat, - // endLon: params.endPoint.lon, - // endLat: params.endPoint.lat, - speed: params.initSpeed, - height: params.flyHeight, + speed: params.mode === '2' ? 0 : params.initSpeed, + height: params.mode === '2' ? 0 : params.flyHeight, resolution: params.ratio, - startAltitude: params.startAltitude, + startAltitude: params.mode === '2' ? 0 : params.startAltitude, payloadList: [{ payloadId: params.loader, resolution: params.ratio, width: params.width, length: this.form.imageMode === '4' ? this.ratioMap.gmti.length : this.ratioMap[params.ratio].length, - theta: params.theta, + theta: params.mode === '2' ? 0 : params.theta, reserved: this.form.imageMode === '4' ? this.ratioMap.gmti.reserved : this.ratioMap[params.ratio].reserved, direction: params.direction, polarization: params.polarization, @@ -2001,7 +1997,7 @@ export default { name: params.name, mode: params.mode, pointList: pointList, - startAltitude: params.startAltitude, + startAltitude: params.mode === '2' ? 0 : params.startAltitude, imageLight: parseFloat(params.imageLight), headingDiff: parseFloat(params.headingDiff), imageBit: parseFloat(params.imageBit), @@ -2010,16 +2006,16 @@ export default { uavList: [ { uavId: params.uav, - speed: params.initSpeed, - height: params.flyHeight, + speed: params.mode === '2' ? 0 : params.initSpeed, + height: params.mode === '2' ? 0 : params.flyHeight, resolution: params.ratio, - startAltitude: params.startAltitude, + startAltitude: params.mode === '2' ? 0 : params.startAltitude, payloadList: [{ payloadId: params.loader, resolution: params.ratio, width: params.width, length: this.form.imageMode === '4' ? this.ratioMap.gmti.length : this.ratioMap[params.ratio].length, - theta: params.theta, + theta: params.mode === '2' ? 0 : params.theta, reserved: this.form.imageMode === '4' ? this.ratioMap.gmti.reserved : this.ratioMap[params.ratio].reserved, direction: params.direction, polarization: params.polarization, diff --git a/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.vue b/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.vue index 2b69f9e..b4ded30 100644 --- a/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.vue +++ b/frontend/Skyeye-sys-ui/src/views/home/components/task-manage/index.vue @@ -303,7 +303,11 @@ --> - +
--> - + @@ -481,14 +489,11 @@ > - - - - - - - - + - - + +
+
+
亮度:
+ + +
+ +