/// <summary> /// 设置参数 /// </summary> /// <param name="IBolb_"></param> /// <param name="MinGray_"></param> /// <param name="MaxGray_"></param> /// <param name="features"></param> /// <param name="Min"></param> /// <param name="Max"></param> /// <returns></returns> public bool Set_SheZhiCanShu(IBlobShuJu IBolb_, string MinGray_, string MaxGray_, string features_, string Min, string Max) { bool ok = false; if (MinGray_ != null) { double num = double.Parse(MinGray_); IBolb_.MinGray = num; } if (MaxGray_ != null) { double num = double.Parse(MaxGray_); IBolb_.MaxGray = num; } if (features_ != null) { IBolb_.Features = features_; } if (Min != null) { double num = double.Parse(Min); IBolb_.Min = num; } if (Max != null) { double num = double.Parse(Max); IBolb_.Max = num; } ok = true; return(ok); }
/// <summary> /// 显示 /// </summary> /// <param name="IBlob_"></param> /// <param name="control"></param> bool Set_ShowParameter(IBlobShuJu IBlob_, Control.ControlCollection control) { bool ok = false; foreach (Control con in control) { string name = con.Name; if ((con is ComboBox) || (con is TextBox) || (con is RichTextBox) || (con is Label) || (con is NumericUpDown)) { switch (name) { #region 分割的区域范围 case "numericUpDown_MinGray": con.Text = IBlob_.MinGray.D.ToString().Replace("\"", ""); break; case "numericUpDown_MaxGray": con.Text = IBlob_.MaxGray.D.ToString().Replace("\"", ""); break; #endregion #region 筛选的特征 case "comboBox_Features": con.Text = IBlob_.Features.ToString().Replace("\"", ""); break; case "numericUpDown_Min": con.Text = IBlob_.Min.D.ToString().Replace("\"", ""); break; case "numericUpDown_Max": con.Text = IBlob_.Max.D.ToString().Replace("\"", ""); break; #endregion #region 默认处理 default: break; #endregion } } if (con.Controls.Count > 0) { Set_ShowParameter(IBlob_, con.Controls); } } ok = true; return(ok); }
/// <summary> /// 刷新定位点 /// </summary> /// <param name="IBolb_"></param> /// <returns></returns> public bool Set_ShuaXinDingWeiDian(IBlobShuJu IBolb_) { bool ok = false; if (IBolb_.IrectShuJuPianYi != null) { IBolb_.GenSuiDian_A = IBolb_.IrectShuJuPianYi.Angle; IBolb_.GenSuiDian_Y_Row = IBolb_.IrectShuJuPianYi.Row; IBolb_.GeuSuiDian_X_Col = IBolb_.IrectShuJuPianYi.Column; ok = true; } return(ok); }
/// <summary> /// 显示参数 /// </summary> /// <param name="IBlob_"></param> /// <param name="control_"></param> /// <param name="halconWinControl_"></param> /// <returns></returns> public bool Set_ShowParameterHalconWinControl(IBlobShuJu IBlob_, Control.ControlCollection control_, HalControl.HalconWinControl_ROI halconWinControl_) { bool ok = false; this.ShuaXinDingWeiDian((IToolDateFather)IBlob_, IBlob_.IOutSide); if (halconWinControl_ != null) { halconWinControl_.DrawRectangle2(IBlob_.IOutSide.Mid_col_x, IBlob_.IOutSide.Mid_row_y, IBlob_.IOutSide.Phi, IBlob_.IOutSide.Len1, IBlob_.IOutSide.Len2, IBlob_.IOutSide); } Set_ShowParameter(IBlob_, control_); return(ok); }
private void ParentFrm_Load(object sender, EventArgs e) { halconWinControl_ROI1.init(); _setBlob = new Set_BlobShuJu(); if (TreeStatic.Mult_Tree_Node.Obj == null) { this._blob = new BlobShuJu(); } else { this._blob = (BlobShuJu)TreeStatic.Mult_Tree_Node.Obj; } _setBlob.Set_ShowParameterHalconWinControl(this._blob, this.Controls, this.halconWinControl_ROI1); }