xxxxxxxxxx
42
var startX;
var startY;
var lineStart = false;
function setup() {
createCanvas(400, 400);
}
function draw() {
background(255, 200, 200)
if (lineStart) {
var lineLen = Math.sqrt(Math.pow((mouseY - startY), 2)
+ Math.pow((mouseX - startX), 2));
var numSeg = lineLen/10;
var xStep = (mouseX - startX) / numSeg;
var yStep = (mouseY - startY) / numSeg;
var lastX = startX;
var lastY = startY;
var currX, currY;
var currSeg = 0;
while (currSeg < numSeg) {
if (currSeg % 2 == 0) {
currX = lastX + xStep;
currY = lastY + yStep;
if (Math.abs(currX - startX) >= Math.abs(mouseX - startX)) {
currX = mouseX;
currY = mouseY;
}
line(lastX, lastY, currX, currY);
}
lastX += xStep;
lastY += yStep;
currSeg ++;
}
}
}
function mousePressed() {
startX = mouseX;
startY = mouseY;
lineStart = true;
}