why this code is used?
显示 更早的评论
function iHelix=snailMatIndex(inMatDims)
if length(inMatDims)==1
inMatDims=repmat(inMatDims, 1, 2);
end
nElemems=inMatDims(1)*inMatDims(2);
indMat =reshape(1:nElemems, inMatDims);
iHelix=[];
while ~isempty(indMat)
if size(indMat, 2)==1
iHelix=cat( 2, iHelix, transpose(indMat(:, 1)) );
indMat=[];
else
iHelix=cat( 2, iHelix, indMat(1, :) );
indMat(1, :)=[]; % remove the current top row
if ~isempty(indMat)
indMat=rot90(indMat); % rotate index matrix 90° clock-
wise
end % if ~isempty(indMat)
end % if size(indMat, 2)==1
end % while ~isempty(indMat)
1 个评论
Walter Roberson
2019-4-13
Helix scan, I think.
Read the documentation that was provided with the code. If there wasn't any, then ask the author to document the code.
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!