public byte[,] SingleSnapshot(string attributesPath, bool addToImageList) { imageWindow.WriteToConsole("Taking snapshot"); imageWindow.WriteToConsole("Applied camera attributes from " + attributesPath); SetCameraAttributes(attributesPath); try { if (state == CameraState.FREE || state == CameraState.READY_FOR_ACQUISITION) { image = new VisionImage(); state = CameraState.READY_FOR_ACQUISITION; try { imaqdxSession.Snap(image); if (windowShowing) { imageWindow.AttachToViewer(image); } if (addToImageList) { imageList.Add(image); } image.WriteFile("test.bmp"); PixelValue2D pval = image.ImageToArray(); byte[,] u8array = Getthearray.convertToU8(pval.Rgb32); double max = Getthearray.Findthemaximum(u8array); imageWindow.WriteToConsole(max.ToString("F6")); state = CameraState.FREE; return(u8array); } catch (ObjectDisposedException e) { MessageBox.Show(e.Message); throw new ObjectDisposedException(""); } catch (ImaqdxException e) { MessageBox.Show(e.Message); throw new ImaqdxException(); } catch (VisionException e) { MessageBox.Show(e.VisionErrorText); throw e; } } else { return(null); } } catch (TimeoutException) { return(null); } }
public byte[,] SingleSnapshot(string attributesPath, bool addToImageList) { imageWindow.WriteToConsole("Taking snapshot"); imageWindow.WriteToConsole("Applied camera attributes from " + attributesPath); SetCameraAttributes(attributesPath); try { if (state == CameraState.FREE || state == CameraState.READY_FOR_ACQUISITION) { image = new VisionImage(); state = CameraState.READY_FOR_ACQUISITION; try { imaqdxSession.Snap(image); if (windowShowing) { imageWindow.AttachToViewer(image); } if (addToImageList) { imageList.Add(image); } image.WriteFile("test.bmp"); PixelValue2D pval = image.ImageToArray(); byte[,] u8array = Getthearray.convertToU8(pval.Rgb32); double max = Getthearray.Findthemaximum(u8array); imageWindow.WriteToConsole(max.ToString("F6")); state = CameraState.FREE; return u8array; } catch (ObjectDisposedException e) { MessageBox.Show(e.Message); throw new ObjectDisposedException(""); } catch (ImaqdxException e) { MessageBox.Show(e.Message); throw new ImaqdxException(); } catch (VisionException e) { MessageBox.Show(e.VisionErrorText); throw e; } } else return null; } catch (TimeoutException) { return null; } }