%drawing the board
function Cube_Board(Face,Box,Count_Move)
%--------------------------------------------------------------------------
clc
clf
for mm=1:3
for nn=1:3
if Box(mm,nn)>0
BX=nn-1;BY=mm-1;
%--------------------------------------------------------------------------
%for each cube
for ii=1:2
for jj=1:2
hold on
if Face(ii,jj,Box(mm,nn))==0, fill([2*BY+jj-1 2*BY+jj-1 2*BY+jj 2*BY+jj 2*BY+jj]/2,[2*BX+ii-1 2*BX+ii 2*BX+ii 2*BX+ii-1 2*BX+ii-1]/2,'k','edgecolor','k'); end
if Face(ii,jj,Box(mm,nn))==1, fill([2*BY+jj-1 2*BY+jj-1 2*BY+jj 2*BY+jj 2*BY+jj]/2,[2*BX+ii-1 2*BX+ii 2*BX+ii 2*BX+ii-1 2*BX+ii-1]/2,'w','edgecolor','w'); end
end
end
%--------------------------------------------------------------------------
end
end
end
for ii=0:2
for jj=0:2
rectangle('Position', [0+ii 0+jj 1 1],'linewidth',2.5,'edgecolor','r');
end
end
hold on
text(1.75,-0.15,'Total Moves','color','r','fontsize',15);
text(2.75,-0.15,sprintf('%d',Count_Move),'fontsize',15,'color','r');
text(0.05,-0.15,'Click on Cube to Flip...','color','b','fontsize',15);
hold off
axis off
title('Rolling Cube','fontsize',20,'color',[0.1 0.5 0.1]);
%--------------------------------------------------------------------------