clear all;
close all;
N = 5;
 
% 11
% 
% 12, 21
% 
% 13, 22, 31
% 
% 14, 23, 32, 41
% 
% 15, 24, 33, 42, 51
% 
%     25, 34, 43, 52
%     
%         35, 44, 53
%         
%             45, 54
%                 
%                 55
 
clear S 
 
% S(1).F = [1 1];
% S(2).F = [1 2; 2 1];
% S(3).F = [1 3; 2 2; 3 1];
% S(4).F = [1 4; 2 3; 3 2; 4 1];
% S(5).F = [1 5; 2 4; 3 3; 4 2; 5 1];
% S(6).F = [2 5; 3 4; 4 3; 5 2];
% S(7).F = [3 5; 4 4; 5 3];
% S(8).F = [4 5; 5 4];
% S(9).F = [5 5];
 
S(1).F = [1 1];
S(2).F = [1 2];
S(3).F = [1 3];
S(4).F = [1 4];
S(5).F = [1 5];
S(6).F = [2 5];
S(7).F = [3 5];
S(8).F = [4 5];
S(9).F = [5 5];
S(10).F = [5 4];
S(11).F = [5 3];
S(12).F = [5 2];
S(13).F = [5 1];
S(14).F = [4 1];
S(15).F = [3 1];
S(16).F = [2 1];
S(17).F = [2 2];
S(18).F = [2 3];
S(19).F = [2 4];
S(20).F = [3 4];
S(21).F = [4 4];
S(22).F = [4 3];
S(23).F = [4 2];
S(24).F = [3 2];
S(25).F = [3 3];
 
S(26).F = [3 2];
S(27).F = [4 2];
S(28).F = [4 3];
S(29).F = [4 4];
S(30).F = [3 4];
S(31).F = [2 4];
S(32).F = [2 3];
S(33).F = [2 2];
S(34).F = [2 1];
S(35).F = [3 1];
S(36).F = [4 1];
S(37).F = [5 1];
S(38).F = [5 2];
S(39).F = [5 3];
S(40).F = [5 4];
S(41).F = [5 5];
S(42).F = [4 5];
S(43).F = [3 5];
S(44).F = [2 5];
S(45).F = [1 5];
S(46).F = [1 4];
S(47).F = [1 3];
S(48).F = [1 2];

numFrames = length(S);
 
clear V
figure;
for p=1:numFrames
    temp = S(p).F;
    numHigh = size(temp,1);
    
    A = zeros(N,N);
    
    clear J
    for m=1:numHigh
        
        A(temp(m,1),temp(m,2))=1;
        J(m) = (temp(m,1) - 1) * N + temp(m,2)-1;

    end
    
    V(p).J = J;
    
    imagesc(A); axis image;
    pause(0.1);
    
end
clc
genArduinoMirrorVid2(V);

%     if p>1
%         A(p-1,p) = 0.5;
%     end
%     
%     if p<N-1
%         A(p+2,p) = 0.25;
%     end
%     if p>2
%         A(p-2,p) = 0.25;
%     end
%     
%     if p<N-2
%         A(p+3,p) = 0.1;
%     end

% A = A-min(A(:));
% A = A./max(A(:));
% A = A*flickBits;
% A = int8(A);
% 
% close all;
% figure;
% imagesc(A); axis image;
% 
% B = reshape(A,N*N,1)+1;
% O = zeros(N*N,flickBits);
% 
% for p=1:N*N
%     O(p,:) = arrLevels(B(p),:);
% end
% 
% T = genArduinoMatrix(O);