问题
Halcon导出用作C#编写的时候,出现以下问题:
无法将类型为“System.Double”的对象强制转换为类型“HalconDotNet.HTuple”。”
指向代码为:
m_Algorithm.gen_line(out outLine, ((HawkPoint)Input["Point"]).X, ((HawkPoint)Input["Point"]).Y, (HTuple)Input["Angle"], (HTuple)Input["Length"], "region");
gen_line
的具体实现可看Halcon利用点、长度和角度生成直线
解决
Input[“Length”]表示是一个Object类型的数据,因此应该先转换为double数据,再转换成HTuple
实现如下:
m_Algorithm.gen_line(out outLine, ((HawkPoint)Input["Point"]).X, ((HawkPoint)Input["Point"]).Y, (HTuple)(double)Input["Angle"], (HTuple)(double)Input["Length"], "region");