Release 12.1 リリースノート | ![]() ![]() |
Java 配列の結合
MATLAB 6.1 では、次元の異なる Java オブジェクトの配列を結合できます。以下の例題では、java.lang.Integer
の 2行 3列の配列と同じクラスをもつ 4行 3列の配列を結合します。
A = java.lang.Integer[][]: [ 1] [ 2] [ 3] [ 4] [ 5] [ 6] [17] [18] [19] [20] [21] [22] B = java.lang.Integer[][]: [11] [12] [13] [14] [15] [16]
垂直な結合 [A;B]
は、同じ列数をもつため簡単です。水平な結合 [A B]
は、2つの配列を最初と2番目の列が 6行で、3番目と4番目の列が 3列の不規則な配列に合わせます。
C = [A;B] C = [A B] C = C = java.lang.Integer[][]: java.lang.Integer[][]: [ 1] [ 2] [ 3] [6 element array] [ 4] [ 5] [ 6] [6 element array] [11] [12] [13] [3 element array] [14] [15] [16] [3 element array] [17] [18] [19] [20] [21] [22]
注意 Java オブジェクトの結合 は、Java オブジェクト結合方法の変更について説明します。 |
新規 Fortran MX、MEX、MAT、ENG 関数
以下の関数が Fortran MX、MEX、MAT、Engine 外部インタフェースに追加されました。これらの関数のほとんどは、MATLAB C language API に既に存在します。
mexFunctionName |
mexGetArray |
mexGetArrayPtr |
mexIsGlobal |
mexIsLocked |
mexLock |
mexMakeArrayPersistant |
mexMakeMemoryPersistant |
mexPutArray |
mexUnlock |
mexWarnMsgTxt |
matDeleteArray |
matGetArray |
matGetArrayHeader |
matGetNextArray |
matGetNextArrayHeader |
matPutArray |
matPutArrayAsGlobal |
engGetArray |
engPutArray |
ActiveX およびエンジンインタフェースに追加されたプロパティ
Windows 上で実行中の ActiveX Automation serverアプリケーションと MATLABエンジンアプリケーションに対して、Visible
と呼ばれる新規プロパティを使って Windows デスクトップ上にアプリケーションウィンドウが表示されるかどうかコントロールできます。
Visible
が設定されている場合、ActiveX アプリケーションまたはエンジンのサーバウィンドウはデスクトップで見ることができ、ユーザはサーバと対話できます。これがデフォルトになります。Visible
がクリアされている場合、アプリケーションまたはエンジンウィンドウはデスクトップから取り除かれます。
ActiveX. この例題は、h.visible
を 0
に設定し、 ActiveX automation server アプリケーションを非可視にします。h.visible
を調べて3行目の可視性の設定をチェックします。
h = actxserver('Matlab.Application'); h.visible = 0; h.visible ans = 0
MATLABエンジン. MATLABエンジンセッションに対しては、MATLAB 6.1 では新規の engSetVisible
と engGetVisible
関数を使用します。以下の 4行目は、engSetVisible
に引数 0
を設定することでMATLABエンジンウィンドウを見えなくしています。5行目は、engGetVisible
を使ってこの設定を確認しています。
Engine *ep; bool vis; ep = engOpen(NULL); engSetVisible(ep, 0); engGetVisible(ep, &vis);
シリアル I/O
MATLABのシリアルポートインタフェースは、コンピュータのシリアルポートに接続するモデム、プリンタ、科学機器のような周辺機器へ直接アクセスを提供します。このインタフェースは、関数 serial
を使って作成するシリアルポートオブジェクトによって確立されます。シリアルポートオブジェクトは、以下を行う関数とプロパティをサポートします。
Windows プラットフォーム上でのシリアルポートの開放 シリアルポートオブジェクトは、シリアルポートと通信するために javax.comm
パッケージを使用します。しかし、javax.comm
のメモリのリークによって、シリアルポートオブジェクトはメモリから開放されません。関数 freeserial
を使用して、シリアルポートを MATLAB から開放します。
freeserial
は、Windows プラットフォーム上でのみ必要です。シリアルポートが指定のポートに接続された後に別のアプリケーションからそのシリアルポートに接続し、MATLABは終了したくない場合のみ、freeserial
を使用します。
イベント、コールバック、関数ハンドル Action プロパティと action 関数は、callback プロパティおよび callback 関数と呼ばれます。この新しい用語は、関連するプロパティと関数の新しい名前に反映されています。名前の変更に関する一般的な規則は、プロパティについては、"Action" を "Fcn" に変更し、関数については、"action" を "callback" に変更します。たとえば、TimerAction
は TimerFcn
に変更され、instraction
は instrcallback
に変更されています。
また、コールバック関数へオブジェクト情報とイベント情報を自動的に渡したい場合、関数ハンドルまたはセル配列として関数を指定しなければなりません。コールバック関数を文字列として指定できることに注意してください。この場合、コールバックはワークスペースで評価され、関数の入力引数には必要条件はありません。
Terminator
プロパティ - Terminator
は、0 から 127 までの10進値で等価な ASCII 文字列、CR/LF
、LF/CR
、空('')に設定できます。TimerPeriod
の値が小さすぎる場合、タイマイベントが処理されないことがあります。最小 TimerPeriod
の値は、0.01 秒です。
![]() |
OpenGL レンダラー機能 -- Microsoft Windows | グラフィカルユーザインタフェースの作成 -- GUIDE | ![]() |