殺蟲0116
This commit is contained in:
parent
bd94bc1f45
commit
987ef1083c
@ -17,6 +17,7 @@ namespace Camera_connect
|
|||||||
private readonly List<Camera> allCameras = new List<Camera>();
|
private readonly List<Camera> allCameras = new List<Camera>();
|
||||||
private readonly PixelDataConverter pxConvert = new PixelDataConverter();
|
private readonly PixelDataConverter pxConvert = new PixelDataConverter();
|
||||||
private bool isGrabbing;
|
private bool isGrabbing;
|
||||||
|
private bool isCameraOpen = false;
|
||||||
|
|
||||||
public BaslerCamera(Main form)
|
public BaslerCamera(Main form)
|
||||||
{
|
{
|
||||||
@ -27,6 +28,7 @@ namespace Camera_connect
|
|||||||
{
|
{
|
||||||
var allCameraInfos = CameraFinder.Enumerate();
|
var allCameraInfos = CameraFinder.Enumerate();
|
||||||
allCameras.Clear();
|
allCameras.Clear();
|
||||||
|
if (isCameraOpen == true) return;
|
||||||
|
|
||||||
foreach (var cameraInfo in allCameraInfos)
|
foreach (var cameraInfo in allCameraInfos)
|
||||||
{
|
{
|
||||||
@ -36,6 +38,7 @@ namespace Camera_connect
|
|||||||
camera.StreamGrabber.ImageGrabbed += StreamGrabber_ImageGrabbed;
|
camera.StreamGrabber.ImageGrabbed += StreamGrabber_ImageGrabbed;
|
||||||
camera.Open();
|
camera.Open();
|
||||||
allCameras.Add(camera);
|
allCameras.Add(camera);
|
||||||
|
isCameraOpen = true; ;
|
||||||
}
|
}
|
||||||
|
|
||||||
isGrabbing = true;
|
isGrabbing = true;
|
||||||
@ -92,6 +95,7 @@ namespace Camera_connect
|
|||||||
allCameras[0].StreamGrabber.Stop();
|
allCameras[0].StreamGrabber.Stop();
|
||||||
CameraImageEvent = null; // 解除訂閱事件,防止影像更新
|
CameraImageEvent = null; // 解除訂閱事件,防止影像更新
|
||||||
isGrabbing = false;
|
isGrabbing = false;
|
||||||
|
isCameraOpen = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -125,7 +125,6 @@ namespace Camera_connect
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void bt_OneShot_Click(object sender, EventArgs e)
|
private void bt_OneShot_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@ -145,6 +144,7 @@ namespace Camera_connect
|
|||||||
}
|
}
|
||||||
else if (selectedCamera == "Basler")
|
else if (selectedCamera == "Basler")
|
||||||
{
|
{
|
||||||
|
if (isKeepShotting == true) return;
|
||||||
if (Basler != null)
|
if (Basler != null)
|
||||||
{
|
{
|
||||||
Basler.OneShot(); // 單次拍攝
|
Basler.OneShot(); // 單次拍攝
|
||||||
@ -164,7 +164,7 @@ namespace Camera_connect
|
|||||||
private void bt_KeepShot_Click(object sender, EventArgs e)
|
private void bt_KeepShot_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
string? selectedCamera = comboBox1.SelectedItem?.ToString();
|
string? selectedCamera = comboBox1.SelectedItem?.ToString();
|
||||||
|
if (isKeepShotting == true) return;
|
||||||
if (selectedCamera == "IDS")
|
if (selectedCamera == "IDS")
|
||||||
{
|
{
|
||||||
// IDS 相機的連續拍攝邏輯
|
// IDS 相機的連續拍攝邏輯
|
||||||
@ -205,6 +205,7 @@ namespace Camera_connect
|
|||||||
}
|
}
|
||||||
else if (selectedCamera == "Basler")
|
else if (selectedCamera == "Basler")
|
||||||
{
|
{
|
||||||
|
|
||||||
if (Basler != null)
|
if (Basler != null)
|
||||||
{
|
{
|
||||||
Basler.Stop();
|
Basler.Stop();
|
||||||
|
Loading…
Reference in New Issue
Block a user