0

MatlabでWebFiguresを使用していますが、matlabで簡単な関数を使用しています

function df = getFig

  f = openfig('C:\test1.fig');

  figure('Visible','Off')

  df = webfigure(f);
  close(f);
end

この関数をJavaサーブレットから呼び出しています。ただし、これはしばらくの間、次のエラーが発生します。

{_Error using figure

UIJ_AreThereWindowShowsPending - timeout waiting for window to show up

Error in openfig (line 135)

Error in getFig (line 3)
}_ 

プロットやノットを使用するなど、オンザフライで生成された図を除いて、同じ関数を呼び出してみましたが、どちらも正常に機能します。

また、関連する質問として、Javaからこの関数へのファイルへの参照を渡すことは可能ですか?inputstreamオブジェクトのように?これは、取得する必要のあるファイルが実際にはURLから取得されるためです。

何か案は?

4

1 に答える 1

0

問題が正確に何であるかはわかりませんが、1つの問題は、コマンドfigure('Visible','off')がフィギュアを変更しておらずf、見えない新しい別のフィギュアを作成していることである可能性があります。

また、図を非表示にする理由もわかりません(これは、Javaサーブレット内に表示されない理由の本当の問題である可能性があります)。

あなたがそれを見えなくする必要があるなら、あなたは試すことができます

openfig('filename.fig','new','invisible')

または、openfigグラフィックだけを含む図ではなくGUIを対象としているため、hgload代わりに使用して、可視性を直接設定します。

于 2011-11-30T15:06:18.383 に答える