ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

.NET データのセル配列の受け渡し

.NET データのセル配列の例

入れ子にされた System.Object 配列の変換」の例では、セル配列 mlData には、MyGraph.getNewData メソッドからのデータが含まれています。ソース ファイル内のクラス ドキュメンテーションを読むことで、次のような MATLAB® グラフを作成できます。

dllPath = fullfile('c:','work','NetDocCell.dll');
asm = NET.addAssembly(dllPath);
obj = NetDocCell.MyGraph;

% Create cell array containing all data
mlData = cell(obj.getNewData);

% Plot the data and label the graph
figure('Name',char(mlData{1}));
plot(double(mlData{2}(2)))
xlabel(char(mlData{2}(1)));

しかし、型や次元の異なるデータの追跡や .NET データを MATLAB 型にマップするために必要な変換は、セル配列構造を使用する複雑な操作です。MATLAB で入れ子になった配列 System.Object の内容を操作するためのヒントを紹介します。.NET メソッドからデータを読み取った後、次を行います。

  • すべての配列 System.Object にセル配列を作成します。

  • .NET オブジェクトから返されるデータの処理」の情報に従って、.NET データ型を MATLAB のデータ型に変換します。

  • セル配列内に各型の MATLAB 変数を作成します。

  • MATLAB 変数で MATLAB 関数を呼び出します。

各 System.Object へのセル配列の作成

この例では、セル配列に System.Object データをコピーする方法を示します。

次のステートメントは、セル配列 mlData を作成します。

mlData = cell(obj.getNewData)
mlData = 
    [1x1 System.String]    [1x1 System.Object[]]

このセル配列にはこれらの型の要素が含まれます。

配列 System.Object の内容にアクセスするには、別のセル配列 mlPlotData を作成します。

mlPlotData = cell(mlData{2})
mlPlotData = 
    [1x1 System.String]    [1x1 System.Double[]]

このセル配列にはこれらの型の要素が含まれます。

.NET データからの MATLAB 変数の作成

セル データを MATLAB 変数に割り当て、変換します。

% Create descriptive variables
% Convert System.String to char
mytitle = char(mlData{1});
myxlabel = char(mlPlotData{1});
% Convert System.Double to double
y = double(mlPlotData{2});

MATLAB 変数での MATLAB 関数の呼び出し

次のデータを使用して MATLAB グラフを作成します。

% Remove the previous figure
close
% Plot the data and label the graph
figure('Name',mytitle,'NumberTitle','off');
plot(y)
xlabel(myxlabel);
この情報は役に立ちましたか?