Knihovna p5.js


p5.js je JavaScriptová knihovna zaměřená na kreativní kódování (creative coding). JVychází z jazyka Processing, ale je plně přizpůsobena pro webový prohlížeč.

Webová stránka: https://p5js.org/

Sketch – další název pro p5.js

Základní struktura kódu

Sketch se skládá z dvou hlavních funkcí:

function setup() {
  createCanvas(400, 400); // Vytvoří kreslící plátno o rozměrech 400x400 pixelů
}

function draw() {
  background(220);        // Vymaže plátno a nastaví barvu pozadí (šedá)
}

setup(): Spustí se pouze jednou na startu aplikace. Používá se pro počáteční vytvoření canvasu (kreslícího plátna), proměnných, načítání obrázků apod.

draw(): Vykresluje se po startu opakovaně, obvykle 60x za vteřinu. Slouží k vykreslování grafiky a ovládání objektů.

Příkaz draw() překresluje plátno podobně jako filmové snímky. Pokud má celé plátno vymazat, musíme do draw přidat příkaz pro tvorbu pozadí background(color).

Základní tvary

Máme řadu předpřipravených tvarů:

rect(x, y, sirka, vyska); // Obdélník 
ellipse(x, y, w, h); // Elipsa/Kruh 
line(x1, y1, x2, y2); // Úsečka mezi dvěma body

Styl a barvy

Nastaví vlastnosti pro všechny následující objekty, dokud nenastavíme vlastnosti jinak

fill(r, g, b) //Nastaví barvu výplněstroke(r, g, b) // Nastaví barvu obrysové čáry.
noFill() / noStroke() // Vypne výplň nebo obrys.
strokeWeight(px) // Nastaví tloušťku obrysu v pixelech.

K čemu se tato knihovna využívá?

  • generativní grafika/art – tvůrce naprogramuje sadu pravidel (algoritmus) a nechá počítač vygenerovat obraz. Často se využívá prvek náhody (random()) nebo matematické funkce
  • interaktivní webové stránky
  • vizuální instalace
  • datová vizualizace
  • tvorba 2D her
  • audio vizualizátory