diff --git a/halftoneproject-master/BanBoShi/SysCtrl/ConfMgr.cs b/halftoneproject-master/BanBoShi/SysCtrl/ConfMgr.cs index ff858ce9..f3827475 100644 --- a/halftoneproject-master/BanBoShi/SysCtrl/ConfMgr.cs +++ b/halftoneproject-master/BanBoShi/SysCtrl/ConfMgr.cs @@ -130,6 +130,12 @@ namespace MaiMuAOI.SysCtrl /// 修复台 对比图 /// public ImageSaveParam SizeRepairImag { get; set; } + + /// + /// 缺陷原始小图 + /// + public ImageSaveParam DefectSrcSmallImag { get; set; } + public double Defect_SrcSmall_Thres { get; set; } #endregion #region 功能 @@ -455,6 +461,7 @@ namespace MaiMuAOI.SysCtrl SizeBigImag = new ImageSaveParam("D:\\AllImageSave\\SizeBigImag"); SizeNGImag = new ImageSaveParam("D:\\AllImageSave\\SizeNGImag"); SizeRepairImag = new ImageSaveParam("D:\\AllImageSave\\SizeRepairImag"); + DefectSrcSmallImag = new ImageSaveParam("D:\\Image\\缺陷原始小图"); OpenMarkErrorStop = true; OpenBuzzer = true; OpenDoor = true; @@ -762,6 +769,13 @@ namespace MaiMuAOI.SysCtrl iniHelper.WriteBool("SizeRepairImag", "AutoDelete", SysParams.SizeRepairImag.AutoDelete); iniHelper.WriteDouble("SizeRepairImag", "AutoDeleteDays", SysParams.SizeRepairImag.AutoDeleteDays); + iniHelper.WriteDouble("DefectSrcSmallImag", "Defect_SrcSmall_Thres", SysParams.Defect_SrcSmall_Thres); + + iniHelper.WriteString("DefectSrcSmallImag", "SavePath", SysParams.DefectSrcSmallImag.SavePath); + iniHelper.WriteBool("DefectSrcSmallImag", "AutoSave", SysParams.DefectSrcSmallImag.AutoSave); + iniHelper.WriteBool("DefectSrcSmallImag", "AutoDelete", SysParams.DefectSrcSmallImag.AutoDelete); + iniHelper.WriteDouble("DefectSrcSmallImag", "AutoDeleteDays", SysParams.DefectSrcSmallImag.AutoDeleteDays); + iniHelper.WriteString("Log", "SavePath", SysParams.LogPath); iniHelper.WriteBool("Log", "AutoDelete", SysParams.AutoDeleteLog); iniHelper.WriteDouble("Log", "AutoDeleteDays", SysParams.AutoDeleteLogData); @@ -903,6 +917,19 @@ namespace MaiMuAOI.SysCtrl iniHelper.ReadBool("SaveAllImg", "SaveAllImg", out bValue); sysParams.SaveAllImg = bValue; + iniHelper.ReadDouble("DefectSrcSmallImag", "Defect_SrcSmall_Thres", out dValue); + sysParams.Defect_SrcSmall_Thres = dValue; + + iniHelper.ReadString("DefectSrcSmallImag", "SavePath", out sValue); + sysParams.DefectSrcSmallImag.SavePath = sValue.Replace("\0", ""); + iniHelper.ReadBool("DefectSrcSmallImag", "AutoSave", out bValue); + sysParams.DefectSrcSmallImag.AutoSave = bValue; + iniHelper.ReadBool("DefectSrcSmallImag", "AutoDelete", out bValue); + sysParams.DefectSrcSmallImag.AutoDelete = bValue; + iniHelper.ReadDouble("DefectSrcSmallImag", "AutoDeleteDays", out dValue); + sysParams.DefectSrcSmallImag.AutoDeleteDays = dValue; + + iniHelper.ReadString("DefectBigImag", "SavePath", out sValue); sysParams.DefectBigImag.SavePath = sValue.Replace("\0", ""); iniHelper.ReadBool("DefectBigImag", "AutoSave", out bValue); diff --git a/halftoneproject-master/BanBoShi/SysCtrl/SysEnum.cs b/halftoneproject-master/BanBoShi/SysCtrl/SysEnum.cs index ea69639a..82cfeffe 100644 --- a/halftoneproject-master/BanBoShi/SysCtrl/SysEnum.cs +++ b/halftoneproject-master/BanBoShi/SysCtrl/SysEnum.cs @@ -145,8 +145,10 @@ namespace MaiMuAOI.SysCtrl nb, [Description("正常3")] nc, + [Description("正常4")] + nd, } - public enum DefectNameEnum +public enum DefectNameEnum { 堵孔, 脏污, @@ -166,6 +168,7 @@ namespace MaiMuAOI.SysCtrl 正常1, 正常2, 正常3, + 正常4 } public enum ValType { diff --git a/halftoneproject-master/BanBoShi/SysCtrl/SysMgr.cs b/halftoneproject-master/BanBoShi/SysCtrl/SysMgr.cs index 913bd04c..38af102c 100644 --- a/halftoneproject-master/BanBoShi/SysCtrl/SysMgr.cs +++ b/halftoneproject-master/BanBoShi/SysCtrl/SysMgr.cs @@ -9091,6 +9091,7 @@ namespace MaiMuAOI.SysCtrl #region 缺陷处理 private bool DefectPicture(int stepIndex, string processName,SizeDefectProp param, string gbxBmpPath, Product md, string picName) { + int err = 0; if (scannerGBmpQueue.Count < 1) { Log($"{stepIndex + 1}-{processName}", $"缺陷检测异常,无源图像!!", WarningEnum.Low); @@ -9133,8 +9134,8 @@ namespace MaiMuAOI.SysCtrl new List(), 1, 1, res.defectCount, 1, true)); //OnAutoRuning(new RunEventArgs(liStatocStepIndex, // $"源图索引:{res.index},缺陷数:{res.defectCount},处理时间(ms):{string.Join("->", res.stopwatch.Select(i => i.ToString()).ToArray())}")); - Log($"{res.stepIndex + 1}-{res.processName}", $"缺陷检测完成(源图索引:{res.index}),缺陷数:{res.defectCount},处理时间(ms):{string.Join("->", res.stopwatch.Select(i => i.ToString()).ToArray())}"); - string path; + Log($"{res.stepIndex + 1}-{res.processName}", $"缺陷检测完成(源图索引:{res.index}),缺陷数:{res.defectCount},阈值{res.modelType}-{res.thresholdsClass},处理时间(ms):{string.Join("->", res.stopwatch.Select(i => i.ToString()).ToArray())}"); + string path = ""; if (res.defectCount > 0) { //UI显示小图 (含统计缺陷类型数量) @@ -9227,7 +9228,45 @@ namespace MaiMuAOI.SysCtrl //res.bmps_tag[i].Save(path + $"{indexList[i]}.bmp", ImageFormat.Bmp); } } - + //保存原始小图 + if (confMgr.SysConfigParams.DefectSrcSmallImag.SavePath != "" && Directory.Exists(confMgr.SysConfigParams.DefectSrcSmallImag.SavePath)) + { + err = 12; + Log($"{res.stepIndex + 1}-{res.processName}", $"原始小图保存"); + string sinfo = ""; + int sterr = 0; + try + { + for (int i = 0; i < res.defectInfor2RestorationDesk.Count(); i++) + { + sterr = 1; + sinfo = JsonConvert.SerializeObject(res.defectInfor2RestorationDesk[i]); + int indext = int.Parse(res.defectInfor2RestorationDesk[i][0]); + double thres = double.Parse(res.defectInfor2RestorationDesk[i][4]); + if (thres >= confMgr.SysConfigParams.Defect_SrcSmall_Thres) + { + path = Util.CreateSubDir(confMgr.SysConfigParams.DefectSrcSmallImag.SavePath, + new List { order.CreateTime.ToString("yyyyMMdd"), + //md.MainGrid == 1?"主栅":md.DefectModelFile.IndexOf("rj") >= 0?"rj":md.DefectModelFile.IndexOf("pi") >= 0?"pi" : "其他", + md.DefectModelFile.Replace(".onnx", ""), + order.SN, + res.defectInfor2RestorationDesk[i][3]}); + sterr = 2; + path += $"Defect_SN{order.SN}_I{res.index}_X{res.Xmm}_Y{res.Ymm}_{md.StepInfo.Name}"; + + res.bmps_cut[indext].ImWrite(path + $"_i{i}.bmp"); + sterr = 3; + //Thread.Sleep(1); + } + } + } + catch (Exception ex) + { + Log($"{res.stepIndex + 1}-{res.processName}", $"原始小图保存出错{sterr}-{sinfo}-{path}:{ex.Message}"); + } + err = 13; + } + err = 14; //保存压缩大图 -- 用于修复台调用 if (confMgr.SysConfigParams.DefectRepairImag.SavePath != "" && Directory.Exists(confMgr.SysConfigParams.DefectRepairImag.SavePath)) { @@ -9620,6 +9659,8 @@ namespace MaiMuAOI.SysCtrl statusMgr.DeleteFiles(confMgr.SysConfigParams.DefectBigImag.SavePath, confMgr.SysConfigParams.DefectBigImag.AutoDeleteDays, true); if (confMgr.SysConfigParams.DefectSmallImag.AutoDelete) statusMgr.DeleteFiles(confMgr.SysConfigParams.DefectSmallImag.SavePath, confMgr.SysConfigParams.DefectSmallImag.AutoDeleteDays, true); + if (confMgr.SysConfigParams.DefectSrcSmallImag.AutoDelete ) + statusMgr.DeleteFiles(confMgr.SysConfigParams.DefectSrcSmallImag.SavePath, confMgr.SysConfigParams.DefectSrcSmallImag.AutoDeleteDays, true); if (confMgr.SysConfigParams.DefectRepairImag.AutoDelete) statusMgr.DeleteFiles(confMgr.SysConfigParams.DefectRepairImag.SavePath, confMgr.SysConfigParams.DefectRepairImag.AutoDeleteDays, true); if (confMgr.SysConfigParams.SizeBigImag.AutoDelete) diff --git a/halftoneproject-master/BanBoShi/SysUI/ProductAndStep/ProductInfoFrm.cs b/halftoneproject-master/BanBoShi/SysUI/ProductAndStep/ProductInfoFrm.cs index 435691ff..dacd6808 100644 --- a/halftoneproject-master/BanBoShi/SysUI/ProductAndStep/ProductInfoFrm.cs +++ b/halftoneproject-master/BanBoShi/SysUI/ProductAndStep/ProductInfoFrm.cs @@ -320,11 +320,13 @@ namespace MaiMuAOI.SysUI.ProductAndStep lstDefect.RemoveAt(13); lstDefect.RemoveAt(13); lstDefect.RemoveAt(13); + lstDefect.RemoveAt(13); } else { lstDefect.RemoveAt(15); lstDefect.RemoveAt(15); + lstDefect.RemoveAt(15); lstDefect.RemoveAt(15); } } @@ -333,6 +335,7 @@ namespace MaiMuAOI.SysUI.ProductAndStep lstDefect.RemoveAt(15); lstDefect.RemoveAt(15); lstDefect.RemoveAt(15); + lstDefect.RemoveAt(15); } this.flpQualifiedPannel.Controls.Clear(); foreach (DictionaryEntry item in lstDefect) diff --git a/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.Designer.cs b/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.Designer.cs index 2cc97211..9669b0c2 100644 --- a/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.Designer.cs +++ b/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.Designer.cs @@ -59,6 +59,8 @@ this.label21 = new System.Windows.Forms.Label(); this.groupBox13 = new System.Windows.Forms.GroupBox(); this.panel13 = new System.Windows.Forms.Panel(); + this.cbDefectEnable = new System.Windows.Forms.CheckBox(); + this.cbSizeEnabel = new System.Windows.Forms.CheckBox(); this.cbShowBtn = new System.Windows.Forms.CheckBox(); this.cbDoorAlm = new System.Windows.Forms.CheckBox(); this.cbBuzzShow = new System.Windows.Forms.CheckBox(); @@ -197,6 +199,8 @@ this.cobLightPortNum = new System.Windows.Forms.ComboBox(); this.label5 = new System.Windows.Forms.Label(); this.skinTabPage1 = new CCWin.SkinControl.SkinTabPage(); + this.cbOrderCntcheck = new System.Windows.Forms.CheckBox(); + this.cbOrdercheck = new System.Windows.Forms.CheckBox(); this.cbAsideDefect = new System.Windows.Forms.CheckBox(); this.cbSnapDefect = new System.Windows.Forms.CheckBox(); this.cbPdtPut = new System.Windows.Forms.CheckBox(); @@ -314,10 +318,16 @@ this.tbBarTenderTempPath = new System.Windows.Forms.TextBox(); this.cbOpenBarTenderPrint = new System.Windows.Forms.CheckBox(); this.label76 = new System.Windows.Forms.Label(); - this.cbDefectEnable = new System.Windows.Forms.CheckBox(); - this.cbSizeEnabel = new System.Windows.Forms.CheckBox(); - this.cbOrdercheck = new System.Windows.Forms.CheckBox(); - this.cbOrderCntcheck = new System.Windows.Forms.CheckBox(); + this.groupBox29 = new System.Windows.Forms.GroupBox(); + this.panel29 = new System.Windows.Forms.Panel(); + this.label88 = new System.Windows.Forms.Label(); + this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.numericUpDown2 = new System.Windows.Forms.NumericUpDown(); + this.checkBox1 = new System.Windows.Forms.CheckBox(); + this.label86 = new System.Windows.Forms.Label(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.numericUpDown1 = new System.Windows.Forms.NumericUpDown(); + this.label87 = new System.Windows.Forms.Label(); this.toolStrip1.SuspendLayout(); this.skinTabPage6.SuspendLayout(); this.groupBox28.SuspendLayout(); @@ -425,6 +435,11 @@ this.groupBox26.SuspendLayout(); this.panel26.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit(); + this.groupBox29.SuspendLayout(); + this.panel29.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit(); this.SuspendLayout(); // // uiTitel1 @@ -772,6 +787,30 @@ this.panel13.Size = new System.Drawing.Size(716, 84); this.panel13.TabIndex = 0; // + // cbDefectEnable + // + this.cbDefectEnable.AutoSize = true; + this.cbDefectEnable.ForeColor = System.Drawing.SystemColors.ControlText; + this.cbDefectEnable.Location = new System.Drawing.Point(239, 52); + this.cbDefectEnable.Margin = new System.Windows.Forms.Padding(2); + this.cbDefectEnable.Name = "cbDefectEnable"; + this.cbDefectEnable.Size = new System.Drawing.Size(120, 16); + this.cbDefectEnable.TabIndex = 13; + this.cbDefectEnable.Text = "显示缺陷检测禁用"; + this.cbDefectEnable.UseVisualStyleBackColor = true; + // + // cbSizeEnabel + // + this.cbSizeEnabel.AutoSize = true; + this.cbSizeEnabel.ForeColor = System.Drawing.SystemColors.ControlText; + this.cbSizeEnabel.Location = new System.Drawing.Point(79, 52); + this.cbSizeEnabel.Margin = new System.Windows.Forms.Padding(2); + this.cbSizeEnabel.Name = "cbSizeEnabel"; + this.cbSizeEnabel.Size = new System.Drawing.Size(120, 16); + this.cbSizeEnabel.TabIndex = 12; + this.cbSizeEnabel.Text = "显示尺寸检测禁用"; + this.cbSizeEnabel.UseVisualStyleBackColor = true; + // // cbShowBtn // this.cbShowBtn.AutoSize = true; @@ -1254,6 +1293,7 @@ // skinTabPage4 // this.skinTabPage4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(8)))), ((int)(((byte)(31)))), ((int)(((byte)(120))))); + this.skinTabPage4.Controls.Add(this.groupBox29); this.skinTabPage4.Controls.Add(this.groupBox21); this.skinTabPage4.Controls.Add(this.groupBox20); this.skinTabPage4.Controls.Add(this.groupBox15); @@ -2665,6 +2705,32 @@ this.skinTabPage1.TabItemImage = null; this.skinTabPage1.Text = "功能设置"; // + // cbOrderCntcheck + // + this.cbOrderCntcheck.AutoSize = true; + this.cbOrderCntcheck.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.cbOrderCntcheck.ForeColor = System.Drawing.SystemColors.ControlLightLight; + this.cbOrderCntcheck.Location = new System.Drawing.Point(89, 223); + this.cbOrderCntcheck.Margin = new System.Windows.Forms.Padding(2); + this.cbOrderCntcheck.Name = "cbOrderCntcheck"; + this.cbOrderCntcheck.Size = new System.Drawing.Size(154, 20); + this.cbOrderCntcheck.TabIndex = 27; + this.cbOrderCntcheck.Text = "启用检测数量确认"; + this.cbOrderCntcheck.UseVisualStyleBackColor = true; + // + // cbOrdercheck + // + this.cbOrdercheck.AutoSize = true; + this.cbOrdercheck.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.cbOrdercheck.ForeColor = System.Drawing.SystemColors.ControlLightLight; + this.cbOrdercheck.Location = new System.Drawing.Point(89, 180); + this.cbOrdercheck.Margin = new System.Windows.Forms.Padding(2); + this.cbOrdercheck.Name = "cbOrdercheck"; + this.cbOrdercheck.Size = new System.Drawing.Size(154, 20); + this.cbOrdercheck.TabIndex = 26; + this.cbOrdercheck.Text = "启用检测工单确认"; + this.cbOrdercheck.UseVisualStyleBackColor = true; + // // cbAsideDefect // this.cbAsideDefect.AutoSize = true; @@ -2825,7 +2891,7 @@ this.skinTabControl1.PageImagePosition = CCWin.SkinControl.SkinTabControl.ePageImagePosition.Left; this.skinTabControl1.PageNorml = null; this.skinTabControl1.PageNormlTxtColor = System.Drawing.Color.White; - this.skinTabControl1.SelectedIndex = 7; + this.skinTabControl1.SelectedIndex = 3; this.skinTabControl1.Size = new System.Drawing.Size(723, 643); this.skinTabControl1.SizeMode = System.Windows.Forms.TabSizeMode.Fixed; this.skinTabControl1.TabIndex = 22; @@ -4403,55 +4469,143 @@ this.label76.Text = "模板路径:"; this.label76.Visible = false; // - // cbDefectEnable + // groupBox29 // - this.cbDefectEnable.AutoSize = true; - this.cbDefectEnable.ForeColor = System.Drawing.SystemColors.ControlText; - this.cbDefectEnable.Location = new System.Drawing.Point(239, 52); - this.cbDefectEnable.Margin = new System.Windows.Forms.Padding(2); - this.cbDefectEnable.Name = "cbDefectEnable"; - this.cbDefectEnable.Size = new System.Drawing.Size(120, 16); - this.cbDefectEnable.TabIndex = 13; - this.cbDefectEnable.Text = "显示缺陷检测禁用"; - this.cbDefectEnable.UseVisualStyleBackColor = true; + this.groupBox29.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox29.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(8)))), ((int)(((byte)(31)))), ((int)(((byte)(120))))); + this.groupBox29.Controls.Add(this.panel29); + this.groupBox29.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.groupBox29.ForeColor = System.Drawing.Color.White; + this.groupBox29.Location = new System.Drawing.Point(3, 488); + this.groupBox29.Margin = new System.Windows.Forms.Padding(2); + this.groupBox29.Name = "groupBox29"; + this.groupBox29.Padding = new System.Windows.Forms.Padding(2); + this.groupBox29.Size = new System.Drawing.Size(719, 75); + this.groupBox29.TabIndex = 38; + this.groupBox29.TabStop = false; + this.groupBox29.Text = "原始小图"; + // + // panel29 + // + this.panel29.BackColor = System.Drawing.Color.White; + this.panel29.Controls.Add(this.label88); + this.panel29.Controls.Add(this.pictureBox1); + this.panel29.Controls.Add(this.numericUpDown2); + this.panel29.Controls.Add(this.checkBox1); + this.panel29.Controls.Add(this.label86); + this.panel29.Controls.Add(this.textBox1); + this.panel29.Controls.Add(this.numericUpDown1); + this.panel29.Controls.Add(this.label87); + this.panel29.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel29.Location = new System.Drawing.Point(2, 16); + this.panel29.Margin = new System.Windows.Forms.Padding(2); + this.panel29.Name = "panel29"; + this.panel29.Size = new System.Drawing.Size(715, 57); + this.panel29.TabIndex = 0; + // + // label88 + // + this.label88.AutoSize = true; + this.label88.ForeColor = System.Drawing.Color.Black; + this.label88.Location = new System.Drawing.Point(381, 35); + this.label88.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label88.Name = "label88"; + this.label88.Size = new System.Drawing.Size(17, 12); + this.label88.TabIndex = 17; + this.label88.Text = "天"; + // + // pictureBox1 + // + this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image"))); + this.pictureBox1.Location = new System.Drawing.Point(637, 5); + this.pictureBox1.Margin = new System.Windows.Forms.Padding(2); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(21, 19); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pictureBox1.TabIndex = 6; + this.pictureBox1.TabStop = false; + this.pictureBox1.Click += new System.EventHandler(this.btnClearPathClick); + // + // numericUpDown2 + // + this.numericUpDown2.DecimalPlaces = 1; + this.numericUpDown2.Location = new System.Drawing.Point(334, 30); + this.numericUpDown2.Margin = new System.Windows.Forms.Padding(2); + this.numericUpDown2.Name = "numericUpDown2"; + this.numericUpDown2.Size = new System.Drawing.Size(43, 21); + this.numericUpDown2.TabIndex = 16; + this.numericUpDown2.Value = new decimal(new int[] { + 7, + 0, + 0, + 0}); // - // cbSizeEnabel + // checkBox1 // - this.cbSizeEnabel.AutoSize = true; - this.cbSizeEnabel.ForeColor = System.Drawing.SystemColors.ControlText; - this.cbSizeEnabel.Location = new System.Drawing.Point(79, 52); - this.cbSizeEnabel.Margin = new System.Windows.Forms.Padding(2); - this.cbSizeEnabel.Name = "cbSizeEnabel"; - this.cbSizeEnabel.Size = new System.Drawing.Size(120, 16); - this.cbSizeEnabel.TabIndex = 12; - this.cbSizeEnabel.Text = "显示尺寸检测禁用"; - this.cbSizeEnabel.UseVisualStyleBackColor = true; + this.checkBox1.AutoSize = true; + this.checkBox1.ForeColor = System.Drawing.Color.Black; + this.checkBox1.Location = new System.Drawing.Point(234, 32); + this.checkBox1.Margin = new System.Windows.Forms.Padding(2); + this.checkBox1.Name = "checkBox1"; + this.checkBox1.Size = new System.Drawing.Size(96, 16); + this.checkBox1.TabIndex = 15; + this.checkBox1.Text = "自动清除大于"; + this.checkBox1.UseVisualStyleBackColor = true; // - // cbOrdercheck + // label86 // - this.cbOrdercheck.AutoSize = true; - this.cbOrdercheck.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.cbOrdercheck.ForeColor = System.Drawing.SystemColors.ControlLightLight; - this.cbOrdercheck.Location = new System.Drawing.Point(89, 180); - this.cbOrdercheck.Margin = new System.Windows.Forms.Padding(2); - this.cbOrdercheck.Name = "cbOrdercheck"; - this.cbOrdercheck.Size = new System.Drawing.Size(154, 20); - this.cbOrdercheck.TabIndex = 26; - this.cbOrdercheck.Text = "启用检测工单确认"; - this.cbOrdercheck.UseVisualStyleBackColor = true; + this.label86.AutoSize = true; + this.label86.ForeColor = System.Drawing.Color.Black; + this.label86.Location = new System.Drawing.Point(440, 33); + this.label86.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label86.Name = "label86"; + this.label86.Size = new System.Drawing.Size(29, 12); + this.label86.TabIndex = 14; + this.label86.Text = "阈值"; // - // cbOrderCntcheck + // textBox1 // - this.cbOrderCntcheck.AutoSize = true; - this.cbOrderCntcheck.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.cbOrderCntcheck.ForeColor = System.Drawing.SystemColors.ControlLightLight; - this.cbOrderCntcheck.Location = new System.Drawing.Point(89, 223); - this.cbOrderCntcheck.Margin = new System.Windows.Forms.Padding(2); - this.cbOrderCntcheck.Name = "cbOrderCntcheck"; - this.cbOrderCntcheck.Size = new System.Drawing.Size(154, 20); - this.cbOrderCntcheck.TabIndex = 27; - this.cbOrderCntcheck.Text = "启用检测数量确认"; - this.cbOrderCntcheck.UseVisualStyleBackColor = true; + this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.textBox1.Location = new System.Drawing.Point(79, 5); + this.textBox1.Margin = new System.Windows.Forms.Padding(2); + this.textBox1.Name = "textBox1"; + this.textBox1.ReadOnly = true; + this.textBox1.Size = new System.Drawing.Size(553, 21); + this.textBox1.TabIndex = 5; + this.textBox1.Text = "D:\\phtons\\"; + this.textBox1.Click += new System.EventHandler(this.tbPath_Click); + // + // numericUpDown1 + // + this.numericUpDown1.DecimalPlaces = 1; + this.numericUpDown1.Location = new System.Drawing.Point(477, 30); + this.numericUpDown1.Margin = new System.Windows.Forms.Padding(2); + this.numericUpDown1.Maximum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.numericUpDown1.Name = "numericUpDown1"; + this.numericUpDown1.Size = new System.Drawing.Size(43, 21); + this.numericUpDown1.TabIndex = 13; + this.numericUpDown1.Value = new decimal(new int[] { + 7, + 0, + 0, + 65536}); + // + // label87 + // + this.label87.AutoSize = true; + this.label87.ForeColor = System.Drawing.Color.Black; + this.label87.Location = new System.Drawing.Point(10, 10); + this.label87.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label87.Name = "label87"; + this.label87.Size = new System.Drawing.Size(65, 12); + this.label87.TabIndex = 4; + this.label87.Text = "保存路径:"; // // SysSetFrm // @@ -4602,6 +4756,12 @@ this.panel26.ResumeLayout(false); this.panel26.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit(); + this.groupBox29.ResumeLayout(false); + this.panel29.ResumeLayout(false); + this.panel29.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -4892,5 +5052,15 @@ private System.Windows.Forms.CheckBox cbSizeEnabel; private System.Windows.Forms.CheckBox cbOrdercheck; private System.Windows.Forms.CheckBox cbOrderCntcheck; + private System.Windows.Forms.GroupBox groupBox29; + private System.Windows.Forms.Panel panel29; + private System.Windows.Forms.Label label88; + private System.Windows.Forms.PictureBox pictureBox1; + private System.Windows.Forms.NumericUpDown numericUpDown2; + private System.Windows.Forms.CheckBox checkBox1; + private System.Windows.Forms.Label label86; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.NumericUpDown numericUpDown1; + private System.Windows.Forms.Label label87; } } \ No newline at end of file diff --git a/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.cs b/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.cs index 993cc1d2..5dab8877 100644 --- a/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.cs +++ b/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.cs @@ -82,6 +82,12 @@ namespace MaiMuAOI.UI.SysSet #region 界面刷新&保存 private void RefeshParams() { + + textBox1.Text = ConfMgr.Instance.SysConfigParams.DefectSrcSmallImag.SavePath; + checkBox1.Checked = ConfMgr.Instance.SysConfigParams.DefectSrcSmallImag.AutoDelete; + numericUpDown2.Value = (decimal)ConfMgr.Instance.SysConfigParams.DefectSrcSmallImag.AutoDeleteDays; + numericUpDown1.Value = (decimal)ConfMgr.Instance.SysConfigParams.Defect_SrcSmall_Thres; + ckSkipSizeFailed.Checked = ConfMgr.Instance.SysConfigParams.OpenMarkErrorStop; chkBuzzer.Checked = ConfMgr.Instance.SysConfigParams.OpenBuzzer; chkDoorSensor.Checked = ConfMgr.Instance.SysConfigParams.OpenDoor; @@ -237,6 +243,11 @@ namespace MaiMuAOI.UI.SysSet SysConfigParams configParams = new SysConfigParams(); configParams = ConfMgr.Instance.SysConfigParams; + configParams.DefectSrcSmallImag.SavePath = textBox1.Text; + configParams.DefectSrcSmallImag.AutoDelete = checkBox1.Checked; + configParams.DefectSrcSmallImag.AutoDeleteDays = (double)numericUpDown2.Value; + configParams.Defect_SrcSmall_Thres = (double)numericUpDown1.Value; + configParams.OpenMarkErrorStop = ckSkipSizeFailed.Checked; configParams.OpenBuzzer = chkBuzzer.Checked; configParams.OpenDoor = chkDoorSensor.Checked; @@ -432,6 +443,8 @@ namespace MaiMuAOI.UI.SysSet this.tbSizeBmpSavePath.Text = path; else if (tb.Name == tbSizeBmpZoomImageSavePath.Name) this.tbSizeBmpZoomImageSavePath.Text = path; + else if (tb.Name == textBox1.Name) + this.textBox1.Text = path; } } @@ -452,6 +465,8 @@ namespace MaiMuAOI.UI.SysSet this.tbSizeBmpSavePath.Text = path; else if (pb.Name == btnSizeBmp_Zoom_Image_SavePath.Name) this.tbSizeBmpZoomImageSavePath.Text = path; + else if (pb.Name == textBox1.Name) + this.textBox1.Text = path; } private void tsbtnDatSave_Click(object sender, EventArgs e) diff --git a/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.resx b/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.resx index 23226f4b..f9e5a6e4 100644 --- a/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.resx +++ b/halftoneproject-master/BanBoShi/SysUI/SysSet/SysSetFrm.resx @@ -145,17 +145,17 @@ iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJVSURBVFhHvZc9SyNRGIXzI/wB2sgqQhiyxo8o48dGSPA7 - ghERP4ogKgguIgjqllukULvU1jaChZWFjYj/wcpqu0VBFLn6jPPKdTKTTJI7HjgDk7n3nDP33nfCG6sV - 46s7VnZpq/jOCzuTu++ZWnyI/8q+JBIJJeyz7Vd+Sw1nnhkzkFu4Yc7BrWpyZWpHOr96mkymnvpHxhSc - 2yupjZNbh9vn9w4PrpVDuefZyuGZM3YkX3DCoYGWK1sdQzPL7b22/YgpYmJSDwmFBmHQRNu1CQYDeRM/ - wUZIELRdm2CwbH4CJoi2axMMBun7a4pohg7A/k+u/zEShO1EC83QAZjInkkFcIikCggl1I24lyqAYspc - 7hlTUwCvsJSWhIKMFYoZxhBTb8gvAeLxePP7D3e6iBAx72QTRNu1/4CEaJnavowdKSXs2SxFEqIsAPiu - EOj4BgBBIbrWjxsOUVYFXCqxNVv4DADbJjZUsrtXzfwumqkC56IZhOHPQlF19w+o4dyiIyrUg4tZ1Sqo - JwA0cSYaCmDtfnyY/ITDsu4AJsxZuc8AldgxOGnUvKwK/EAZWpZ1+SM9e6Wbt8z/VZ3JLudwRfZfEGQu - by7Cxv8LQDVzfbIJfgkg5vpbCKMwh2i79sFgkHfpTBDN0AFYAfbRRJBQVaCDQUzkEDEJRloFXkgAr3Ak - VeAHbwCTDBVgcGL6H2/rJ9AIWcVQjYnJ1gyyDWwNmqn0aMa1qQy+EeNr+6Wh6fx/fW8JpB9E3QTyTD8v - LHnNzakX0p7Tcge151Bvz2nl/dvzWOwNWXOrdFDdwM0AAAAASUVORK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJXSURBVFhHvZdNSxtRGIXzI/oDdFNUxDBEo0Zl/IqQ4HcE + U0qxugiiQqEigqDpsoss1F3WXXdT6MKVCzci+Q+usnInCmKRW59xXrlOZpJJcscDZ2Ay955z5t77Tnhj + zWJ+c9/Kfv1eeuaZnclVh5fW7vqms/8SiYQSjtr2E7+NTGUeGTOe+3LFnGJFfXBlmkc6v/k7mUw9jM3M + KfjpsKx2flUc7v2tOixeKodyz7ON4z/O2Jl8wQmHBlqubGNMrqz3pGz7HlPExKQVEgoNwqCJtmsTDAby + Jn6C7ZAgaLs2wWDZ/ARMEG3XJhgM0vfXFNEMHYD9X9z+YSQI24kWmqEDMJE9kwrgEEkVEEqoG3EvVQDF + lLncM6apAF5hKS0JBRkrFDOMIabekG8CxOPxjucfrnURIWLeySaItmv/AgnRubR3HjtRSjj8rRxJiJoA + 4L1CoOMbAASFGNw+bTtETRVwqceP2cJrANi9sKOSQym1slsyUwXORTMIw/5CSQ2Njaup3JojKtSDi1nD + KmglADRxJtoKYB28fJj8hMOy5QAmzFm51wD12DuxaNS8pgr8QBlalnXelV690M07P/9UA8lB53BF9l8Q + ZC5vLsLG/wtAI3N9sgm+CSDm+lsIozCHaLv2wWCQd+lMEM3QAVgB9tFEkFBVoINBTOQQMQlGWgVeSACv + cCRV4AdvAJMMFWBiYfmGt/UTaIesYqjGxGRrBtkGtgbNkfRsxrWpD74R81tH5cnl/K2+twTSD6JuAnmm + nxeWvOnm1Atpz2m5g9pzqLfntPL+7Xks9h8aQqttOT98fAAAAABJRU5ErkJggg== @@ -167,6 +167,23 @@ /iY4EZIJDhw19sXw0xxiqQlOgmTCeYGY3xWcAMmE83aHTAF2XzgBkgl2uD1uK4xHAKspnAQpjHhNr/il xRVOhBRCfPyLK5wMaTfWQYSPluECSCHGZ+9ZXEndgKKTwNt1/tHAJlI0sHnsTJIGIh5c7Lq/f9Aa9oDs Z3ZiBQO2fqQo3R8T+TKw9dOPUDZPgkk0emXD9mCFLPsAVd5Z/YQOzbIAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL + DAAACwwBP0AiyAAAAB90RVh0U29mdHdhcmUATWFjcm9tZWRpYSBGaXJld29ya3MgOLVo0ngAAAJRSURB + VFhHxZfNTsMwEISBtyoXKM3TwIUDTa9U4h8BT8CDAiphd+J118nENlCEpU9q7dmZrZ2mzZ6Mg38mfdN1 + XUTGfpjfBfsDbx06HwVY+Fgujjbt4vR9uTgcCH8DvN+Wi9mmbc4k49h5Q4DuPtvmpVs1nfG5aq530ATC + 4ZV6v5r3gb6QT3zsBU54o+tBzAImsTp4EG/JnIuuF8q2nzORYjvxnSZcePLJPZop2rgDMyYy5HiwE2HQ + UEcfrjXEy9BM1WpBfw1kulU2q+a2ogmEQ0s8DNtVHUnh1HkZ8qnuVBeKffB221VDag1k9PUYY4PCTsj6 + qAlXWwofXk/bBmxCF2ULSztxH0wwEK5zRGvAc1sT83w4UFEwzJ9j2zw67SPTGPAK2kFe8iYSjctbeqmw + NQMePFwZTURqm8hRCFfoZCQ2UThfBmry4QqdTIhNrPLn7IG2HK7QyRGuiex5K9DUhSt0coRrYM1CPdDs + sgEX/swCGdDWNUEnIz8JNyqboJPAhSd/VL4DavNN0MnqcPmqrRW2ZhSaGE1sw9vmiRkafovxmmgMeAXt + IC95g4lgmL+3h3AbVU2Ee0MYMS+G62IwemAGhqyPttTV5o9MvdPa2IAZZG+5LNyw+Yomkp9yLba/ZFes + wJD1qXOM2Dq0xMNAVu/TF71fnBwyoSEFtfd230T2OtJM0fcFhb/lw3Mr4pqYvJ6Gf8unHkxqflIprgl6 + XWmm6CDGEOGrF8h3F+f0k3AjNqFe3luyZB0jEcqD41wfIN8u/uDhVDzDw+m8z+v2vgCLN08Z7ifCRgAA + AABJRU5ErkJggg== @@ -271,12 +288,6 @@ AABJRU5ErkJggg== - - True - - - True - iVBORw0KGgoAAAANSUhEUgAAABUAAAAiCAYAAACwaJKDAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m @@ -336,6 +347,12 @@ b1AAAAAASUVORK5CYII= + + True + + + True + True