| LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| LB_SmartVision/LB_SmartVision.csproj | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| LB_SmartVision/VisionForm.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| LB_SmartVision/log4net.config | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| LB_VisionProcesses/Cameras/2DCameraForm.Designer.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| LB_VisionProcesses/Cameras/2DCameraForm.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| LB_VisionProcesses/Cameras/CameraConfig.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs
@@ -166,7 +166,7 @@ else { isCircleRuning = false; threadCircleRun.Abort(); //threadCircleRun.Abort(); } } catch { } LB_SmartVision/LB_SmartVision.csproj
@@ -59,6 +59,9 @@ </ItemGroup> <ItemGroup> <None Update="log4net.config"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> <None Update="ref\halcondotnet.dll"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> LB_SmartVision/VisionForm.cs
@@ -242,7 +242,7 @@ { return; } string strInfo = DateTime.Now.ToString("[yyyy:MM:HH:mm:ss:fff] "); string strInfo = DateTime.Now.ToString("[yyyy:MM:dd:HH:mm:ss:fff] "); strInfo += strLog; if (infoType != LogInfoType.NOSHOW) { @@ -258,19 +258,30 @@ switch (infoType) { case LogInfoType.INFO: { this.rich_Info.SelectionColor = Color.Wheat; break; case LogInfoType.WARN: this.rich_Info.SelectionColor = Color.LightGoldenrodYellow; break; case LogInfoType.PASS: this.rich_Info.SelectionColor = Color.Green; break; case LogInfoType.ERROR: this.rich_Info.SelectionColor = Color.Red; AsyncLogHelper.Info(strLog); break; } case LogInfoType.WARN: { this.rich_Info.SelectionColor = Color.Yellow; AsyncLogHelper.Warn(strLog); break; } case LogInfoType.PASS: { this.rich_Info.SelectionColor = Color.Green; AsyncLogHelper.Info(strLog); break; } case LogInfoType.ERROR: { this.rich_Info.SelectionColor = Color.Red; AsyncLogHelper.Error(strLog); break; } } // 更新 UI 控件,比如显示接收到的消息 this.rich_Info.AppendText(strInfo); this.rich_Info.AppendText("\r\n"); @@ -282,32 +293,43 @@ { if (this.rich_Info.Lines.Length > 1000) { this.rich_Info.Clear(); } // 如果已经在 UI 线程上,直接更新 UI switch (infoType) { case LogInfoType.INFO: { this.rich_Info.SelectionColor = Color.Wheat; break; case LogInfoType.WARN: this.rich_Info.SelectionColor = Color.Yellow; break; case LogInfoType.PASS: this.rich_Info.SelectionColor = Color.Green; break; case LogInfoType.ERROR: this.rich_Info.SelectionColor = Color.Red; AsyncLogHelper.Info(strLog); break; } case LogInfoType.WARN: { this.rich_Info.SelectionColor = Color.Yellow; AsyncLogHelper.Warn(strLog); break; } case LogInfoType.PASS: { this.rich_Info.SelectionColor = Color.Green; AsyncLogHelper.Info(strLog); break; } case LogInfoType.ERROR: { this.rich_Info.SelectionColor = Color.Red; AsyncLogHelper.Error(strLog); break; } } this.rich_Info.AppendText(strInfo); this.rich_Info.AppendText("\r\n"); this.rich_Info.SelectionStart = this.rich_Info.Text.Length; this.rich_Info.ScrollToCaret(); } } AsyncLogHelper.Info(strLog); } public static bool SaveAllLayout() @@ -502,9 +524,9 @@ { XmlConfigurator.Configure(new System.IO.FileInfo("log4net.config")); string[] paths = { @"生产日志\Run_Log", @"生产日志\Debug_Log", @"生产日志\Error_Log", @"生产日志\Run", @"生产日志\Debug", @"生产日志\Error", @"生产日志\Fatal", @"生产日志\Warn", }; LB_SmartVision/log4net.config
@@ -14,14 +14,15 @@ <appender-ref ref="FatalLogger" /> </root> <appender name="DebugLogger" type="log4net.Appender.RollingFileAppender"> <file value="生产日志\Debug_Log\"/> <file value="生产日志\Debug\"/> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <Encoding value="UTF-8" /> <rollingStyle value="Composite" /> <datePattern value="yyyy-MM/yyyy-MM-dd.'log'" /> <maximumFileSize value="10MB" /> <maxSizeRollBackups value="-1"/> <StaticLogFileName value="false"/> <rollingStyle value="Date" /> <param name="datePattern" value="yyyy-MM/yyyy-MM-dd.'log'" /> <StaticLogFileName value="true" /> <createDirs value="true" /> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="DEBUG" /> @@ -32,14 +33,15 @@ </layout> </appender> <appender name="InfoLogger" type="log4net.Appender.RollingFileAppender"> <file value="生产日志\Run_Log\"/> <file value="生产日志\Run\"/> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <Encoding value="UTF-8" /> <rollingStyle value="Composite" /> <datePattern value="yyyy-MM/yyyy-MM-dd.'log'" /> <maximumFileSize value="10MB" /> <maxSizeRollBackups value="-1"/> <StaticLogFileName value="false"/> <rollingStyle value="Date" /> <param name="datePattern" value="yyyy-MM/yyyy-MM-dd.'log'" /> <StaticLogFileName value="true" /> <createDirs value="true" /> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="INFO" /> @@ -54,10 +56,11 @@ <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <Encoding value="UTF-8" /> <maxSizeRollBackups value="10"/> <StaticLogFileName value="false"/> <rollingStyle value="Date" /> <param name="datePattern" value="yyyy-MM/yyyy-MM-dd.'log'" /> <rollingStyle value="Composite" /> <datePattern value="yyyy-MM/yyyy-MM-dd.'log'" /> <maximumFileSize value="10MB" /> <maxSizeRollBackups value="-1" /> <StaticLogFileName value="true" /> <createDirs value="true" /> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="WARN" /> @@ -68,14 +71,15 @@ </layout> </appender> <appender name="ErrorLogger" type="log4net.Appender.RollingFileAppender"> <file value="生产日志\Error_Log\"/> <file value="生产日志\Error\"/> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <Encoding value="UTF-8" /> <rollingStyle value="Composite" /> <datePattern value="yyyy-MM/yyyy-MM-dd.'log'" /> <maximumFileSize value="10MB" /> <maxSizeRollBackups value="-1"/> <StaticLogFileName value="false"/> <rollingStyle value="Date" /> <param name="datePattern" value="yyyy-MM/yyyy-MM-dd.'log'" /> <StaticLogFileName value="true" /> <createDirs value="true" /> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="ERROR" /> @@ -90,10 +94,11 @@ <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <Encoding value="UTF-8" /> <rollingStyle value="Composite" /> <datePattern value="yyyy-MM/yyyy-MM-dd.'log'" /> <maximumFileSize value="10MB" /> <maxSizeRollBackups value="-1"/> <StaticLogFileName value="false"/> <rollingStyle value="Date" /> <param name="datePattern" value="yyyy-MM/yyyy-MM-dd.'log'" /> <StaticLogFileName value="true" /> <createDirs value="true" /> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="FATAL" /> LB_VisionProcesses/Cameras/2DCameraForm.Designer.cs
@@ -466,7 +466,7 @@ btnSaveImage.Dock = DockStyle.Fill; btnSaveImage.ForeColor = SystemColors.Desktop; btnSaveImage.Location = new Point(266, 2); btnSaveImage.Margin = new Padding(2, 2, 2, 2); btnSaveImage.Margin = new Padding(2); btnSaveImage.Name = "btnSaveImage"; btnSaveImage.Size = new Size(84, 30); btnSaveImage.TabIndex = 8; @@ -736,7 +736,7 @@ controlBox1.EnableMaximizeButton = false; controlBox1.EnableMinimizeButton = false; controlBox1.ForeColor = Color.FromArgb(155, 155, 155); controlBox1.Location = new Point(807, 15); controlBox1.Location = new Point(785, 18); controlBox1.MaximizeHoverColor = Color.FromArgb(74, 74, 74); controlBox1.MinimizeHoverColor = Color.FromArgb(63, 63, 65); controlBox1.Name = "controlBox1"; @@ -752,7 +752,7 @@ panel_2DCameraForm.EdgeColor = Color.FromArgb(32, 41, 50); panel_2DCameraForm.Location = new Point(10, 70); panel_2DCameraForm.Name = "panel_2DCameraForm"; panel_2DCameraForm.Padding = new Padding(5, 5, 5, 5); panel_2DCameraForm.Padding = new Padding(5); panel_2DCameraForm.Size = new Size(865, 601); panel_2DCameraForm.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality; panel_2DCameraForm.TabIndex = 20; LB_VisionProcesses/Cameras/2DCameraForm.cs
@@ -301,8 +301,9 @@ private void btnEdit_Click(object sender, EventArgs e) { if (camera == null) { return; } using (Form editForm = new Form()) { editForm.Text = "高级参数设置 - " + camera.SN; LB_VisionProcesses/Cameras/CameraConfig.cs
@@ -256,12 +256,17 @@ { times--; if (TriggerSource == TriggerSource.Software) { Camera.GetImageWithSoftTrigger(out bitmap, timeout); } else { Camera.GetImage(out bitmap, timeout); } if (bitmap != null) { break; } else if (isRegrab) { Debug.WriteLine($"取图失败,重新取图,剩余次数:{times}"); @@ -269,8 +274,9 @@ } while (times > 0 && isRegrab); if (isUpParams) { Camera.SetCamConfig(oriConfig); } OutputImage = bitmap; } @@ -293,14 +299,23 @@ { Result = true; Msg = ""; if (OutputImage != null) { if (OutputImage is Bitmap) { ((Bitmap)OutputImage).Dispose(); } OutputImage = null; } if (Record != null) { Record.Dispose(); } } public override void Dispose() { return; } @@ -314,8 +329,10 @@ if (OutputImage != null) { if (OutputImage is Bitmap) { obj.OutputImage = ((Bitmap)OutputImage).Clone(); } } return obj; }