Files
p5-wallplotter/examples/zickzack/sketch.js
T
2026-08-16 13:50:49 +02:00

56 lines
1020 B
JavaScript

let wp;
let area = 120;
function setup() {
const canvas = createCanvas(windowWidth, windowHeight);
canvas.parent('sketch-host');
wp = new WallPlotter({
penUpGcode: 'M280 P0 S120',
penDownGcode: 'M280 P0 S30',
penUpDelayMs: 250,
penDownDelayMs: 150,
});
wp.setSpeed(10000, 10000);
wp.setTimingMultiplier(1); // tune if machine is slower than speed estimate, the higher the slower
wp.enableKeyInputs();
wp.enablePlotButtons();
}
function draw() {
background(28, 28, 32);
wp.showInfos();
}
function windowResized() {
resizeCanvas(windowWidth, windowHeight);
}
async function plot() {
await drawArt(false);
}
async function test() {
await drawArt(true);
}
async function drawArt(testOnly) {
wp.startPath();
wp.move(-area, -area);
//wp.wait(1000 * 10);
let step = area / 2;
for (let y = -area; y <= area; y+=step){
for (let x = -area; x <= area; x+=step){
wp.move(x+step, y);
wp.draw(x, y+step);
}
}
await wp.runPath(testOnly);
}