我有一个函数CreateMCC,它需要以下数组作为输入:
public static object CreateMccTemplate(int imageWidth, int imageHeight, int imageResolution, Minutia[] minutiae)我正在将其转换为这样的数组:
NETobj = NET.createGeneric('System.Collections.Generic.List',{'BioLab.Biometrics.Mcc.Sdk.Minutia'},length(matlabArray));
maArray = NET.createGeneric('System.Collections.Generic.List',{'BioLab.Biometrics.Mcc.Sdk.Minutia'},length(matlabArray));
for i=1:size(matlabArray,1)
AddRange(maArray, NET.convertArray(matlabArray(i,:)));
end 我把它叫在这里
template1=BioLab.Biometrics.Mcc.Sdk.MccSdk.CreateMccTemplate(300,300,500,maArray);我得到了这个错误:
No method 'AddRange' with matching signature found for class
'System.Collections.Generic.List<BioLab*Biometrics*Mcc*Sdk*Minutia>'.发布于 2017-08-03 23:02:14
解决方案是创建一个网络结构类型的数组,并用属性填充它:
maArray = NET.createArray('BioLab.Biometrics.Mcc.Sdk.Minutia',size(matlabArray,1));
for i=1:size(matlabArray,1)
NetObject = BioLab.Biometrics.Mcc.Sdk.Minutia();
NetObject .X =matlabArray(i,1);
NetObject .Y = matlabArray(i,2);
NetObject .Direction = matlabArray(i,3); %filling the attribut
maArray (i)=L;
end
template1=BioLab.Biometrics.Mcc.Sdk.MccSdk.CreateMccTemplate(300,300,500,maArray);https://stackoverflow.com/questions/45472759
复制相似问题