Getting array size error when using plotIGESentity?

I'm using the function plotIGESentity from IGES toolbox as follow.
for i=1:length(ParameterData);
plotIGESentity(ParameterData,i);
view(60,42)
grid on
end
It used to work fine before I compile the C files and run the makeIGESmex. but now when i run it with the same IGES file I get the following error!!!
Error using nrbSrfRegularEvalIGES
Requested 12884903802x480 (23040.0GB) array exceeds maximum array size preference. Creation of arrays greater than
this limit may take a long time
and cause MATLAB to become unresponsive. See array size limit or preference panel for more information.
Error in retSrfCrvPnt (line 54)
[P,UV,TRI]=nrbSrfRegularEvalIGES(ParameterData{ind}.nurbs,ParameterData{ind}.u(1),ParameterData{ind}.u(2),nu,ParameterD
ata{ind}.v(1),ParameterData{ind}.v(2),nv);
Error in plotIGESentity (line 137)
[P,isSCP,isSup,TRI]=retSrfCrvPnt(1,ParameterData,0,i,subd);
And when i run the code one another PC it works fine !!!
Any help is appreciated

 採用された回答

Walter Roberson
Walter Roberson 2017 年 9 月 19 日

1 投票

Is the parameter data being extracted from the command line? If so then remember that for compiled executables the command line information is always received as strings.
Interactive MATLAB:
plot4me(1, 2,3)
plot4me receives numeric 1, 2, and 3
Compiled, command line:
plot4me 1, 2,3
plot4me receives '1,' and '2,3'

10 件のコメント

Faez Alkadi
Faez Alkadi 2017 年 9 月 19 日
編集済み: Faez Alkadi 2017 年 9 月 19 日
what do you mean by "parameter data being extracted from the command line "?
It is extracted from iges2matlab function
Thanks
Walter Roberson
Walter Roberson 2017 年 9 月 19 日
How is the user expected to invoke the executable? Are they clicking on an icon? Or are they going to a Windows shell and typing in the name of the executable and typing something after the name to indicate what specific work they want done?
Faez Alkadi
Faez Alkadi 2017 年 9 月 20 日
編集済み: Faez Alkadi 2017 年 9 月 20 日
Load parameter data from IGES-file as follow in the editor window:
[ParameterData,EntityType,numEntityType,unknownEntityType,numunknownEnti
tyType]=iges2matlab('File Name.IGS');
And then and then after i get the ParameterData I plot IJES part as follow in the editor window too:
for i=1:length(ParameterData);
hold on
plotIGESentity(ParameterData,i);
view(60,42)
grid on
end
This code used to work find before I compile c-files. and still works fine on other PC which is not compiled.
Walter Roberson
Walter Roberson 2017 年 9 月 20 日
I do not know. You will need to put in debugging statements. I would especially suggest testing class(ParameterData)
Faez Alkadi
Faez Alkadi 2017 年 9 月 20 日
Do you know how to de-activate the compiler ?
Walter Roberson
Walter Roberson 2017 年 9 月 20 日
? Just don't compile the code?
If you mean something like how to selectively have some parts compiled but some parts interpreted, then that cannot be done with MATLAB Compiler. There are some potential workaround involving using the automation interface to talk to an interactive MATLAB if you are using Windows
Faez Alkadi
Faez Alkadi 2017 年 9 月 21 日
編集済み: Faez Alkadi 2017 年 9 月 21 日
Walter,
Thanks for the explanation:
The thing is I used to run the code normally until I downloaded Microsoft Windows SDK 7.1 (C) and then I ran makeIGESmex !!!
Since then the code is always giving me the error !!!
I tried to close both the code and Matlab and open them again and run the code with out running the makeIGESmex first.
But I still have the error.
Thank you
Walter Roberson
Walter Roberson 2017 年 9 月 21 日
You will need to put in debugging statements. I would especially suggest testing class(ParameterData)
Faez Alkadi
Faez Alkadi 2017 年 9 月 22 日
sorry,
I'm a beginner Matlab user and don't know how to put in debugging statements.
can you help with that ?
Thanks
Walter Roberson
Walter Roberson 2017 年 9 月 22 日
Put in fprintf() or disp() statements or msgbox() calls.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeManage Products についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by