public List <StepMeasurements> InspectEngine() { string guid = ""; List <StepMeasurements> listMeasurements = new List <StepMeasurements>(); try { bool newImageAvailable;//, inspectionStatus; VBAIDateTime timeStamp; InspectionMeasurements[] measurements; vBAIEngine.EnableInspectionMeasurements(); vBAIEngine.RunInspectionOnce(-1); measurements = vBAIEngine.GetInspectionMeasurements(null, out timeStamp); InspectionStep[] steps = vBAIEngine.GetInspectionSteps(); // string guid = ""; foreach (var inspectionstep in steps) { if (inspectionstep.stepName == "Select Image 1") { guid = inspectionstep.stepGUID; break; } } VBAIImage = vBAIEngine.GetInspectionImage(guid, 1, 1, out newImageAvailable); foreach (var inspectMeasurements in measurements) { listMeasurements.AddRange(inspectMeasurements.measurements); } return(listMeasurements); } catch (Exception ex) { return(null); } }
private void Inspect_Click(object sender, RoutedEventArgs e) { bool newImageAvailable, inspectionStatus; VBAIDateTime timeStamp; try { engine.RunInspectionOnce(-1); VisionImage image = engine.GetInspectionImage("", 1, 1, out newImageAvailable); imageViewer.Attach(image); engine.GetInspectionResults(out timeStamp, out inspectionStatus); rdbInspectionPass.IsChecked = inspectionStatus; } catch (VBAIException ex) { MessageBox.Show(ex.Message); } }
public VisionImage Inspect(int InSt)//, out string strRes { bool newImageAvailable, inspectionStatus; // strRes = ""; engine.RunInspectionOnce(-1); image = engine.GetInspectionImage("", 1, 1, out newImageAvailable); engine.GetInspectionResults(out timeStamp, out inspectionStatus); engine.EnableInspectionMeasurements(); // PassFailIndicator.Checked = inspectionStatus; istep = engine.GetInspectionSteps(); string[] res = new string[istep.Length]; int x = 0; foreach (InspectionStep isSeq in istep) { // richTextBox1.AppendText(isSeq.stepGUID.ToString() + "\r\n"); res[x] = isSeq.stepGUID; x++; } measures = engine.GetInspectionMeasurements(res, out timeStamp); switch (InSt) { case 1: // Data01 = engine.GetVariables(); try { A = measures[12].measurements[1].measurement.numData.ToString(); B = measures[12].measurements[2].measurement.numData.ToString(); C = measures[6].measurements[9].measurement.numData.ToString(); } catch (Exception e) { } //strRes = A.ToString() + "," + B.ToString() + "," + C.ToString(); break; case 2: measures = engine.GetInspectionMeasurements(res, out timeStamp); for (int j = 0; j < measures.Length; j++) { if (j == 6) { D = (measures[j].measurements[4].measurement.numData.ToString()); E = (measures[j].measurements[5].measurement.numData.ToString()); F = (measures[4].measurements[9].measurement.numData.ToString()); //strRes = D.ToString(); } } break; case 3: measures = engine.GetInspectionMeasurements(res, out timeStamp); for (int k = 0; k < measures.Length; k++) { if (k == 2) { G = (measures[k].measurements[2].measurement.numData.ToString()); // strRes = E.ToString() + "," + F.ToString() + "," + G.ToString(); } } break; } return(image); }