HERE IS A MATLAB TEMPLATE
WHICH ANYONE CAN USE
TO MAKE ANY GIF IMAGINABLE
ALL YOU NEED IS A TILING AND A TRANSFORMATION
function gif_machine
height = 540;
width = 540;
frames = 120;
framerate = 60;
[Z im] = initialize_gif(height,width,frames);
X = real(Z);
Y = imag(Z);
for idx = 1:frames
t = idx/frames;
F = 1./Z; %transformation
A = mod(floor(real(F*2+t))+floor(imag(F*2+t)),2); %tiling
im(:,:,1,idx) = A;
im(:,:,2,idx) = A;
im(:,:,3,idx) = A;
idx
end
make_gif(‘filename.gif’,im,framerate);
end
function [Z,im] = initialize_gif(width,height,number_of_frames)
y = -1:2/(height-1):1;
x = -width/height:2*(width/height)/(width-1):width/height;
[X,Y] = meshgrid(x,y);
Z = complex(X,Y);
im = zeros(height,width,3,number_of_frames);
end
function make_gif(filename,image,framerate)
for idx = 1:size(image,4)
[A,map] = rgb2ind(image(:,:,:,idx),256);
if idx == 1
imwrite(A,map,filename,'gif’,'LoopCount’,Inf,'DelayTime’,1/framerate);
else
imwrite(A,map,filename,'gif’,'WriteMode’,'append’,'DelayTime’,1/framerate);
end
end
end
![hyperbolic-gifs:
“HERE IS A MATLAB TEMPLATE
WHICH ANYONE CAN USE
TO MAKE ANY GIF IMAGINABLE
ALL YOU NEED IS A TILING AND A TRANSFORMATION
function gif_machine
height = 540;
width = 540;
frames = 120;
framerate = 60;
[Z im] =...](https://66.media.tumblr.com/f589d1db7ff5873a3ff320b30fbe7fae/tumblr_p156mhucwj1w0y51zo1_540.gif)




