private void DebugShowFlagTia(ToolDataBase para) { try { int nCamID = 0; FlagToolDaga data = para as FlagToolDaga; var L1Data = File.ReadAllText($"{PATH_TOOLPATH}{data.L1Name}.para"); var L2Data = File.ReadAllText($"{PATH_TOOLPATH}{data.L2Name}.para"); List <string> LineListString = new List <string>() { L1Data, L2Data }; string ModelName = L1Data.Split('|')[1].Split('&')[4]; StepFindModel FindModelTool = new StepFindModel() { In_CamID = nCamID, In_ModelNameFullPath = $"{PATH_MODELPATH}Cam0_{ModelName}.shm" }; HalconVision.Instance.ProcessImage(FindModelTool); //FindLine StepFindeLineByModel FindLineTool = new StepFindeLineByModel() { In_CamID = nCamID, In_Hom_mat2D = FindModelTool.Out_Hom_mat2D, In_ModelRow = FindModelTool.Out_ModelRow, In_ModelCOl = FindModelTool.Out_ModelCol, In_ModelPhi = FindModelTool.Out_ModelPhi, In_LineRoiPara = LineListString }; HalconVision.Instance.ProcessImage(FindLineTool); //ShowFlag var LineListForDraw = new List <Tuple <double, double, double, double> >(); foreach (var it in FindLineTool.Out_Lines) { LineListForDraw.Add(new Tuple <double, double, double, double>(it.Item1.D, it.Item2.D, it.Item3.D, it.Item4.D)); } StepShowFlag ShowFlagTool = new StepShowFlag() { In_CamID = nCamID, In_CenterRow = data.Halcon_Row, In_CenterCol = data.Halcon_Col, In_Phi = data.Halcon_Phi, In_HLine = LineListForDraw[0], In_VLine = LineListForDraw[1], In_RegionFullPathFileName = $"{PATH_TOOLPATH}Flag.reg}}" }; HalconVision.Instance.ProcessImage(ShowFlagTool); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
private bool DebugTool(ToolDataBase para) { try { switch (para.ToolType) { case EnumToolType.LineTool: { var ToolData = para as LineToolData; HalconVision.Instance.Debug_FindLine(0, ToolData.Polarity, ToolData.SelectType, ToolData.Contrast, ToolData.CaliperNum); return(true); } case EnumToolType.CircleTool: { } break; case EnumToolType.PairTool: { PairToolData data = para as PairToolData; HalconVision.Instance.Debug_FindPair(0, data.Polarity, data.SelectType, data.ExpectPairNum, data.Contrast, data.CaliperNum); return(true); } case EnumToolType.FlagTool: { FlagToolDaga data = para as FlagToolDaga; AddFlag(data); } break; default: break; } return(true); } catch (Exception ex) { UC_MessageBox.ShowMsgBox("Error", ex.Message, MsgType.Error); return(false); } }