0x2370…29b1

All memos sent from and to 0x2370…29b1.

#955 Click to evolvedata:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOC4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCA0IDQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQgNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I0FCQUFCNDt9DQo8L3N0eWxlPg0KPHJlY3Qgd2lkdGg9IjQiIGhlaWdodD0iNCIvPg0KPGcgaWQ9IkxheWVyXzEtMiI+DQoJPGc+DQoJCTxyZWN0IHg9IjEiIHk9IjEiIGNsYXNzPSJzdDAiIHdpZHRoPSIyIiBoZWlnaHQ9IjAuNCIvPg0KCQk8cmVjdCB4PSIxIiB5PSIxLjgiIGNsYXNzPSJzdDAiIHdpZHRoPSIyIiBoZWlnaHQ9IjAuNCIvPg0KCQk8cmVjdCB4PSIxIiB5PSIyLjYiIGNsYXNzPSJzdDAiIHdpZHRoPSIyIiBoZWlnaHQ9IjAuNCIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K fconst SIZE = 1000; const ART = 500; const OFFSET = 250; const COLS = 7; const ROWS = 9; const GAP = 7; let viewScale; function setup() { viewScale = min(min(windowWidth, windowHeight), SIZE) / SIZE; createCanvas(SIZE * viewScale, SIZE * viewScale); noLoop(); generate(); } function draw() {} function generate() { background(0); push(); scale(viewScale); translate(OFFSET, OFFSET); noStroke(); const cellW = (ART - GAP * (COLS - 1)) / COLS; const cellH = (ART - GAP * (ROWS - 1)) / ROWS; let used = []; for (let y = 0; y < ROWS; y++) { used[y] = []; for (let x = 0; x < COLS; x++) { used[y][x] = false; } } if (random() < 0.5) { const cutX = floor(random(COLS)); for (let y = 0; y < ROWS; y++) { if (random() < 0.72) { used[y][cutX] = true; } } } else { const cutY = floor(random(ROWS)); for (let x = 0; x < COLS; x++) { if (random() < 0.72) { used[cutY][x] = true; } } } for (let y = 0; y < ROWS; y++) { for (let x = 0; x < COLS; x++) { if (used[y][x]) continue; const dx = abs(x - (COLS - 1) / 2); const dy = abs(y - (ROWS - 1) / 2); const d = (dx / (COLS / 2) + dy / (ROWS / 2)) / 2; const emptyChance = map(d, 0, 1, 0.06, 0.26); if (random() < emptyChance) { used[y][x] = true; continue; } let w = 1; let h = 1; const type = random(); if (type < 0.38) { while (w < 3 && x + w < COLS && !used[y][x + w] && random() < 0.72) { w++; } } else if (type < 0.7) { while (h < 3 && y + h < ROWS && !used[y + h][x] && random() < 0.72) { h++; } } else if ( type < 0.84 && x + 1 < COLS && y + 1 < ROWS && !used[y][x + 1] && !used[y + 1][x] && !used[y + 1][x + 1] ) { w = 2; h = 2; } for (let yy = 0; yy < h; yy++) { for (let xx = 0; xx < w; xx++) { used[y + yy][x + xx] = true; } } const px = x * (cellW + GAP); const py = y * (cellH + GAP); const rw = cellW * w + GAP * (w - 1); const rh = cellH * h + GAP * (h - 1); fill(random(155, 255), random(155, 255), random(155, 255)); rect(px, py, rw, rh); } } pop(); } function mousePressed() { generate(); }
#954 Click to evolvedata:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOC4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCA0IDQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQgNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I0EwRTZERjt9DQo8L3N0eWxlPg0KPHJlY3Qgd2lkdGg9IjQiIGhlaWdodD0iNCIvPg0KPGcgaWQ9IkxheWVyXzEtMiI+DQoJPGc+DQoJCTxyZWN0IHg9IjEiIHk9IjEiIGNsYXNzPSJzdDAiIHdpZHRoPSIyIiBoZWlnaHQ9IjAuNCIvPg0KCQk8cmVjdCB4PSIxIiB5PSIxLjgiIGNsYXNzPSJzdDAiIHdpZHRoPSIyIiBoZWlnaHQ9IjAuNCIvPg0KCQk8cmVjdCB4PSIxIiB5PSIyLjYiIGNsYXNzPSJzdDAiIHdpZHRoPSIyIiBoZWlnaHQ9IjAuNCIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0Kconst SIZE = 1000; const ART = 500; const OFFSET = 250; const COLS = 5; const ROWS = 5; const CELL = ART / COLS; const FORMS = 120; let viewScale; function setup() { viewScale = min(min(windowWidth, windowHeight), SIZE) / SIZE; createCanvas(SIZE * viewScale, SIZE * viewScale); noLoop(); generate(); } function draw() {} function generate() { background(0); push(); scale(viewScale); const points = []; for (let y = 0; y <= ROWS; y++) { points[y] = []; for (let x = 0; x <= COLS; x++) { const edge = x === 0 || x === COLS || y === 0 || y === ROWS; points[y][x] = { x: OFFSET + x * CELL + (edge ? 0 : random(-CELL * 0.25, CELL * 0.25)), y: OFFSET + y * CELL + (edge ? 0 : random(-CELL * 0.25, CELL * 0.25)), }; } } for (let i = 0; i < FORMS; i++) { const x = floor(random(COLS)); const y = floor(random(ROWS)); const w = floor(random(1, 4)); const h = floor(random(1, 4)); if (x + w > COLS || y + h > ROWS) continue; const a = points[y][x]; const b = points[y][x + w]; const c = points[y + h][x + w]; const d = points[y + h][x]; fill(random(155, 255), random(155, 255), random(155, 255)); stroke(0); strokeWeight(2); beginShape(); vertex(a.x, a.y); vertex(b.x, b.y); vertex(c.x, c.y); vertex(d.x, d.y); endShape(CLOSE); } pop(); } function mousePressed() { generate(); }
1-50 of 244