From 13ea8b334572c2423abb8d156fd8428f8d074172 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 03 七月 2025 08:24:58 +0800
Subject: [PATCH] 1

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java |   18 ++++++++++++++++--
 1 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
index cb00614..e1c4631 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
@@ -12,6 +12,7 @@
 import com.zy.acs.manager.manager.entity.Code;
 import com.zy.acs.manager.manager.entity.Loc;
 import com.zy.acs.manager.manager.entity.Segment;
+import com.zy.acs.manager.manager.entity.Sta;
 import com.zy.acs.manager.manager.service.ActionService;
 import com.zy.acs.manager.manager.service.CodeService;
 import com.zy.acs.manager.system.service.ConfigService;
@@ -34,7 +35,7 @@
 @Component("mapService")
 public class MapService {
 
-    private final static int[][] DIRECTIONS = {{0,1},{0,-1},{-1,0},{1,0}};
+    private final static int[][] DIRECTIONS = {{0, 1}, {0, -1}, {-1, 0}, {1, 0}};
 
     @Value("${floyd.enable}")
     private Boolean floydEnable;
@@ -154,7 +155,7 @@
     }
 
     // 鍧愭爣璐ф灦闃堝�� todo:luxiaotao
-    public AgvDirectionType calculateAgvWorkDirection(Loc loc, Code code) {
+    public AgvDirectionType calculateAgvWorkDirectionByShelf(Loc loc, Code code) {
         Integer compDirect = loc.getCompDirect();
         AgvDirectionType agvDirectionType = null;
         if (compDirect == 0) {
@@ -166,6 +167,19 @@
         return agvDirectionType;
     }
 
+    public Double getStaAngle(Sta sta, Double workDirection) {
+        if (null == sta) {
+            return null;
+        }
+        if (Cools.isEmpty(sta.getAngle())) {
+            return workDirection;
+        }
+        return Double.parseDouble(sta.getAngle());
+    }
+
+    public Double calculateAgvWorkDirectionByStation(Double staWorkDirection, Double lastDirection) {
+        return Math.abs(staWorkDirection - lastDirection) + 90.0D;
+    }
 
     public double calculateDistance(double x1, double y1, double x2, double y2) {
         double deltaX = x2 - x1;

--
Gitblit v1.9.1