1
使用Matlab,我創建了一個圖形用戶界面,其中包含屏幕上的100個圓圈。我已經將每個註釋的句柄存儲在一個名爲神經元的向量中。在每次迭代中,我都希望將每個圓圈移動一定的量。這些位移存儲在稱爲位移的矩陣中,其中第i行給出第i個神經元的位移矢量。我使用for循環中的get/set命令更新每個圓的位置。Matlab:用於註釋變量的矢量化更新
for i=1:length(neurons)
neuronPos=get(neurons(i),'Position');
neuronPos=neuronPos+displacement(i,:);
set(neurons(i),'Position',neuronPos);
end;
上面的代碼工作得很好。但如果可能,我想知道如何矢量化此操作。我知道使用get命令,我可以獲得所有圈子的位置矩陣(它實際上返回一個單元格,但可以使用cell2mat輕鬆轉換)。
get(neurons,'Position');
但我找不出一種方法來使用set命令來同時更新所有圓的位置。任何幫助,將不勝感激。
感謝,這正是我一直在尋找 – LiberatedDreamer