function dreirundeck(canvas,mx,my,r,eckR,winkel)
{
	r=r-eckR;
	var wk=winkel/180*Math.PI;
	var x1=mx+Math.sin(wk)*r;
	var y1=my-Math.cos(wk)*r;
	var x2=mx+Math.sin(wk+(120*Math.PI/180))*r;
	var y2=my-Math.cos(wk+(120*Math.PI/180))*r;
	var x3=mx+Math.sin(wk+(240*Math.PI/180))*r;
	var y3=my-Math.cos(wk+(240*Math.PI/180))*r;
	var w1=wk-150*Math.PI/180;
	var w2=wk-30*Math.PI/180;
	var w3=wk+Math.PI*0.5;
	canvas.arc( x1, y1, eckR, w1, w2, false);
	canvas.arc( x2, y2, eckR, w2, w3, false);
	canvas.arc( x3, y3, eckR, w3, w1, false);
}
function rundeck(canvas,x,y,w,h,r,r2,r3,r4)
{
	if(typeof(r2)=="undefined")r2=r;
	if(typeof(r3)=="undefined")r3=r;
	if(typeof(r4)=="undefined")r4=r;
	canvas.arc( x+r, y+r, r, Math.PI, -0.5*Math.PI, false);
	canvas.arc( x+w-r2, y+r2, r2, -0.5*Math.PI, 0, false);
	canvas.arc( x+w-r3, y+h-r3, r3, 0, 0.5*Math.PI, false);
	canvas.arc( x+r4, y+h-r4, r4, 0.5*Math.PI, Math.PI, false);
}
function herz(canvas,x,y,w,h)
{
	canvas.moveTo( x, y+Math.round(h*0.3) );	
	canvas.bezierCurveTo( x, y, x+Math.round(w*0.5), y, x+Math.round(w*0.5), y+Math.round(h*0.3) );	
	canvas.bezierCurveTo( x+Math.round(w*0.5), y,x+Math.round(w), y, x+Math.round(w), y+Math.round(h*0.3) );	
	canvas.bezierCurveTo(x+Math.round(w), y+Math.round(h*0.5), x+Math.round(w*0.5), y+Math.round(h*0.8),x+Math.round(w*0.5), y+Math.round(h) );	
	canvas.bezierCurveTo( x+Math.round(w*0.5), y+Math.round(h*0.8), x, y+Math.round(h*0.5), x, y+Math.round(h*0.3) );	
}
function hexagon(canvas,x,y,w,h,winkel)
{
	var s60=0.5*Math.sin(Math.PI/3);
	var c60=0.5*Math.cos(Math.PI/3);
	var wk=winkel/180*Math.PI;
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(h*0.5), -0.5*Math.PI+wk, -0.5*Math.PI+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), -0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, -0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), 0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, 0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(h*0.5), 0.5*Math.PI+wk, 0.5*Math.PI+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), 0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, 0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), -0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, -0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, false);	
}
function stern6(canvas,x,y,w,h,winkel)
{
	var s60=0.5*Math.sin(Math.PI/3);
	var c60=0.5*Math.cos(Math.PI/3);
	var wk=winkel/180*Math.PI;
	var r=Math.sqrt(Math.pow(w,2)+Math.pow(h,2));
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(h*0.5), -0.5*Math.PI+wk, -0.5*Math.PI+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*c60,2)+Math.pow(h*s60,2))*0.4), -0.5*Math.PI+Math.atan((w*c60)/(h*s60))+wk, -0.5*Math.PI+Math.atan((w*c60)/(h*s60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), -0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, -0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, false);
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(w*0.2), wk, +wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), 0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, 0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*c60,2)+Math.pow(h*s60,2))*0.4), 0.5*Math.PI-Math.atan((w*c60)/(h*s60))+wk, 0.5*Math.PI-Math.atan((w*c60)/(h*s60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(h*0.5), 0.5*Math.PI+wk, 0.5*Math.PI+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*c60,2)+Math.pow(h*s60,2))*0.4), 0.5*Math.PI+Math.atan((w*c60)/(h*s60))+wk, 0.5*Math.PI+Math.atan((w*c60)/(h*s60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), 0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, 0.5*Math.PI+Math.atan((w*s60)/(h*c60))+wk, false);
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(w*0.2), Math.PI+wk, Math.PI+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*s60,2)+Math.pow(h*c60,2))), -0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, -0.5*Math.PI-Math.atan((w*s60)/(h*c60))+wk, false);	
	canvas.arc( x+Math.round(w*0.5), y+Math.round(h*0.5),  Math.round(Math.sqrt(Math.pow(w*c60,2)+Math.pow(h*s60,2))*0.4), -0.5*Math.PI-Math.atan((w*c60)/(h*s60))+wk, -0.5*Math.PI-Math.atan((w*c60)/(h*s60))+wk, false);
}
function stern5(canvas,x,y,r,winkel)
{
	var wk=winkel/180*Math.PI;
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+wk, -0.5*Math.PI+wk, false);	
	canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+Math.PI/5+wk, -0.5*Math.PI+Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+2*Math.PI/5+wk, -0.5*Math.PI+2*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+3*Math.PI/5+wk, -0.5*Math.PI+3*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+4*Math.PI/5+wk, -0.5*Math.PI+4*Math.PI/5+wk, false);		
	canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+5*Math.PI/5+wk, -0.5*Math.PI+5*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+6*Math.PI/5+wk, -0.5*Math.PI+6*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+7*Math.PI/5+wk, -0.5*Math.PI+7*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+8*Math.PI/5+wk, -0.5*Math.PI+8*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+9*Math.PI/5+wk, -0.5*Math.PI+9*Math.PI/5+wk, false);	
}
function pentagon(canvas,x,y,r,winkel)
{
	var wk=winkel/180*Math.PI;
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+wk, -0.5*Math.PI+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+2*Math.PI/5+wk, -0.5*Math.PI+2*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+4*Math.PI/5+wk, -0.5*Math.PI+4*Math.PI/5+wk, false);		
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+6*Math.PI/5+wk, -0.5*Math.PI+6*Math.PI/5+wk, false);	
	canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+8*Math.PI/5+wk, -0.5*Math.PI+8*Math.PI/5+wk, false);	
}
function flocke(canvas,x,y,r,winkel)
{
	var wk=winkel/180*Math.PI;
	
	hexagon(canvas,x-0.2*r,y-0.2*r,r*0.4,r*0.4,winkel);
	canvas.closePath();
	canvas.stroke();

	canvas.beginPath();
	hexagon(canvas,x-0.4*r,y-0.4*r,r*0.8,r*0.8,winkel);
	canvas.closePath();
	canvas.stroke();

	canvas.moveTo(x,y);
	
	for(iFl=0;iFl<6;iFl++)
	{
		var wk2=iFl*Math.PI/3;
		canvas.arc( x,y,  Math.round(r), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.8), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.9), -0.5*Math.PI+0.1+wk+wk2, -0.5*Math.PI+0.1+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.8), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.9), -0.5*Math.PI-0.1+wk+wk2, -0.5*Math.PI-0.1+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.8), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);
		
		canvas.arc( x,y,  Math.round(r*0.6), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.9), -0.5*Math.PI+0.4+wk+wk2, -0.5*Math.PI+0.4+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.6), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.9), -0.5*Math.PI-0.4+wk+wk2, -0.5*Math.PI-0.4+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.6), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);
		
		canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.6), -0.5*Math.PI+0.4+wk+wk2, -0.5*Math.PI+0.4+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.6), -0.5*Math.PI-0.4+wk+wk2, -0.5*Math.PI-0.4+wk+wk2, false);	
		canvas.arc( x,y,  Math.round(r*0.4), -0.5*Math.PI+wk+wk2, -0.5*Math.PI+wk+wk2, false);
		canvas.closePath();
	}
}
