Fonaments de Programació Visual amb p5.js: Algoritmes, Funcions i Variables

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en catalán con un tamaño de 297,31 KB

function setup () {createCanvas (amplitud, altura);

Algoritme → passos o regles lògiques que solucionen un problema

- Seqüència de passos o regles definides i ordenades

Descriu solució a un problema concret per a una tasca concreta

- Una sèrie lògica d'instruccions dissenyades per a un propòsit específic

- Exemple → procés per dibuixar un cercle centrat en un canvas

Programa

- Conjunt d'instruccions escrites en llenguatge de programació específic

- En executar, fa una tasca o resol un problema

- Implementació d’un algorisme que es pugui executar per aconseguir resultats concrets

- És l’sketch → el primer que apareix al p5.js i el que permet escriure codi en llenguatge de programació

Sentències

- Instruccions individuals que formen un sketch en p5.js

- Els enunciats simples acaben amb punt i coma

- Exemple → createCanvas (400, 400);

Funcions/mètodes

- Blocs de codi reutilitzables

- Es declaren mitjançant la paraula clau “function”

- Pot englobar sentències i altres elements

- Exemple → function draw () {...}

Setup

- Inicialitza el canvas i altres paràmetres

- S’executa només una vegada

- S’utilitza per a una configuració única

Draw

- S’executa repetidament (per defecte al voltant de 60 FPS)

- S’utilitza per a dibuixos continus i animacions

- Ideal per actualitzar i representar contingut dinàmic

Actualització del monitor → 60 Hz (interval de temps d’1/60 = 0,016 s entre cada fotograma)

- FlipBook → el draw no s’acaba mai → passa tan ràpid que no dona temps de veure-ho

Creant visuals (formes)

Conceptes bàsics de dibuixos

- Utilitzar la funció createCanvas() per configurar el canvas

- Utilitzar background() per definir el fons del canvas

Formes

- Rectangles, el·lipses, línies, arcs i punts

- Personalitzar formes amb paràmetres com la mida, la posició o el color

Paràmetres → utilitzats per passar informació o valors a una funció

- Arc (amplitud, altura, punt inicial, punt final) → angleMode(DEGREES);

Formes personalitzades

- function draw() { background(color); beginShape(); vertex(x, y); endShape(CLOSE); }

Creant visuals (color)

Color

- Per defecte els paràmetres s’interpreten com a RGB

- Es pot utilitzar com a paràmetre per personalitzar completament l’aspecte de les formes

Stroke

- stroke(color);

- strokeWeight(número)

- noStroke();

Fill

- fill(color)

noFill();


Abstracció

- Procés de simplificar sistemes complexos centrant-se en les característiques essencials

- Implica crear funcions o procediments per amagar detalls complexos i proporcionar una visió de nivell superior

Descomposició

- Procés de dividir un problema o tasca en parts més petites i manejables

- Implica dividir un programa en funcions o mòduls més petits

Abstracció i descomposició (modularització)

Beneficis

- Facilita la comprensió del codi

- Les funcions es poden reutilitzar en diferents contextos

- Més fàcil de modificar i mantenir

Variables, animacions i nombres aleatoris

Què és?

- Com un contenidor que pot emmagatzemar un sol element de dades (dependrà del tipus de variable)

- Cada variable té un tipus

- Segons el seu tipus pot contenir una mena de dades o una altra

Cada variable

- Té un nom (identificador) → no es pot modificar

- Té un tipus que determina → valors adequats + operacions aplicables

- Pot contenir un valor

Variables data types

 

DxJFXRIWmQQgAAAAAElFTkSuQmCC

- Si porta cometes → string

- Si no porta cometes → boolean

Inicialització de variables (són dinàmiques)

- Quan una variable conté un valor es diu que està inicialitzada (aquest valor pot ser un nombre enter o decimal o una altra cosa)

- Quan una variable no conté cap valor es diu que no està inicialitzada (non initialized)

La inicialització és l’operació de donar el primer valor a una variable

Assignació de variables

- L’operador d’assignació és = → var nomVariable = valorPerALaVariable;

- Significa “emmagatzemar en variable el valor de valorPerALaVariable”

- L’operador d’assignació = és destructiu

- Destrueix els continguts anteriors de la variable que s’assigna

- Es pot canviar dinàmicament el tipus d’una variable assignant-li un valor d’un tipus diferent

 
 

tIOUgP0ONb4AAAAASUVORK5CYII=


Nomenclatura de variables

- Comença amb una lletra minúscula

- El primer caràcter no pot ser un número

- Utilitza “Camel casing” → sense espais, signes de puntuació i posant en majúscula la primera lletra de cada paraula

- Evita els caràcters no anglesos

- Algunes paraules no són vàlides → class, color, else, false... X = x + speed; Y--; = y = y - 1;

4wsX7usAAAAASUVORK5CYII=

Objecte

- Crear un objecte i posar-hi a dins variables

- Contenidor de dades i funcionalitat, agrupant variables i funcions relacionades amb una entitat concreta

- Els objectes encapsulen dades i comportaments (variables) que estan relacionats promovent un codi net i organitzat (estructurat)

- Serveix perquè el codi es vegi molt més net

Random generator

- Funció que permet generar nombres pseudo aleatoris

- Dona variabilitat i impredictibilitat als seus “sketches”

- S'utilitza en → posicionament, mida, color, animació...

- nomVariable = random();

  • Program Structure and conditionals
  • Què és → disposició i organització dels elements del codi, garantint l’eficàcia, l’execució i llegibilitat
  • Inclou

- Inicialització

- Encapsulació

- “Setup” i “draw”

- Comentaris

- Abstracció i descomposició (modularització)

wF737POI7ocDAAAAABJRU5ErkJggg==

relational operators

wOG2Tb6CiefJwAAAABJRU5ErkJggg==

logic operators

Entradas relacionadas: