El llenç digital
Descobreix com crear el teu primer llenç amb p5.js i dibuixa les primeres formes. Amb exemples, exercicis i reflexions per començar a pensar com un artista-programador.
Què és p5.js?
p5.js és una biblioteca de JavaScript creada per facilitar la programació visual al navegador. Va néixer amb l'objectiu de fer accessible la creació d'art digital, animacions i experiències interactives a tothom, independentment del seu nivell tècnic.
Amb molt poques línies de codi podem dibuixar formes, aplicar colors, respondre al ratolí, crear patrons i fins i tot utilitzar intel·ligència artificial. Nosaltres començarem des de zero: amb el llenç digital.
Les dues funcions màgiques
Tot programa en p5.js gira al voltant de dues funcions especials:
setup()– S'executa una sola vegada al començar. Aquí configurem el llenç (mida, color de fons).draw()– S'executa en bucle continu (normalment 60 vegades per segon). Dins seu dibuixem i actualitzem l'animació.
Exemple mínim: creem un llenç de 400×300 píxels i pintem el fons de gris clar.
function setup() {
createCanvas(400, 300); // amplada, alçada
background(220); // gris clar (0-255)
}
function draw() {
// per ara res
}
background(220) pinta tot el llenç d'un color. Si el poses a draw(), esborra el fotograma anterior, útil per animar.
El sistema de coordenades
El llenç digital funciona amb coordenades (x, y). L'origen (0,0) és la cantonada superior esquerra. L'eix X creix cap a la dreta i l'eix Y cap avall. És diferent de les matemàtiques, però fàcil de recordar si penses en com llegeixes un text.
(0,0) ──── X (+→) ────►
│
Y (+↓)
Per exemple, ellipse(200, 150, 80, 80) dibuixa un cercle al centre d'un llenç de 400×300.
Dibuixar formes bàsiques
p5.js ofereix funcions senzilles per a figures geomètriques. Les més importants al començament:
ellipse(x, y, amplada, alçada)
ellipse(100, 100, 120, 80);
rect(x, y, ample, alt)
rect(50, 60, 100, 80);
Per defecte, el·lipses i rectangles es posicionen pel seu centre (mode CENTER). Més endavant podrem canviar-ho.
Color, traç i farciment
Controlar l'aparença de les formes és essencial. Utilitzem:
fill(r, g, b, [alfa])– color d'ompliment (RGB, de 0 a 255).stroke(r, g, b)– color del contorn.strokeWeight(gruix)– amplada del traç en píxels.noFill()/noStroke()– desactiva farciment o contorn.background(r, g, b)– pinta el fons.
fill(255, 200, 0); // groc
stroke(200, 0, 200); // magenta
strokeWeight(4);
ellipse(100, 100, 100, 100);
fill(0, 150, 255, 150); // blau semitransparent
noStroke();
rect(160, 50, 100, 100);
L'ordre importa
Les formes es dibuixen una sobre l'altra segons l'ordre del codi. La darrera forma dibuixada queda al damunt.
fill(200,0,0); ellipse(70,70,100,100); // vermell al fons
fill(0,0,200); ellipse(130,130,100,100); // blau al mig
fill(0,200,0); ellipse(100,100,80,80); // verd al davant
Exemples creatius pas a pas
Apliquem tot l'après en petites composicions artístiques.
Cel estrellat
background(10,10,40); // cel fosc
fill(255,255,200); noStroke();
ellipse(50,40,4,4); // estrelles petites
ellipse(120,30,5,5);
...
fill(255,220,50);
ellipse(230,120,60,60); // lluna
fill(20,20,60);
rect(0,140,300,60); // terra
Robot geomètric
// Cap
fill(150); rect(60,20,80,60);
// Ulls
fill(255); ellipse(80,50,20,20);
...
// Boca
fill(255,0,0); rect(85,80,30,10);
// Cames
rect(40,100,30,60);
rect(130,100,30,60);
Exercicis per practicar
- Dibuixa un paisatge senzill: cel blau, sol groc, gespa verda i una casa rectangular amb teulada triangular (pista: el triangle es fa amb
triangle(x1,y1,x2,y2,x3,y3)). - Crea una composició amb almenys 5 rectangles i 5 el·lipses, jugant amb la transparència (
fill(r,g,b,alfa)). - Dibuixa un semàfor complet: tres cercles de colors (vermell, groc, verd) dins d'un rectangle gris fosc.
- Fes un retrat abstracte utilitzant només formes bàsiques (cara, ulls, nas, boca).
- Repte artístic: reprodueix una obra de Piet Mondrian (rectangles negres, blancs, vermells, grocs i blaus) al teu llenç.
Reflexió artística
El llenç digital és el teu espai de creació. Avui has après a controlar els elements més bàsics: mida, posició i color. Cada decisió que prens (on col·loques una forma, quin gruix de traç tries, si superposes transparències) és un acte creatiu. Pensa: què vull expressar amb aquestes formes? Encara que siguin figures simples, la combinació de colors i la composició poden transmetre emocions. Guarda els teus esbossos, perquè en els propers temes els animarem i els farem interactius.
Mini-projecte del Tema 1
Crea una "Postal digital" utilitzant exclusivament formes bàsiques, colors i ordre de capes. Ha d'incloure:
- Un fons de color sòlid o degradat (diversos rectangles).
- Almenys 3 elements principals (sol, muntanyes, arbres, edificis, persones simplificades...).
- Joc amb transparències i contorns.
- Un títol o signatura feta amb formes (encara no fem servir text).
Envia el teu codi o captura de pantalla. Al pròxim tema l'animarem!