source: proiecte/pmake3d/make3d_original/Make3dSingleImageStanford_version0.1/third_party/lightspeed/ind2subv.m @ 37

Last change on this file since 37 was 37, checked in by (none), 14 years ago

Added original make3d

File size: 748 bytes
Line 
1function sub = ind2subv(siz,index)
2%IND2SUBV   Subscript vector from linear index.
3% IND2SUBV(SIZ,IND) returns a vector of the equivalent subscript values
4% corresponding to a single index into an array of size SIZ.
5% If IND is a vector, then the result is a matrix, with subscript vectors
6% as rows.
7
8% Written by Tom Minka
9% (c) Microsoft Corporation. All rights reserved.
10
11n = length(siz);
12cum_size = cumprod(siz(:)');
13prev_cum_size = [1 cum_size(1:end-1)];
14index = index(:) - 1;
15sub = rem(repmat(index,1,n),repmat(cum_size,length(index),1));
16sub = floor(sub ./ repmat(prev_cum_size,length(index),1))+1;
17
18% slow way
19%for dim = n:-1:1
20%  sub(:,dim) = floor(index/cum_size(dim))+1;
21%  index = rem(index,cum_size(dim));
22%end
Note: See TracBrowser for help on using the repository browser.