Опираясь на мой предыдущий ответ , рассмотрим этот пример:
lines = imline.empty(0,10);
for i=1:10
lines(i) = imline(gca, rand(2,2));
end
Теперь скажем, что мы хотим удалить третью и последнюю строки:
До
>> whos lines
Name Size Bytes Class Attributes
lines 1x10 96 imline
>> lines.isvalid
ans =
1 1 1 1 1 1 1 1 1 1
После
>> delete( lines([3 end]) )
>> whos lines
Name Size Bytes Class Attributes
lines 1x10 88 imline
>> lines.isvalid
ans =
1 1 0 1 1 1 1 1 1 0
Таким образом, массив остается неизменным при delete
-ing ...
Если вы действительно хотите удалить их записи из массива,попробуйте:
>> lines(~lines.isvalid) = [];
>> size(lines)
ans =
1 8