約struct
?
Joints.left_knee = [100 200];
Joints.head = [-1 -100];
動的にそうような個々のエントリを参照し、fieldnames
ですべてのフィールドを取得します:あなたは、すべてのデータの同じ種類を必要とする、複数の関節を持って起こるが、それらはすべてが属している場合など
someVar = 'left_eye';
Joints.(someVar) = [200 250];
同じシステムは、あなたも、マルチDの構造体を作ることができます:
0:
だけ
Joints(1).left_knee = [100 200];
Joints(1).head = [-1 -100];
Joints(2).left_knee = [200 450];
Joints(2).head = [-10 -189];
Joints(3).left_knee = [-118 264];
Joints(3).head = [+33 78];
があなたにマルチDの構造体の文脈で有用ないくつかのテクニックを表示します
>> someVar = 'head';
>> Joints.(someVar) % will be expanded cell-array, 1 entry for each dimension
ans =
-1 -100
ans =
-10 -189
ans =
33 78
>> [Joints.(someVar)] % will collect those data in regular array
ans =
-1 -100 -10 -189 33 78
>> {Joints.(someVar)} % will collect those data in cell array
ans =
[1x2 double] [1x2 double] [1x2 double]
>> [A,B,C] = deal(Joints.(someVar)); % will assign data to 3 separate vars
A =
-1 -100
B =
-10 -189
C =
33 78
タイプhelp struct
詳細情報と関連機能については、こちらをご覧ください。
+1文字列変数を使用して構造体フィールドを参照できるかどうかわかりませんでした。 –