HELP
Realizzare un'applicazione
Informazioni preliminari- Le applicazioni girano con Chrome, Firefox, Opera, Safari ma non ancora con Internet Explorer...
- Il linguaggio di programmazione si presenta come un sottoinsieme di ProcessingOrg.
- Ha avuto un certo successo, tanto da avere dei progetti derivati: HasCanvas :: Processing.alt :: Studio Sketchpad.
- Alcune applicazioni che utilizzano immagini non girano neanche con Firefox... da sistemare.
Risorse necessarie
- crea una cartella dove salvare i i file di librerie e le tue applicazioni
- vai alla sezione download del sito ufficiale
- scarica il file più aggiornato della libreria e rinominalo come processing.js
- scarica il file init.js
Per ogni applicazione
- crea il file applicazione.html (nella cartella dove hai salvato i due file precedenti...)
- sviluppa l'applicazione funzionante utilizzando l'IDE di ProcessingOrg
- incolla il suo codice al posto dei ... ...
- sostituisci www e hhh con le dimensioni che hai fissato nella funzione size()
- esegui applicazione.html con Chrome, Firefox, Opera o Safari
Differenze importanti con Processing
Per chi conosce Processing ci sono alcuni aspetti da non trascurare- La divisione / in Javascript è sempre con la virgola...
Se il risultato deve essere intero allora arrotondalo con Math.round() oppure troncalo con (int) o parseInt() - Le risorse non sono di default nella cartella data
- Le risorse non sono nel file .jar, ma caricate con protocollo http
Firefox ha problemi nell'utilizzo immediato delle immagini: - Evita le funzioni get(), set(), point(), ... perché lente.
Usa pixels[] - I font funzionano solo con Firefox >=3
- Le funzionalità seguenti non sono ancora implementate
image(immagine)
immagine.width
immagine.height
...
immagine.width
immagine.height
...
| Sistema | delay() / import / popStyle() / private / pushStyle() / cursor() / focused / noCursor() / online / screen |
| Tipi di dati | long / HashMap / XMLElement / binary() / boolean() / hex() / unbinary() / unhex() / join() / match() / matchAll() / nfc() / nfp() / nfs() / split() / splitTokens() / trim() / append() / arrayCopy() / concat() / expand() / reverse() / shorten() / sort() / splice() / subset() |
| Primitive grafiche | PShape / quad() / bezierDetail() / bezierPoint() / bezierTangent() / curveDetail() / curvePoint() / curveTangent() / box() / sphere() / sphereDetail() / noSmooth() / strokeCap() / strokeJoin() / texture() / textureMode() / loadShape() / shape() / shapeMode() |
| Input/output | createInput() / loadBytes() / open() / selectFolder() / selectInput() / param() / status() |
| 3D | applyMatrix() / printMatrix() / resetMatrix() / rotateX() / rotateY() / rotateZ() |
| Luci e camere | ambientLight() / directionalLight() / lightFalloff() / lightSpecular() / lights() / noLights() / normal() / pointLight() / spotLight() / beginCamera() / camera() / endCamera() / frustum() / ortho() / perspective() / printCamera() / printProjection() / modelX() / modelY() / modelZ() / screenX() / screenY() / screenZ() / ambient() / emissive() / shininess() / specular() / blendColor() / brightness() / hue() / saturation() |
| Immagini | PImage / imageMode() / noTint() / requestImage() / blend() / copy() / filter() / PGraphics / hint() |
| Testo | createFont() / textAlign() / textLeading() / textMode() / textSize() / textWidth() / textAscent() / textDescent() |
| Matematica | PVector / exp() / log() / mag() / map() / acos() / asin() / atan() / tan() / noiseDetail() / noiseSeed() / randomSeed() |