VisionProManager.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. using Cognex.VisionPro;
  2. using Cognex.VisionPro.ImageFile;
  3. using Cognex.VisionPro.QuickBuild;
  4. using Cognex.VisionPro.ToolBlock;
  5. using LampInspectionMachine.Cameralibs;
  6. using LampInspectionMachine.Interfaces;
  7. using LampInspectionMachine.Log4xml;
  8. using LampInspectionMachine.Model;
  9. using MvCamCtrl.NET;
  10. using Prism.Events;
  11. using Prism.Ioc;
  12. using Prism.Regions;
  13. using System;
  14. using System.Collections.Generic;
  15. using System.Collections.ObjectModel;
  16. using System.Drawing;
  17. using System.Linq;
  18. using System.Runtime.InteropServices;
  19. using System.Text;
  20. using System.Threading;
  21. using System.Threading.Tasks;
  22. using System.Windows.Forms;
  23. namespace LampInspectionMachine.Core
  24. {
  25. public class VisionProManager
  26. {
  27. private ICamera _camera;
  28. private CogToolBlock _cogToolBlock;
  29. private CameraInfo _cameraInfo;
  30. private Management _management;
  31. public ICamera Camera { get => _camera; set => _camera = value; }
  32. public CogToolBlock CogToolBlock { get => _cogToolBlock; set => _cogToolBlock = value; }
  33. public CameraInfo CameraInfo { get => _cameraInfo; set => _cameraInfo = value; }
  34. public Management Management { get => _management; set => _management = value ; }
  35. /// <summary>
  36. ///调试图像显示
  37. /// </summary>
  38. /// <param name="img"></param>
  39. public void CamCallBack(ICogImage image, TimeSpan totaltime, string errormessage)
  40. {
  41. try
  42. {
  43. if (Management!=null)Management.Image = image;
  44. }
  45. finally
  46. {
  47. }
  48. }
  49. /// <summary>
  50. /// 运行视觉处理
  51. /// </summary>
  52. public void ImageCallback(ICogImage image)
  53. {
  54. if ( CogToolBlock != null )
  55. {
  56. CogToolBlock.Inputs[ 0 ].Value = image;
  57. CogToolBlock.Run();
  58. }
  59. // Image = ( ICogImage ) cogToolBlock.Outputs[ 6 ].Value;
  60. }
  61. }
  62. }