public override bool GenObj(HObject image, VisionControl visionControl) { try { if (Mode2dCode != null) { HOperatorSet.ClearDataCode2dModel(Mode2dCode); } HTuple hv_DataCodeHandleLow = null; HOperatorSet.CreateDataCode2dModel(vision2dCodeParam.Code2dSystem, "default_parameters", "standard_recognition", out hv_DataCodeHandleLow); Mode2dCode = hv_DataCodeHandleLow; string Mode2dcodePath = VisionMgr.GetInstance().CurrentVisionProcessDir + "\\" + m_strStepName + "\\" + m_strStepName + "_data_code_model.dcm"; HOperatorSet.WriteDataCode2dModel(Mode2dCode, Mode2dcodePath); string imgpath = VisionMgr.GetInstance().CurrentVisionProcessDir + "\\" + m_strStepName + "\\" + m_strStepName + ".bmp"; if (image != null && image.IsInitialized()) { HOperatorSet.WriteImage(image, "bmp", 0, imgpath); } } catch (HalconException e) { MessageBox.Show(m_strStepName + "创建2CodeModle失败:" + e.Message, "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } return(true); }
public override void FlushToDlg(VisionSetpBase visionSetp, VisionControl visionControl, Control Farther = null) { if (visionSetp == null) { return; } //if (Farther != null) // this.Location = new Point(Farther.Location.X, Farther.Location.Y); m_visionControl = visionControl; m_vision2dCode = visionSetp as Vision2dCode; if (m_vision2dCode == null) { return; } m_vision2dCode = (Vision2dCode)visionSetp; if (m_vision2dCode == null) { MessageBox.Show("视觉类型为空 刷新失败,请选择", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (m_vision2dCode != null) { comboBox_CodeSystem.Text = m_vision2dCode.vision2dCodeParam.Code2dSystem; comboBox_ContrastTolerance.Text = m_vision2dCode.vision2dCodeParam.ContrastTolerance; } }
public override bool GenObj(HObject image, VisionControl visionControl) { try { HTuple hv_BarCodeModel = null; if (Mode1dCode != null) { HOperatorSet.ClearBarCodeModel(Mode1dCode); } HOperatorSet.CreateBarCodeModel(new HTuple(), new HTuple(), out hv_BarCodeModel); Mode1dCode = hv_BarCodeModel; string Mode1dcodePath = VisionMgr.GetInstance().CurrentVisionProcessDir + "\\" + m_strStepName + "\\" + m_strStepName + "_bar_code_model.bcm"; HOperatorSet.WriteBarCodeModel(Mode1dCode, Mode1dcodePath); string imgpath = VisionMgr.GetInstance().CurrentVisionProcessDir + "\\" + m_strStepName + "\\" + m_strStepName + ".bmp"; if (image != null && image.IsInitialized()) { HOperatorSet.WriteImage(image, "bmp", 0, imgpath); } } catch (HalconException e) { MessageBox.Show(m_strStepName + "创建1CodeModle失败:" + e.Message, "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } return(true); }
/// <summary> /// Hide all pages and show the default page (player tab) /// </summary> public void ShowDefaultPages() { WaitControl.Invoke(new Action(() => WaitControl.Visible = false)); PlayerControl.Invoke(new Action(() => PlayerControl.Visible = false)); GraphicsControl.Invoke(new Action(() => GraphicsControl.Visible = false)); ViewmodelControl.Invoke(new Action(() => ViewmodelControl.Visible = false)); VisionControl.Invoke(new Action(() => VisionControl.Visible = false)); b0.Invoke(new Action(() => b0_Click(null, null))); }
public void FlushToDlg(DispTraceBaseElement dispTraceBaseElement, VisionControl visionControl, bool bIsModfiy) { if (visionControl != null) { vc = visionControl; } PonitElement = dispTraceBaseElement as DispTraceBaseElementPoint; comPartSet1.UpdataParam(PonitElement, PonitElement.TraceMoveParam); pointValSet.UpDataParam(PonitElement.bIsAllPointMachine, PonitElement.PointCoordinate, visionControl, bIsModfiy); bModify = bIsModfiy; }
public bool ProcessImage(string StepName, HObject img, VisionControl visionControl) { if (dicVision.ContainsKey(StepName)) { return(dicVision[StepName].Process_image(img, visionControl)); } else { return(false); } }
public void Flush(VisionControl visionControl, List <shapeparam> listshapelist) { shapeparams = listshapelist; //if (shapeparams == null || shapeparams.Count == 0) // return; vc = visionControl; dataGridView_ItemAllElement.Rows.Clear(); foreach (var temp in listshapelist) { dataGridView_ItemAllElement.Rows.Add("False", temp.name, temp.shapeType.ToString()); } }
public override bool GenObj(HObject image, VisionControl visionControl) { try { } catch (HalconException e) { MessageBox.Show(m_strStepName + "创建2CodeModle失败:" + e.Message, "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } return(true); }
public void FlushToDlg(VisionControl visionControl, Control Father = null) { if (Father != null && Father.Controls != null && !Father.Controls.Contains(visionCtr)) { Father.Controls.Add(visionCtr); } if (visionCtr != null) { visionCtr?.FlushToDlg(this, visionControl, Father); visionCtr.Location = new System.Drawing.Point(1, -1); visionCtr?.Show(); } }
public override bool bDraw(VisionControl visionControl) { HTuple Row1 = 0; HTuple column1 = 0; HTuple Row2 = 0; HTuple column2 = 0; visionControl?.DrawPoint(out Row1, out column1); if (visionControl != null && Row1 != null && Row1.Length > 0) { X = column1[0].D; Y = Row1[0].D; return(true); } return(false); }
public override bool Process_image(HObject ho_Image, VisionControl visionControl) { try { } catch (HalconException e) { return(false); } finally { } return(true); }
/// <summary> /// Hide all pages. /// </summary> /// <param name="isWaitPage">Show the wait pages</param> public void HidePages(bool isWaitPage) { if (isWaitPage) { WaitControl.Invoke(new Action(() => WaitControl.Visible = true)); } else { WaitControl.Invoke(new Action(() => WaitControl.Visible = false)); } PlayerControl.Invoke(new Action(() => PlayerControl.Visible = false)); GraphicsControl.Invoke(new Action(() => GraphicsControl.Visible = false)); ViewmodelControl.Invoke(new Action(() => ViewmodelControl.Visible = false)); VisionControl.Invoke(new Action(() => VisionControl.Visible = false)); }
public override bool bDraw(VisionControl visionControl) { HTuple Row = 0; HTuple column = 0; HTuple Radiu = 0; visionControl?.DrawCircle(out Row, out column, out Radiu); if (visionControl != null && Row != null && Row.Length > 0) { CircleCenterX = column[0].D; CircleCenterY = Row[0].D; CircleRadius = Radiu[0].D; return(true); } return(false); }
public override bool bDraw(VisionControl visionControl) { HTuple Row1 = 0; HTuple column1 = 0; HTuple Row2 = 0; HTuple column2 = 0; visionControl?.DrawRectangle(out Row1, out column1, out Row2, out column2); if (visionControl != null && Row1 != null && Row1.Length > 0) { X1 = column1[0].D; Y1 = Row1[0].D; X2 = column2[0].D; Y2 = Row2[0].D; return(true); } return(false); }
public override bool bDraw(VisionControl visionControl) { HTuple Row = 0; HTuple column = 0; HTuple len1, len2, phi = 0; len1 = 100; len2 = 20; visionControl?.DrawRectangle2(out Row, out column, out phi, out len1, out len2); if (visionControl != null && Row != null && Row.Length > 0) { CenterX = column[0].D; CenterY = Row[0].D; Phi = phi[0].D; Len1 = len1[0].D; Len2 = len2[0].D; return(true); } return(false); }
//VisionControl vc; public void FlushToDlg(DispTraceBaseElement DispTraceElement, VisionControl visionControl, bool bIsModfiy) { if (visionControl != null) { vc = visionControl; } elementLine = DispTraceElement as DispTraceBaseElementLine; if (elementLine == null) { MessageBox.Show("点胶路径元素的类型不对", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } comPartSet1.UpdataParam(elementLine, elementLine.TraceMoveParam); pointValSetStartPoint.UpDataParam(elementLine.bIsAllPointMachine, elementLine.cStartPoint, visionControl, bIsModfiy); pointValSetEndPoint.UpDataParam(elementLine.bIsAllPointMachine, elementLine.cEndPoint, visionControl, bIsModfiy); bModify = bIsModfiy; }
// Use this for initialization void Start() { vision = GetComponent<VisionControl>(); nav = GetComponent<AICharacterControl>(); ani = GetComponent<Animator>(); waypointIndex = 0; isLooking = false; currentWaypoint = Waypoints[waypointIndex]; state = "Patrol"; nav.target = currentWaypoint; pm = GameObject.FindObjectOfType<PlayerManager>().GetComponent<PlayerManager>(); }
public override void FlushToDlg(VisionSetpBase visionSetp, VisionControl visionControl, Control Farther = null) { if (visionSetp == null) { return; } m_visionControl = visionControl; //if(Farther!=null) // this.Location = new Point(Farther.Location.X, Farther.Location.Y); m_vision1dCode = visionSetp as Vision1dCode; if (m_vision1dCode == null) { return; } m_vision1dCode = (Vision1dCode)visionSetp; // comboBox_CodeSystem.Text = m_vision1dCode.vision2dCodeParam.Code2dSystem; // comboBox_ContrastTolerance.Text = m_vision1dCode.vision2dCodeParam.ContrastTolerance; }
public override void FlushToDlg(VisionSetpBase visionSetp, VisionControl visionControl, Control Farther = null) { if (visionSetp == null) { return; } //if (Farther != null) // this.Location = new Point(Farther.Location.X, Farther.Location.Y); m_visionShapMatch = visionSetp as VisionShapMatch; if (m_visionShapMatch == null) { return; } m_visionShapMatch = (VisionShapMatch)visionSetp; m_visionControl = visionControl; if (Farther != null) { this.Location = new Point(Farther.Location.X, Farther.Location.Y); } textBox_StartAngle.Text = m_visionShapMatch.visionShapParam.AngleStart.ToString(); textBox_AngleExtent.Text = m_visionShapMatch.visionShapParam.AngleExtent.ToString(); textBox_ScaleColMin.Text = m_visionShapMatch.visionShapParam.MinColScale.ToString(); textBox_ScaleColMax.Text = m_visionShapMatch.visionShapParam.MaxColScale.ToString(); textBox_MatchNum.Text = m_visionShapMatch.visionShapParam.nNum.ToString(); textBox_MatchScore.Text = m_visionShapMatch.visionShapParam.dSorce.ToString(); textBox_OverLapArea.Text = m_visionShapMatch.visionShapParam.MaxOverlap.ToString(); textBox_PyramidHierarchy.Text = m_visionShapMatch.visionShapParam.CratePyramid.ToString(); textBox_PyramidHierarchyHigh.Text = m_visionShapMatch.visionShapParam.MatchPyamidHigh.ToString(); textBox_PyramidHierarchyLow.Text = m_visionShapMatch.visionShapParam.MatchPyamidLow.ToString(); textBox_ContrastHigh.Text = m_visionShapMatch.visionShapParam.ContrastHigh.ToString(); textBox_ContrastLow.Text = m_visionShapMatch.visionShapParam.ContrastLow.ToString(); textBox_MinSize.Text = m_visionShapMatch.visionShapParam.MinSize.ToString(); roundButton_SetOutPoint.Enabled = m_visionShapMatch.visionShapParam.bSetOutPoint; roundButton_SetOutPoint.Enabled = m_visionShapMatch.visionShapParam.bSetOutPoint; comboSelPolarity.Text = m_visionShapMatch.visionShapParam.strPolaritySel; comBoSelMatch.Text = m_visionShapMatch.visionShapParam.ModeType.ToString(); regionOut1.Flush(visionControl, m_visionShapMatch.shapeslist); this.Show(); }
public void FlushToDlg(DispTraceBaseElement TraceElement, VisionControl visionControl, bool bIsModfiy) { if (visionControl != null) { vc = visionControl; } cDispTraceElementArc = TraceElement as DispTraceBaseElementArc; if (cDispTraceElementArc == null) { MessageBox.Show("点胶路径元素的类型不对", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } comPartSet1.UpdataParam(cDispTraceElementArc, cDispTraceElementArc.TraceMoveParam); //点位设置 圆心 起点 终点 pointValSetArcCenterPoint.UpDataParam(cDispTraceElementArc.bIsAllPointMachine, cDispTraceElementArc.cCenterPoint, visionControl, bIsModfiy); pointValSetArcStartPoint.UpDataParam(cDispTraceElementArc.bIsAllPointMachine, cDispTraceElementArc.cStartPoint, visionControl, bIsModfiy); pointValSetArcEndPoint.UpDataParam(cDispTraceElementArc.bIsAllPointMachine, cDispTraceElementArc.cEndPoint, visionControl, bIsModfiy); this.bIsArc = cDispTraceElementArc.bIsArc; this.bIsArcDir = cDispTraceElementArc.bIsArcDir; bModify = bIsModfiy; }
private void MainForm_Load(object sender, EventArgs e) { VSGlobalControl.InitParm(); for (int i = 0; i < Enum.GetNames(typeof(BufferIndex)).Length; i++) { VisionList[i] = new VisionControl((BufferIndex)i); VisionList[i].ResPublisher.subscribeMeToResponseEvents(this); } VisionCalibration.Owner = VisionList[(int)BufferIndex.Test]; SVS_CameraSys.getCameras(); if (SVS_CameraSys.CameraCount > 0) { SVS_CameraSys.CameraList[0].subscribeMeToVisionEvents(this); SVS_CameraSys.CameraList[0].subscribeMeToVisionEvents(VisionList[0]); SVS_CameraSys.CameraList[0].subscribeMeToVisionEvents(VisionList[1]); SVS_CameraSys.CameraList[0].subscribeMeToVisionEvents(VisionList[2]); SVS_CameraSys.CameraList[0].subscribeMeToVisionEvents(VisionList[3]); SVS_CameraSys.CameraList[0].SetSVSCameraMode(1); VSGlobalControl.m_CamParam.CameraSize.Width = SVS_CameraSys.CameraList[0].camWidth; VSGlobalControl.m_CamParam.CameraSize.Height = SVS_CameraSys.CameraList[0].camHeight; } //cameraset.cameraSetting1.SetCamera(); cameraSetting1.SetCamera(); VisionList[(int)BufferIndex.RightCell].VisionInit(CamDisplayRightCell, ShowPosition); VisionList[(int)BufferIndex.MiddleCell].VisionInit(CamDisplayMiddleCell, ShowPosition); VisionList[(int)BufferIndex.LeftCell].VisionInit(CamDisplayLeftCell, ShowPosition); VisionList[(int)BufferIndex.Test].VisionInit(CamDisplayTest, ShowPosition); CurrentProductName = VSGlobalControl.SysParam.CurrentProduct; Connect(); VisionSetting1.VisionList = VisionList; VisionSetting1.CameraDispList[(int)BufferIndex.RightCell] = CamDisplayRightCell; VisionSetting1.CameraDispList[(int)BufferIndex.MiddleCell] = CamDisplayMiddleCell; VisionSetting1.CameraDispList[(int)BufferIndex.LeftCell] = CamDisplayLeftCell; VisionSetting1.CameraDispList[(int)BufferIndex.Test] = CamDisplayTest; VisionSetting1.SettingInit(); }
private void comboBoxROI_SelectedIndexChanged(object sender, EventArgs e) { selectedROI = (CamCDIRoiName)Enum.Parse(typeof(CamCDIRoiName), comboBoxROI.Text); Cst.Struct_Image temp = VSGlobalControl.m_VParam.Im[(int)selectedROI]; numericUpDownIgnoreWidth1.Value = (decimal)temp.EdgeMultiplePoint.IgnoreLength1; numericUpDownIgnoreWidth2.Value = (decimal)temp.EdgeMultiplePoint.IgnoreLength2; numericUpDownSampleNum.Value = (decimal)temp.EdgeMultiplePoint.Robust.RobustSampleNum; numericUpDownMaxRobustCount.Value = (decimal)temp.EdgeMultiplePoint.Robust.MaxRobustCount; selectBoxPrint.Checked = VSGlobalControl.m_VParam.Im[(int)selectedROI].EdgeMultiplePoint.PrintMultiplePoint; VSGlobalControl.CleanAllTestMark(false); VSTest.Vision_ShowRect(VSGlobalControl.m_VParam.Im[(int)selectedROI].EdgeMultiplePoint.Rect, VSBase.COLOR_YELLOW, Cst.ViewLWidth25); if (VisionControl.IsXLine(temp.EdgeMultiplePoint.Dir)) { labelIgnoreWidth1.Text = "左边"; labelIgnoreWidth2.Text = "右边"; } else { labelIgnoreWidth1.Text = "上边"; labelIgnoreWidth2.Text = "下边"; } }
public override void FlushToDlg(VisionSetpBase visionSetp, VisionControl visionControl, Control Farther = null) { m_visionControl = visionControl; if (visionSetp != null) { FitCircircle = visionSetp as VisionFitCircircle; if (FitCircircle == null) { return; } FitCircircle = (VisionFitCircircle)visionSetp; textBox_TestStartAngle.Text = FitCircircle.visionFitCircleParam.startAngledeg.ToString(); textBox_TestEndAngle.Text = FitCircircle.visionFitCircleParam.endAngleDeg.ToString(); textBox_TestNum.Text = FitCircircle.visionFitCircleParam.nTestNum.ToString(); textBox_TestThreasoldVal.Text = FitCircircle.visionFitCircleParam.thresoldVal.ToString(); textBox_Len1.Text = FitCircircle.visionFitCircleParam.nLen1.ToString(); textBox_Len2.Text = FitCircircle.visionFitCircleParam.nLen2.ToString(); comboBox_TestDir.Text = FitCircircle.visionFitCircleParam.testDir.ToString(); comboBox_TestPolarity.Text = FitCircircle.visionFitCircleParam.testPolarity.ToString(); comboBox_TestPos.Text = FitCircircle.visionFitCircleParam.testPos.ToString(); } }
public static void bandStationAndVisionCtrl(string stationname, VisionControl visionControl, int index = 1) { Stationbase pb = StationMgr.GetInstance().GetStation(stationname); switch (index) { case 1: pb.VisionControl = visionControl; break; case 2: pb.VisionControl2 = visionControl; break; case 3: pb.VisionControl3 = visionControl; break; case 4: pb.VisionControl4 = visionControl; break; } }
public void UpDataParam(bool bIsMachine, PointCoordinateElement point = null, VisionControl visionControl = null, bool bIsModify = false) { bIsModify = false; PointCoordinateElement pointparam = null; if (visionControl != null) { vc = visionControl; } if (point != null) { pointparam = point; PointCoordinate = point; } else { pointparam = PointCoordinate; } if (pointparam == null) { return; } dMz = point.dMz; if (bIsMachine) { dMx = point.dMx; dMy = point.dMy; } else { dVx = point.dVx; dVy = point.dVy; } bIsAllPointMachine = bIsMachine; bModify = bIsModify; }
// Use this for initialization void Awake() { visionControl = GetComponent <VisionControl>(); statesMachine = GetComponent <StatesMachine>(); controladorNavMesh = GetComponent <ControladorNavMesh>(); }
public override bool Process_image(HObject ho_Image, VisionControl visionControl) { if (Mode1dCode == null) { MessageBox.Show(m_strStepName + "1CodeModle不存在", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (visionControl == null) { MessageBox.Show(m_strStepName + "显示窗体不存在", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (ho_Image == null || !ho_Image.IsInitialized()) { MessageBox.Show(m_strStepName + "图片不存在", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } HTuple hv_DataCodeHandleHigh = null; HTuple hv_ResultHandles = new HTuple(); HTuple hv_DecodedDataStrings = new HTuple(); HObject ho_SymbolRegions = null; HObject ReduceImg = null; try { if (visionControl != null && visionControl.isOpen()) { HOperatorSet.SetDraw(visionControl.GetHalconWindow(), "margin"); } if (Mode1dCodeSearch != null && Mode1dCodeSearch.IsInitialized()) { HOperatorSet.ReduceDomain(ho_Image, Mode1dCodeSearch, out ReduceImg); } //HOperatorSet.SetBarCodeParam(Mode1dCode, "meas_thresh_abs", 0.0); // HOperatorSet.SetBarCodeParam(Mode1dCode, "element_size_min", 1.0); // HOperatorSet.SetBarCodeParam(Mode1dCode, "meas_param_estimation", "true"); if (ReduceImg != null && ReduceImg.IsInitialized()) { HOperatorSet.FindBarCode(ReduceImg, out ho_SymbolRegions, Mode1dCode, "auto", out hv_DecodedDataStrings); } else { HOperatorSet.FindBarCode(ho_Image, out ho_SymbolRegions, Mode1dCode, "auto", out hv_DecodedDataStrings); } if (hv_DecodedDataStrings != null && hv_DecodedDataStrings.Length > 0) { if (visionControl != null && visionControl.isOpen()) { HOperatorSet.SetColor(visionControl.GetHalconWindow(), "green"); HOperatorSet.DispObj(ho_SymbolRegions, visionControl.GetHalconWindow()); HalconExternFunExport.disp_message(visionControl.GetHalconWindow(), hv_DecodedDataStrings, "window", 100, 200, "green", "false"); vision1dCodeParam.RusultCode = hv_DecodedDataStrings.S; if (Mode1dCodeSearch != null && Mode1dCodeSearch.IsInitialized()) { HOperatorSet.DispObj(Mode1dCodeSearch, visionControl.GetHalconWindow()); } } } else { if (visionControl != null && visionControl.isOpen()) { HOperatorSet.SetColor(visionControl.GetHalconWindow(), "red"); if (Mode1dCodeSearch != null && Mode1dCodeSearch.IsInitialized()) { HOperatorSet.DispObj(Mode1dCodeSearch, visionControl.GetHalconWindow()); } HalconExternFunExport.disp_message(visionControl.GetHalconWindow(), "读码失败", "window", 100, 200, "red", "false"); } } } catch (HalconException e) { // MessageBox.Show(m_strStepName + "图片不存在", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } finally { ReduceImg?.Dispose(); ho_SymbolRegions?.Dispose(); // GC.SuppressFinalize(ReduceImg); } return(true); }
public override bool Process_image(HObject obj, VisionControl visionControl) { if (visionFitCircleParam != null) { int bw; if (visionFitCircleParam.testDir == TestDir.从外到内) { bw = 1; } else { bw = 0; } string strTrans = ""; if (visionFitCircleParam.testPolarity == TestPolarity.从明到暗) { strTrans = "negative"; } else if (visionFitCircleParam.testPolarity == TestPolarity.从暗到明) { strTrans = "positive"; } else { strTrans = "all"; } string strSelect = ""; if (visionFitCircleParam.testPos == TestPos.前端) { strSelect = "first"; } else if (visionFitCircleParam.testPos == TestPos.后端) { strSelect = "last"; } else if (visionFitCircleParam.testPos == TestPos.最强) { strSelect = "all"; } try { bool btrn = FitCirCle(obj, visionFitCircleParam.startAngledeg, visionFitCircleParam.endAngleDeg, bw, visionFitCircleParam.nTestNum, visionFitCircleParam.RadiusRoi, visionFitCircleParam.point2DRoixy.x, visionFitCircleParam.point2DRoixy.y, visionFitCircleParam.nLen1, visionFitCircleParam.nLen2, visionFitCircleParam.Sigma, visionFitCircleParam.thresoldVal, strTrans, strSelect, visionControl.GetHalconWindow(), 0, 0, out HTuple hv_RowCircleCenterFit, out HTuple hv_ColumnCircleCenterFit, out HTuple hv_RadiusCircleCenterFit, out HTuple hv_StartPhiCircleCenterFit, out HTuple hv_EndPhiCircleCenterFit, out HTuple hv_PointOrderCircleCenterFit); if (btrn) { visionFitCircleParam.Resultpoint2D.x = hv_ColumnCircleCenterFit[0].D; visionFitCircleParam.Resultpoint2D.y = hv_RowCircleCenterFit[0].D; visionFitCircleParam.ResultRadius = hv_RadiusCircleCenterFit[0].D; return(true); } else { visionFitCircleParam.Resultpoint2D.x = 0; visionFitCircleParam.Resultpoint2D.y = 0; visionFitCircleParam.ResultRadius = 0; return(false); } } catch (Exception e) { visionFitCircleParam.Resultpoint2D.x = 0; visionFitCircleParam.Resultpoint2D.y = 0; visionFitCircleParam.ResultRadius = 0; _logger.Warn(m_strStepName + "参数为空,找园失败" + e.Message); return(false); } } else { _logger.Warn(m_strStepName + "参数为空,找园失败"); return(false); } }
public virtual bool GenObj(HObject image, string path, VisionControl visionControl) { return(true); }
public virtual bool Process_image(HObject obj, VisionControl visionControl) { return(true); }
public void BindWindow(VisionControl vc) { m_Wnd = vc; }