view dsp/rot45.m @ 42:ae596261e75f

Various fixes and development to audio handling
author samer
date Tue, 02 Dec 2014 14:51:13 +0000
parents db7f4afd27c5
children
line wrap: on
line source
function B = rot45(A)
% rot45 - rotate square array by 45 degrees
%
% rot45 :: [[N,N]] -> [[N,N]].
%
% Array is SUBSAMPLED, so, you should pre-filter to avoid aliasing.
% Result is padded with zeros in the corners.

n = length(A);

B = diag(A,0)';
pad = [0];

for k=2:2:n-1
	B = [ pad diag(A,k)' pad; B; pad diag(A,-k)' pad];
	pad = [pad 0];
end