• Remix
  • Share
  • New Entry

on 7 Nov 2023
  • 7
  • 19
  • 0
  • 0
  • 536
drawframe(1);
function drawframe(f)
cla
rng(2)
i = sqrt(-1);
nBubbles = 12;
r = rand(nBubbles,4);
colors = rand(nBubbles,3);
szs = rand(nBubbles,1) + 1;
for n = 1:size(r,1)
k = mod(n/size(r,1) + (f/48.01),1);
if mod(n,2)
k = 1-k;
end
x = r(n,:).*[1 i 1 i] + [0 1 i 0];
x = x([1 2 3 4 1]);
dv = diff(x);
dd = abs(dv);
ds = cumsum([0 dd]);
dk = k*sum(dd);
ix = find(dk <= ds,1,"first");
k2 = (dk-ds(ix-1))/(ds(ix)-ds(ix-1));
p = x(ix-1) + k2*dv(ix-1);
sz = szs(n);
color = colors(n,:);
hold on
h = bubblechart(real(p),imag(p), sz, color, ...
MarkerFaceAlpha=0.4, MarkerEdgeAlpha=0.5);
hold off
end
axis([0 1 0 1])
axis off
end
Animation
Remix Tree