我有一个名为的struct数组Lst.每个结构都有以下形式:
Point (x,y)
Type (1-6)
Run Code Online (Sandbox Code Playgroud)
我想为每种类型获得单独的点数组.我怎么才能得到它?
Lst(Lst.Type==1);
Run Code Online (Sandbox Code Playgroud)
因为型号将无法正常工作不是一个领域Lst,但的Lst(i).
另外,有没有办法保存每个项目的索引或另一种方法,然后再将它们组合到原始订单?
L1 = Lst([Lst.Type]==1);会给你的子集L1的Lst地方Type == 1.
同样,您可以使用idx1 = find([Lst.Type]==1)记忆索引.
编辑:上述用途,[]操作者向域元素聚集Type的Lst成阵列.对于您的评论/问题,您也可以使用完全相同的运算符来获取X结构化数组子集的特定字段元素的数组,如
X1 = [Lst([Lst.Type]==1).X];
Run Code Online (Sandbox Code Playgroud)