HalconDotNet.HTupleAccessException:“'Cannot convert to double array' when accessing 'HalconDotNet.HTupleMixed'”
原因:
除了Double还包括其他元素,比如:LONG
同一段代码,可能产生全double,可能部分double,部分LONG。
解决方法:
public static double[] TupleArrToDoubleArr(HTuple tuple)
{
List<double> dRes1 = new List<double>();
for (int i = 0; i < tuple.Length; i++)
{
var type = tuple[i].Type;
if ((HTupleType.DOUBLE == type) || (HTupleType.LONG == type) || (HTupleType.INTEGER == type))
{
dRes1.Add(tuple[i]);
}
}
return dRes1.ToArray();
}
开发环境:win7 + VS2022 + halcon12