pythonnet调用halcon外部函数脚本编程环境搭建

这篇博客介绍了如何通过Python使用pythonnet库调用Halcon的外部函数。首先将halcondotnet.dll和hdevenginedotnet.dll导入Python项目,然后安装pythonnet库。在代码中创建了一个HdevEnginePy类,该类能够获取所有外部函数的名称,并能执行指定的Halcon外部函数,例如无参数的'halcontest.hdvp'。
摘要由CSDN通过智能技术生成

实现功能:halcon写一个外部函数,用pythonnet调用。

首先把halcon自带的halcondotnet.dll和hdevenginedotnet.dll两个文件复制到python项目目录里。

python安装pythonnet库,代码头:

import clr
import sys
import System
from System import String, Char, Int32, Environment, IntPtr

d = clr.AddReference("./sources/halcondotnet")
print(d)
d = clr.AddReference("./sources/hdevenginedotnet")

print会打印出halcon的版本

类创建:

from HalconDotNet import *

class HdevEnginePy:
    Procedure = HDevProcedure()
    Program = HDevProgram()
    ourProcedure = "./myProcedures" #外部函数路径

    def __init__(self):
        self.MyEngine = HDevEngine()
        self.MyEngine.SetProcedurePath(self.ourProcedure)
        return

    #获得所有的外部函数名
    def get_proc_names(self):
        procedure_name = self.MyEngine.GetProcedureNames()
        return procedure_name

 可以开始调用:

func=HdevEnginePy()
print(func.get_proc_names())

#这三句一体才能执行其中一个外部函数
func.Procedure=HDevProcedure("halcontest")
func.ProcCall=HDevProcedureCall(func.Procedure)
func.ProcCall.Execute()

halcontest.hdvp是我写的一个非常简单无参数的halcon函数 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值