clear clc close all R = 5 r = 2 % construct the plaid th = linspace(0, 2*pi, 200) phi = linspace(0, 2*pi, 200) [pphi, tth] = meshgrid(phi, th); % nasty part rr = R + r .* cos(pphi); zz = r .* sin(pphi); % do the rotation xx = rr .* cos(tth); yy = rr .* sin(tth); surf(xx, yy, zz) shading interp colormap copper lightangle(60, 45) axis off, axis equal title('Krispy Kreme')