From 1c4426810c71eead57084be8a18ade8d314dd8c4 Mon Sep 17 00:00:00 2001
From: patrick <patrick.xu@broconcentric.com>
Date: 星期二, 10 十二月 2019 14:24:31 +0800
Subject: [PATCH] 1. 重构项目

---
 src/A032.Process/Calibration/CalibrationConfig.cs |   38 ++++++++++++++++++++++++++++++++------
 1 files changed, 32 insertions(+), 6 deletions(-)

diff --git a/src/A032.Process/Calibration/CalibrationConfig.cs b/src/A032.Process/Calibration/CalibrationConfig.cs
index 8c0d7fe..1c02514 100644
--- a/src/A032.Process/Calibration/CalibrationConfig.cs
+++ b/src/A032.Process/Calibration/CalibrationConfig.cs
@@ -1,6 +1,7 @@
 锘縰sing Bro.Common.Base;
 using Bro.Common.Helper;
 using Bro.Common.Model;
+using Bro.Common.Model.Interface;
 using Newtonsoft.Json;
 using System;
 using System.Collections.Generic;
@@ -14,10 +15,10 @@
 namespace A032.Process.Calibration
 {
     [Device("CalibrationCollection", "澶氭鏍囧畾閰嶇疆", EnumHelper.DeviceAttributeType.OperationConfig)]
-    public class CalibrationConfigCollection : OperationConfigBase
+    public class CalibrationConfigCollection : OperationConfigBase, IComplexDisplay,IHalconToolPath
     {
         [Category("鍏宠仈閰嶇疆")]
-        [Description("浣嶇疆浠g爜")]
+        [Description("浣嶇疆搴忓彿")]
         [TypeConverter(typeof(PositionCodeConverter))]
         public string PositionCode { get; set; }
 
@@ -31,10 +32,24 @@
         [TypeConverter(typeof(CollectionCountConvert))]
         [Editor(typeof(ComplexCollectionEditor<CalibrationConfig>), typeof(UITypeEditor))]
         public List<CalibrationConfig> Configs { get; set; } = new List<CalibrationConfig>();
+
+        [Category("鏄剧ず閰嶇疆")]
+        [Description("鏄惁鏄剧ずUI锛屼粠UI鍚姩鏍囧畾")]
+        public bool IsStartedFromUI { get; set; } = false;
+
+        public string GetDisplayText()
+        {
+            return $"PositionNo:{PositionCode}; Configs:{Configs.Count}";
+        }
+
+        public List<string> GetHalconToolPathList()
+        {
+            return Configs.SelectMany(c => c.GetHalconToolPathList()).ToList();
+        }
     }
 
     //[Device("Calibration", "鍗曟鏍囧畾閰嶇疆", EnumHelper.DeviceAttributeType.OperationConfig)]
-    public class CalibrationConfig : OperationConfigBase, IComplexDisplay, INotifyPropertyChanged
+    public class CalibrationConfig : OperationConfigBase, IComplexDisplay, INotifyPropertyChanged, IHalconToolPath
     {
         private Bitmap image = null;
         [JsonIgnore]
@@ -63,7 +78,7 @@
         [Description("鍥惧儚鏍囧噯鐐瑰潗鏍�")]
         [TypeConverter(typeof(ComplexObjectConvert))]
         [Editor(typeof(PropertyObjectEditor), typeof(UITypeEditor))]
-        public CustomizedPoint ImageMarkPoint { get; set; } = new CustomizedPoint();
+        public CustomizedPointWithAngle ImageMarkPoint { get; set; } = new CustomizedPointWithAngle();
 
         [Category("鐩告満閰嶇疆")]
         [Description("鐩告満鎿嶄綔閰嶇疆")]
@@ -71,11 +86,17 @@
         [Editor(typeof(PropertyObjectEditor), typeof(UITypeEditor))]
         public HalconRelatedCameraOprerationConfigBase CameraOpConfig { get; set; } = new HalconRelatedCameraOprerationConfigBase();
 
+        //[Category("杩愬姩骞冲彴璁剧疆")]
+        //[Description("骞冲彴褰撳墠鍧愭爣")]
+        //[TypeConverter(typeof(ComplexObjectConvert))]
+        //[Editor(typeof(PropertyObjectEditor), typeof(UITypeEditor))]
+        //public CustomizedPoint CurrentPlatPoint { get; set; } = new CustomizedPoint();
+
         [Category("杩愬姩骞冲彴璁剧疆")]
-        [Description("骞冲彴褰撳墠鍧愭爣")]
+        [Description("鏈哄櫒浜鸿繍鍔ㄥ潗鏍�")]
         [TypeConverter(typeof(ComplexObjectConvert))]
         [Editor(typeof(PropertyObjectEditor), typeof(UITypeEditor))]
-        public CustomizedPoint CurrentPlatPoint { get; set; } = new CustomizedPoint();
+        public RobotPoint PlatPoint { get; set; } = new RobotPoint();
 
         public event PropertyChangedEventHandler PropertyChanged;
 
@@ -83,5 +104,10 @@
         {
             return JsonConvert.SerializeObject(this);
         }
+
+        public List<string> GetHalconToolPathList()
+        {
+            return CameraOpConfig.GetHalconToolPathList();
+        }
     }
 }

--
Gitblit v1.8.0