Pixel Print Kit
Imagen de entrada, kit imprimible de salida. El script encuentra la cuadrícula de píxeles (o pixeliza una imagen normal), limpia la paleta, construye geometría estanca por color con manifold3d y verifica el resultado como lo haría un laminador.
Inicio rápido
SKILL_DIR = la carpeta que contiene este archivo (${CLAUDE_SKILL_DIR} cuando esté disponible). Entrecomilla las rutas.
python "$SKILL_DIR/scripts/pixelkit.py" sprite.png # llavero de 45 mm, una parte por color
python "$SKILL_DIR/scripts/pixelkit.py" sprite.png --product magnet --style swap # impresora de un solo cabezal
python "$SKILL_DIR/scripts/pixelkit.py" logo.png --pixels 32 --max-colors 4 --render # pixelizar un logotipo, añadir renders
Solo la primera vez: python -m pip install manifold3d numpy pillow (el script imprime esto si falta algo).
Salida en pixelkit-out/<nombre>/: stl/ (un archivo por color), <nombre>.3mf (un objeto, una parte por color, nombrada
01_black, 02_... en orden de ranura), guide.md (filamentos, ajustes, alturas de cambio de color), kit.json,
preview.png (verificación de color plano) y con --render: hero.jpg, top.jpg, turntable.mp4.
Elegir producto y estilo
| el usuario quiere | banderas |
|---|---|
| llavero (predeterminado) | --product keychain (45 mm, contorno de 2.2 mm, agujero para anillo de Ø4.2 mm) |
| imán para nevera | --product magnet (añade un hueco para un imán de 10x2 mm; cambia con --magnet 8x3) |
| posavasos | --product coaster (95 mm redondo) |
| placa de pared / letrero | --product plaque (120 mm rectángulo redondeado) |
| solo el arte | --product tile (sin contorno) |
| tiene AMS / multimaterial | --style ams (predeterminado): colores al ras, cambios solo en las capas superiores |
| un solo cabezal, sin AMS | --style swap: un cuerpo, cada color un escalón de altura; la guía lista la capa para cada cambio de filamento |
Útil: --size 60 (tamaño exterior final, mm) · --grid-gap 0.3 (ranuras entre píxeles, muy "pixel") ·
--raise 0.6 (ams: los colores sobresalen) · --shape silhouette|rect|round · --border 0 · --hole 0 ·
--hole-pos left|center|right · --base-color "#hex" (color del contorno) · --order "#a,#b,..." (swap: de abajo arriba) ·
--max-colors 4 (coincidir con las ranuras AMS del usuario) · --keep-bg (el fondo opaco es parte del arte).
Flujo de trabajo
- [ ] ejecutar pixelkit.py; leer la consola: tamaño de cuadrícula, colores -> filamentos, comprobaciones correctas
- [ ] mirar preview.png: ¿la paleta es correcta? (colores de anti-aliasing no deseados -> aumentar --merge o reducir --max-colors)
- [ ] tamaño de píxel >= 0.8 mm (aparece una advertencia si no -> mayor --size o menos --pixels)
- [ ] --render y leer hero.jpg / top.jpg antes de entregar
- [ ] informar al usuario: dimensiones, ranuras de filamento y, para swap, las alturas de cambio de color de guide.md
Las comprobaciones (open edges 0, overlap 0) deben pasar; el script termina con código 2 si no. Nunca entregues un kit defectuoso.
Reglas prácticas
- El arte pixelado real supera a las fotos pixeladas. Para un logotipo, 24-40 píxeles de ancho y 3-5 colores se ven mejor.
- Colores = filamentos. Mantén
--max-colorsigual o por debajo de las ranuras AMS del usuario; los nombres PLA sugeridos son las coincidencias más cercanas, así que pide al usuario que compare con sus bobinas. - Orden de intercambio: el más oscuro abajo funciona para la mayoría del arte (contorno primero). Los detalles claros arriba se mantienen nítidos.
- Píxeles pequeños: los llaveros de menos de 40 mm con 32+ píxeles obtienen características frágiles; aumenta el tamaño o simplifica el arte.
- Arte pixelado de juegos/marcas es propiedad intelectual de otros: está bien para impresiones personales, no para vender.
Cuándo leer qué
references/print-notes.md- pasos del laminador (Bambu/Orca/Prusa), tolerancias, imanes, solución de problemas.