| | |
| | | |
| | | namespace Bro.M071.Process |
| | | { |
| | | public class KeyLocation : IComplexDisplay |
| | | { |
| | | [Category("键名配置")] |
| | | [Description("单键键名")] |
| | | [TypeConverter(typeof(KeyNameDictConverter))] |
| | | public string Key { get; set; } |
| | | |
| | | [Category("位置配置")] |
| | | [Description("单键在键盘平面图上的位置显示")] |
| | | public Rectangle KeyRect { get; set; } = new Rectangle(); |
| | | |
| | | [Category("位置配置")] |
| | | [Description("单键之后间隙位置")] |
| | | public Rectangle IntervalRect { get; set; } = new Rectangle(); |
| | | |
| | | public string GetDisplayText() |
| | | { |
| | | return $"{Key}:{KeyRect.X},{KeyRect.Y},{KeyRect.Width},{KeyRect.Height}"; |
| | | } |
| | | } |
| | | |
| | | |
| | | public class KeyAlgorithem : IComplexDisplay |
| | | { |
| | | [Browsable(false)] |
| | |
| | | get => key; |
| | | set |
| | | { |
| | | AlignName = key = value; |
| | | AliasName = key = value; |
| | | } |
| | | } |
| | | |
| | | [Category("键名配置")] |
| | | [Description("别名")] |
| | | public string AlignName { get; set; } |
| | | public string AliasName { get; set; } |
| | | |
| | | [Category("启用设置")] |
| | | [Description("true:启用 false:禁用")] |
| | |
| | | |
| | | public string GetDisplayText() |
| | | { |
| | | return $"{AlignName}"; |
| | | string snapShot = "未指定"; |
| | | |
| | | using (var scope = GlobalVar.Container.BeginLifetimeScope()) |
| | | { |
| | | var config = scope.Resolve<IProcessConfig>(); |
| | | if (config != null) |
| | | { |
| | | var snapshotPoint = (config as M071Config).SnapshotPointCollection.FirstOrDefault(u => u.Id == SnapshotPointId); |
| | | if (snapshotPoint != null) |
| | | { |
| | | snapShot = snapshotPoint.Name; |
| | | } |
| | | } |
| | | } |
| | | |
| | | return $"{AliasName}-{snapShot}-{ImageSeq}"; |
| | | } |
| | | |
| | | public List<string> GetHalconToolPathList() |
| | |
| | | public class ProductionMeasurement : INotifyPropertyChanged, IDisposable |
| | | { |
| | | public string Barcode; |
| | | public string PResult; |
| | | |
| | | public List<MeasurementUint> Measurements = new List<MeasurementUint>(); |
| | | public List<MeasurementUnit> Measurements = new List<MeasurementUnit>(); |
| | | |
| | | public List<IShapeElement> ElementList = new List<IShapeElement>(); |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | public class MeasurementUint : IComplexDisplay, INotifyPropertyChanged, IDisposable |
| | | public class MeasurementUnit : IComplexDisplay, INotifyPropertyChanged, IDisposable |
| | | { |
| | | public string Id = Guid.NewGuid().ToString(); |
| | | |
| | |
| | | |
| | | #region 显示 |
| | | [Browsable(false)] |
| | | public Rectangle DisplayLocation { get; set; } = new Rectangle(); |
| | | public Rectangle DisplayLocation { get; set; } = new Rectangle(10, 10, 100, 100); |
| | | #endregion |
| | | |
| | | #region 检测结果 |
| | |
| | | if (valuePairs == null || valuePairs.Count == 0) |
| | | { |
| | | IsDone = false; |
| | | PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("IsDone")); |
| | | return; |
| | | } |
| | | |
| | | foreach (KeyValuePair<string, double> pair in valuePairs) |