using System; using System.Collections.Generic; using System.Linq; using System.Text; using HalconDotNet; namespace HalconTools { public class JobAssistance { public JobAssistance() { } /// /// 单独工具运行 /// /// public JobResult ToolRun(HImage image,JobTool tool) { JobResult tmpResult = new JobResult(); FitAssistant mfit = new FitAssistant(); MatchingAssistant mMatch = new MatchingAssistant(); ScrewAssistant mScrew = new ScrewAssistant(); switch (tool.type) { case ToolType.FindCircle: tmpResult.fitCircleResult = new FitCircleResult(); mfit.mImage = image; tmpResult.fitCircleResult = mfit.FitCircle(tool.fitCircleParam); break; case ToolType.FindLine: tmpResult.fitLineResult = new FitLineResult(); mfit.mImage = image; tmpResult.fitLineResult = mfit.FitLine(tool.fitLineParam); break; case ToolType.Matching: tmpResult.matchingResult = new MatchingResult(); mMatch.mImage = image; mMatch.parameterSet = tool.matchingParam; mMatch.loadShapeModel(tool.modelPath); mMatch.detectShapeModel(); tmpResult.matchingResult = mMatch.tResult; break; case ToolType.Screw: tmpResult.screwResult = new ScrewResult(); mScrew.mImage = image; mScrew.SetPara(tool.screwParam); mScrew.Run(); tmpResult.screwResult = mScrew.mScrewResult; break; } return tmpResult; } } }