Zielony Smok - logo witryny

Spirala Archimedesa

Krzywa określona przez równanie parametryczne:

x=aφcosφ

y=aφsinφ

Zawartość możesz zobaczyć w
przeglądarce obsługującej element <canvas>
z kontekstem "2d"

Listing

var spiralaArchimedesa = function(dlugosc, ciasnosc, liczbaPunktow, strokeStyle) {
	ctx.save();
	ctx.beginPath();
	ctx.strokeStyle = strokeStyle;
	ctx.translate(w / 2, h / 2);
	// ctx.scale(1, -1);
	var x1 = 0;
	var y1 = 0;
	var x2;
	var y2;
	for ( var i = 0; i < liczbaPunktow; i++) {
		var t = i * dlugosc * Math.PI / liczbaPunktow;
		x2 = ciasnosc * t * Math.cos(t);
		y2 = ciasnosc * t * Math.sin(t);
		ctx.moveTo(Math.floor(x1), Math.floor(y1));
		ctx.lineTo(Math.floor(x2), Math.floor(y2));
		x1 = x2;
		y1 = y2;
	}
	ctx.stroke();
	ctx.restore();
};
	var cv = document.getElementById("canvas");
	var ctx = cv.getContext("2d");
	var w = cv.width;
	var h = cv.height;
	spiralaArchimedesa(15, 2, 2000, "red");