漂亮的图案

require "gd"
--~ n = 3.5;
--~ m = 4;
--~ n = 200;
--~ m = 1.3;
--~ n = 0.1;
--~ m = 200;
n = 3.1;
m = 50;

size = 250;
im = gd.createTrueColor(size+1,size+1);
white = im:colorResolve(255,255,255);
red   = im:colorResolve(255,  0,  0);
green = im:colorResolve(  0,255,  0);
blue  = im:colorResolve(  0,  0,255);
offset = { x=size/2 , y=size/2 };
last = {};
for u=0,m*math.pi, 0.001 do
	r=size/2 * math.sin(n*u);
	new={ x = r*math.cos(u)+offset.x , y = r*math.sin(u)+offset.y};
	if last.x == nil then
		first = { x=new.x , y=new.y};
	else
		im:line(  last.x, last.y,  new.x,  new.y, green);
	end
	last= {x = new.x , y = new.y};
end
--~ im:line(  last.x, last.y,  first.x,  first.y, green);
im:png("tt.png");
os.execute("tt.png")

编程技巧