21 lines
768 B
JavaScript
21 lines
768 B
JavaScript
import { keySheet } from './src/lib/core/mask.js';
|
|
import { sampleWidthsPx } from './src/lib/core/measure.js';
|
|
const W = 200, H = 150;
|
|
function slabPhoto(slabW, slabH, ox, oy) {
|
|
const data = new Uint8ClampedArray(W * H * 4);
|
|
for (let y = 0; y < H; y++)
|
|
for (let x = 0; x < W; x++) {
|
|
const i = (y * W + x) * 4;
|
|
const inSlab = x >= ox && x < ox + slabW && y >= oy && y < oy + slabH;
|
|
if (inSlab) { data[i] = 139; data[i + 1] = 90; data[i + 2] = 43; }
|
|
else { data[i] = 34; data[i + 1] = 139; data[i + 2] = 34; }
|
|
data[i + 3] = 255;
|
|
}
|
|
return data;
|
|
}
|
|
const d = slabPhoto(10, 10, 0, 0);
|
|
const m = keySheet(d, { sheet: 'green', sensitivity: 50 });
|
|
let kept = 0;
|
|
for (let i = 0; i < m.length; i++) kept += m[i];
|
|
console.log('kept:', kept, 'of', m.length);
|