From b6837f097e9cdb2645368aed4ddb03f580c331e4 Mon Sep 17 00:00:00 2001
From: z8018 <1282578289@qq.com>
Date: 星期一, 05 五月 2025 17:29:07 +0800
Subject: [PATCH] 1

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/AreaInfo.cs |   95 +++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 91 insertions(+), 4 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/AreaInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/AreaInfo.cs"
index 2f52e30..ed5f2ef 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/AreaInfo.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/AreaInfo.cs"
@@ -6,10 +6,97 @@
 
 namespace WIDESEAWCS_Common
 {
-    public enum AreaInfo
+    /// <summary>
+    /// 琛ㄧず鍗曚釜鏈ㄥ潡鐨勫疄浣撶被
+    /// </summary>
+    public class Block
     {
-        CLOutAreaA,
-        CLOutAreaB,
-        CLOutAreaC
+        public int L { get; set; } // 闀垮害锛堟部X杞达級
+        public int W { get; set; } // 瀹藉害锛堟部Y杞达級
+        public int H { get; set; } // 楂樺害锛堟部Z杞达級
+        public int X { get; set; } // X鍧愭爣锛堝乏涓嬭锛�
+        public int Y { get; set; } // Y鍧愭爣锛堝乏涓嬭锛�
+        public int Z { get; set; } // Z鍧愭爣锛堝簳閮ㄩ珮搴︼級
+    }
+
+    /// <summary>
+    /// 鍚哥洏鎿嶄綔淇℃伅锛堜娇鐢ㄤ腑蹇冪偣鍧愭爣锛�
+    /// </summary>
+    public class SuctionInfo
+    {
+        public int[] PickCenter { get; set; } // 鎶撳彇涓績鐐筟x,y,z]
+        public int[] PlaceCenter { get; set; } // 鏀剧疆涓績鐐筟x,y,z]
+        public int Rotation { get; set; }         // 瀹為檯鏃嬭浆瑙掑害
+
+        public Point Point { get; set; }
+    }
+
+    /// <summary>
+    /// 鏀剧疆缁撴灉杈撳嚭鍙傛暟
+    /// </summary>
+    public class PlacementResult
+    {
+        public List<int> VertexCoordinates { get; set; } // 8涓《鐐瑰潗鏍囷紙椤哄簭锛氬簳闈㈠洓瑙�+椤堕潰鍥涜锛�
+        public int[] Center { get; set; }               // 涓績鐐瑰潗鏍�(x,y,z)
+        public SuctionInfo SuctionInfo { get; set; }       // 鍚哥洏鎿嶄綔鍙傛暟
+    }
+
+    // 杈呭姪绫诲畾涔夊尯------------------------------------------
+
+    /// <summary>
+    /// 浜岀淮鍧愭爣鐐癸紙鐢ㄤ簬浣嶇疆鏌ユ壘锛�
+    /// </summary>
+    public struct Point
+    {
+        public int X { get; }
+        public int Y { get; }
+
+        public Point(int x, int y)
+        {
+            X = x;
+            Y = y;
+        }
+    }
+
+    /// <summary>
+    /// 鏀拺闈㈡弿杩帮紙鐢ㄤ簬鍒嗗眰鏀剧疆锛�
+    /// </summary>
+    public class SupportSurface
+    {
+        public int X { get; set; }           // 鏀拺闈㈣捣濮媂鍧愭爣
+        public int Y { get; set; }           // 鏀拺闈㈣捣濮媃鍧愭爣
+        public int Z { get; set; }           // 鏀拺闈㈤珮搴�
+        public int AvailableLength { get; set; } // 鍙敤闀垮害锛圶杞存柟鍚戯級
+        public int AvailableWidth { get; set; }  // 鍙敤瀹藉害锛圷杞存柟鍚戯級
+    }
+
+    /// <summary>
+    /// 鐭╁舰鍖哄煙锛堢敤浜庣鎾炴娴嬶級
+    /// </summary>
+    public class Rectangle
+    {
+        public int Left { get; }
+        public int Top { get; }
+        public int Right { get; }
+        public int Bottom { get; }
+
+        public Rectangle(int left, int top, int right, int bottom)
+        {
+            Left = left;
+            Top = top;
+            Right = right;
+            Bottom = bottom;
+        }
+
+        /// <summary>
+        /// 鐭╁舰鐩镐氦妫�娴嬶紙鑰冭檻闂磋窛绾︽潫锛�
+        /// </summary>
+        public bool IntersectsWith(Rectangle other)
+        {
+            return !(Right < other.Left ||
+                   Left > other.Right ||
+                   Bottom < other.Top ||
+                   Top > other.Bottom);
+        }
     }
 }

--
Gitblit v1.9.3