public void DrawFindCircleCaliper(CogFindCircle _CogFindCircle = null) { ICogRecord _Record; CogGraphicCollection _Region; CircleCaliperTool.InputImage = (CogImage8Grey)kCogDisplay.Image; CircleCaliperTool.RunParams = _CogFindCircle; _Record = CircleCaliperTool.CreateCurrentRecord(); InteractiveCircularArc = (CogCircularArc)_Record.SubRecords["InputImage"].SubRecords["ExpectedShapeSegment"].Content; _Region = (CogGraphicCollection)_Record.SubRecords["InputImage"].SubRecords["CaliperRegions"].Content; kCogDisplay.InteractiveGraphics.Add(InteractiveCircularArc, "CircleArc", false); foreach (ICogGraphic _ICogGra in _Region) { kCogDisplay.InteractiveGraphics.Add((ICogGraphicInteractive)_ICogGra, "", false); } GC.Collect(); }
private Boolean make_results() { string ProcID = System.Reflection.MethodInfo.GetCurrentMethod().Name.ToString(); try { if (mFindCircleTool.Results != null) { CogCircle iCircle = mFindCircleTool.Results.GetCircle(); CogCircularArc iCircularArc = mFindCircleTool.Results.GetCircularArc(); if (iCircle != null && iCircularArc != null) { mFindCircleTool_Results.Circle_CenterX = iCircle.CenterX; mFindCircleTool_Results.Circle_CenterY = iCircle.CenterY; mFindCircleTool_Results.Circle_Radius = iCircle.Radius; mFindCircleTool_Results.CircularArc_CenterX = iCircularArc.CenterX; mFindCircleTool_Results.CircularArc_CenterY = iCircularArc.CenterY; mFindCircleTool_Results.CircularArc_Radius = iCircularArc.Radius; mFindCircleTool_Results.CircularArc_AngleStart = iCircularArc.AngleStart; mFindCircleTool_Results.CircularArc_AngleSpan = iCircularArc.AngleSpan; return(true); } else { SaveLog.Msg_("iCircle or iCircularArc is null!"); return(false); } } else { SaveLog.Msg_("FindCircleTool Doesn't have any result!"); return(false); //MessageBox.Show("Didn't find any line"); } } catch (Exception ex) { SaveLog.Msg_("FindCircleTool make_results Failed : " + ModularID + ":\r\n" + ProcID + ":\r\n" + ex.ToString()); return(false); } }