xxxxxxxxxx
97
function setup() {
createCanvas(600, 600);
}
var x = [];
var y = [];
var xandy = [];
var points = [];
var mode = 0;
function draw() {
background(0);
//mode indicator
let modeS;
if (mode == 0) modeS = "MODE 1";
else if (mode == 1) modeS = "MODE 2";
else modeS = "MODE 3";
textSize(20);
fill(255);
noStroke();
text(modeS, 10, 30);
strokeWeight(5);
noFill();
if (mode == 0) {
//one D list
stroke("#FFCD00");
beginShape();
for (let i = 0; i < x.length; i++) {
vertex(x[i], y[i]);
}
endShape();
} else if (mode == 1) {
//two D list
stroke("#5DFF00");
beginShape();
for (let i = 0; i < xandy.length; i++) {
vertex(xandy[i][0], xandy[i][1]);
}
endShape();
} else {
//OOP
stroke("#00AAFF");
beginShape();
for (let i = 0; i < points.length; i++) {
vertex(points[i].x, points[i].y);
}
endShape();
}
}
function mouseMoved() {
//one D list
if (mode == 0) {
if (x.length < 100) {
x.push(mouseX);
y.push(mouseY);
} else {
x.shift();
y.shift();
}
} else if (mode == 1) {
//two D list
if (xandy.length < 100) {
xandy.push([mouseX, mouseY]);
} else {
xandy.shift();
}
} else {
//OOP
if (points.length < 100) {
points.push(new newP(mouseX, mouseY));
} else {
points.shift();
}
}
}
function keyPressed() {
if (keyCode === LEFT_ARROW) {
mode--;
mode = abs(mode) % 3;
} else if (keyCode === RIGHT_ARROW) {
mode++;
mode = mode % 3;
}
}
class newP {
constructor(xPos, yPos) {
this.x = xPos;
this.y = yPos;
}
}