halcon除了可以导出常见的C#文件外,也可以不用导出,通过HDevEngine直接在c#下调用脚本。 直接贴代码
- private HDevEngine engine = new HDevEngine();
- private HDevProgramCall programCall;
- private string programPath;
- private string procedurePath;
- private HDevOpMultiWindowImpl MyHDevOperatorImpl;
- public void initialengine(string filename)
- {
- programPath = System.Environment.CurrentDirectory + @"" + filename + ".hdev";
- procedurePath = System.Environment.CurrentDirectory + @"";
- if (!HalconAPI.isWindows)
- {
-
- programPath = programPath.Replace("\", "/");
- procedurePath = procedurePath.Replace("\", "/");
- }
- engine.SetProcedurePath(procedurePath);
- // viewPort.HalconWindow.SetLineWidth(4);
- MyHDevOperatorImpl = new HDevOpMultiWindowImpl(viewPort.HalconWindow);
- engine.SetHDevOperators(MyHDevOperatorImpl);
- }
- public void loadengine()
- {
- try
- {
- HDevProgram program = new HDevProgram(programPath);
- programCall = new HDevProgramCall(program);
- }
- catch { }
- }
- public void disposeengine()
- {
- try
- {
- programCall.Dispose();
- }
- catch { }
- }
- public void inspectengine()
- {
- try
- {
- programCall.Execute();
- }
- catch { }
- }
复制代码
|