using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel; using Misc; using FObjBase; using FLY.Thick.Base.IService; using FLY.Thick.Base.OBJ_INTERFACE; using FLY.Thick.Base.Common; namespace FLY.Thick.Base.Client { /// /// 边界查找服务 客户代理 /// public class BorderSearchServiceClient: FObjBase.Reflect.Reflect_SeviceClient, IBorderSearchService { protected override Type InterfaceType => typeof(IBorderSearchService); /// /// 边界查找服务 构造 /// /// public BorderSearchServiceClient(UInt32 id) : base(id) { } /// /// 边界查找服务 构造 /// /// 服务id /// 连接器 public BorderSearchServiceClient(UInt32 serviceId, string connName) : base(serviceId, connName) { } #region IBorderSearchService 成员 public bool Enable { get; set; } /// /// 边界拐点检测,找到的边界更加精确 /// public bool IsBreakDetect { get; set; } = true; [PropertyChanged.DoNotCheckEquality] public Range Valid { get; set; } = new Range(); [PropertyChanged.DoNotCheckEquality] public Range Border_Backw { get; set; } = new Range(); [PropertyChanged.DoNotCheckEquality] public Range Border_Forw { get; set; } = new Range(); [PropertyChanged.DoNotCheckEquality] public Range Border { get; set; } = new Range(); /// /// 当前膜宽,测量出来的,单位是 脉冲 /// public int Width { get; set; } /// /// 膜中间位置 单位 脉冲 /// public int Mid { get; set; } /// /// 调试数据更新时间 /// public DateTime UpdateTime { get; set; } /// /// 手动设置温修AD值 /// public bool TempADBySet { get; set; } public int TempAD { get; set; } public int TempRange { get; set; } /// /// 温修范围是温修的百分比 /// public bool IsTempRangeByPercent { get; set; } = true; /// /// 温修范围百分比 /// public double TempRangePercent { get; set; } = 0.02; public int N { get; set; } /// /// 探头直径,单位脉冲, 膜宽 = 边界范围 - 探头直径 /// public int SensorWidth { get; set; } public int N2 { get; set; } public int N3 { get; set; } /// /// 产品宽度,设置值 单位:脉冲 /// 当膜超过范围(没有经过阀值),就使用它,猜边界在哪 /// public int ProductWidth { get; set; } #endregion public void GetView(AsyncCBHandler asyncDelegate, object asyncContext) { Call("GetView", null, asyncDelegate, asyncContext); } public void Apply() { Call("Apply"); } } }