//public void DrawFindLineCaliper(CogLineSegment _CogFindLine = null) public void DrawFindLineCaliper(CogFindLine _CogFindLine = null) { ICogRecord _Record; CogGraphicCollection _Region; LineCaliperTool.InputImage = (CogImage8Grey)kCogDisplay.Image; LineCaliperTool.RunParams = _CogFindLine; _Record = LineCaliperTool.CreateCurrentRecord(); InteractiveLine = (CogLineSegment)_Record.SubRecords["InputImage"].SubRecords["ExpectedShapeSegment"].Content; _Region = (CogGraphicCollection)_Record.SubRecords["InputImage"].SubRecords["CaliperRegions"].Content; kCogDisplay.InteractiveGraphics.Add(InteractiveLine, "Line", false); foreach (ICogGraphic _ICogGra in _Region) { kCogDisplay.InteractiveGraphics.Add((ICogGraphicInteractive)_ICogGra, "", false); } GC.Collect(); }
private void DrawLineFindCaliperFunction(CogLineFindAlgo _CogLineFindAlgo) { if (eTeachStep.ALGO_SET != CurrentTeachStep) { MessageBox.Show("Not select \"Algorithm Set\" button"); return; } AlgorithmAreaDisplayRefresh(); CogFindLine _CogFindLine = new CogFindLine(); _CogFindLine.NumCalipers = _CogLineFindAlgo.CaliperNumber; _CogFindLine.CaliperSearchLength = _CogLineFindAlgo.CaliperSearchLength; _CogFindLine.CaliperProjectionLength = _CogLineFindAlgo.CaliperProjectionLength; _CogFindLine.CaliperSearchDirection = (_CogLineFindAlgo.CaliperSearchDirection == 90) ? 1.5708 : -1.5708; _CogFindLine.NumToIgnore = _CogLineFindAlgo.IgnoreNumber; _CogFindLine.CaliperRunParams.ContrastThreshold = _CogLineFindAlgo.ContrastThreshold; _CogFindLine.CaliperRunParams.FilterHalfSizeInPixels = _CogLineFindAlgo.FilterHalfSizePixels; _CogFindLine.ExpectedLineSegment.SetStartEnd(_CogLineFindAlgo.CaliperLineStartX, _CogLineFindAlgo.CaliperLineStartY, _CogLineFindAlgo.CaliperLineEndX, _CogLineFindAlgo.CaliperLineEndY); kpTeachDisplay.DrawFindLineCaliper(_CogFindLine); }