using Bro.Common.Base; using Bro.Common.Helper; using Bro.Common.Interface; using Bro.Common.Model; using Bro.M141.Process; using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing.Design; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Bro.M141_AOI3B.Process { [Process("AOI3B", EnumHelper.DeviceAttributeType.InitialConfig)] public class AOI3BConfig : M141Config { [Category("飞拍配置")] [Description("飞拍信号超时")] [DisplayName("飞拍信号超时")] public int PhotolayoutTime { get; set; } = 5000; [Category("飞拍配置")] [Description("P1飞拍软触发开关,true,软触发开启")] [DisplayName("P1飞拍软触发开关")] public bool P1SFstate { get; set; } = false; [Category("飞拍配置")] [Description("P2飞拍软触发开关,软触发开启")] [DisplayName("P2飞拍软触发开关")] public bool P2SFstate { get; set; } = false; [Category("引导配置")] [Description("标定矩阵")] [DisplayName("标定矩阵")] [TypeConverter(typeof(SimpleCollectionConvert))] [Editor(typeof(SimpleCollectionEditor), typeof(UITypeEditor))] public List BDBD { get; set; } = new List(); [Category("引导配置")] [Description("模板坐标")] [DisplayName("模板坐标")] [TypeConverter(typeof(SimpleCollectionConvert))] [Editor(typeof(SimpleCollectionEditor), typeof(UITypeEditor))] public List BDMD { get; set; } = new List(); [Category("引导配置")] [Description("圆心坐标")] [DisplayName("圆心坐标")] [TypeConverter(typeof(SimpleCollectionConvert))] [Editor(typeof(SimpleCollectionEditor), typeof(UITypeEditor))] public List BDYX { get; set; } = new List(); [Category("引导配置")] [Description("检测取像时的取像配置")] [DisplayName("取像配置")] [TypeConverter(typeof(ComplexObjectConvert))] [Editor(typeof(OperationConfigByCameraEditor), typeof(UITypeEditor))] public IOperationConfig P0SnapshotOpConfig { get; set; } = new CameraOperationConfigBase(); [ResCategory("引导配置")] [ResDescription("标定模板算法路径")] [ResDisplayName("标定模板算法路径")] [Editor(typeof(FileDialogEditor), typeof(UITypeEditor))] public string BD2AlgorithemPath { get; set; } = ""; [Category("引导配置")] [DisplayName("引导补偿设置")] [Description("引导补偿设置")] [TypeConverter(typeof(ComplexObjectConvert))] [Editor(typeof(PropertyObjectEditor), typeof(UITypeEditor))] public CompensateValue CompensateValueBD { get; set; } = new CompensateValue(); } public class CompensateValue : IComplexDisplay { [Category("补偿值")] [DisplayName("1.X1")] [Description("X1")] public double X1 { get; set; } = 0; [Category("补偿值")] [DisplayName("2.X2")] [Description("X2")] public double X2 { get; set; } = 0; [Category("补偿值")] [DisplayName("1.Y1")] [Description("Y1")] public double Y1 { get; set; } = 0; [Category("补偿值")] [DisplayName("2.Y2")] [Description("Y2")] public double Y2 { get; set; } = 0; [Category("补偿值")] [DisplayName("1.R1")] [Description("R1")] public double Z1 { get; set; } = 0; [Category("补偿值")] [DisplayName("2.R2")] [Description("R2")] public double Z2 { get; set; } = 0; public string GetDisplayText() { return $""; } public override string ToString() { return GetDisplayText(); } } }