Gozar,
точность расчётов
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
</head>
<body>
<canvas id="canvas" width="1000" height="1000" style="border: 1px solid #000"></canvas>
<script>
function setPixel (x, y) {
ctx.beginPath();
ctx.moveTo(x,y);
ctx.arc(x, y, 1, 0, Math.PI*2, true);
ctx.fill();
ctx.closePath();
}
var canvas = document.getElementById('canvas'),
ctx = canvas.getContext('2d');
ctx.fillStyle = 'rgba(0,0,0,1)';
function ronyLine (x1, y1, x2, y2) {
var time = Math.max( Math.abs(x1 - x2), Math.abs(y1 - y2)), //оптимальная точность
a, b, delta, i;
time = 1000// точность для маньяков
for (i=0; i<time; i++) {
delta = i/time;
a = delta*(x2 - x1) + x1;
b = delta*(y2 - y1) + y1;
setPixel(a,b)
//setPixel(Math.round(a),Math.round(b)) //по желанию
}
}
for(var i=0;i<1000;i+=10) {
ronyLine(10, 10, i, 200);
}
</script>
</body>
</html>