How this works

What the machine is doing, and why

← Back to the machine

This turns a picture into the movements a Brushograph makes: where to dip the brush, where to put it down, and the path to drag it along. What comes out is a G-code file you stream to the machine.

How a run works

  1. A machine config (.conf) describes the machine. Every option below it is generated from that file.
  2. You upload one thresholded image per tray, in the order given by color_order — or one colour photograph, which is split into CMYK and thresholded into those plates.
  3. Each image is turned into brush strokes directly. Every ink pixel is labelled with its distance to the nearest bare paper, and an outline inset by d is then simply the contour of “at least d from the edge”. A concentric fill is the same thing at half a stroke, one and a half, two and a half … so one distance transform yields the whole fill, and the rings are drawn in parallel because none depends on another.
  4. copicograf turns those strokes into brush choreography: dipping in the paint tray, shedding the drip it comes up with, washing in water, and re-inking every few hundred millimetres.

Notes

Themes

Six, in the footer, remembered by your browser: Default follows your system, Dark mode stays dark, Coconut mode is husk and palm, Pinkograph wears what the machine's own FluidNC dashboard wears, colours and all, with a sign that flickers like a neon tube, UwU is that sign with all the lights up, and 𝕭𝖗𝖚𝖘𝖈𝖍𝖔𝖑𝖔𝖌𝖎𝖘𝖈𝖍𝖊𝖗 𝕶𝖔𝖓𝖌𝖗𝖊𝖘𝖘 delivers a stark black-and-white print aesthetic set entirely in UniFraktur. Neither neon sign moves if you have asked your system to reduce motion. The machine plan and the G-code preview follow the theme too. The tray colours never do: a coloured mark always means paint in a cup, whatever the interface is wearing. Black paint is the exception, and only because on a dark paper it would be the paper: each theme says what its darkest ink looks like, so black still reads as paint.

← Back to the machine