4

という名前の構造体配列がありLstます。すべての構造体には次の形式があります。

Point (x,y)
Type (1-6)

タイプごとに個別のポイント配列を取得したい。どうすれば入手できますか?

Lst(Lst.Type==1);

Type は のフィールドではなく のフィールドであるため、機能しませLstLst(i)

さらに、各アイテムのインデックスを保存する方法、またはそれらを元の順序に再度結合する別の方法はありますか?

4

1 に答える 1

6

L1 = Lst([Lst.Type]==1);whereのサブセットが得られL1ます。LstType == 1

idx1 = find([Lst.Type]==1)同様に、インデックスを記憶するために使用できます。

EDIT : 上記では、[]演算子を使用してフィールド要素TypeLst配列に集約しています。コメント/質問に対して、まったく同じ演算子を使用してX、構造化配列のサブセットの特定のフィールド要素の配列を取得することもできます。

X1 = [Lst([Lst.Type]==1).X];
于 2013-01-06T07:44:19.100 に答える