» it.Tutorial Spreads 2
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

it.Tutorial Spreads 2

English | French | Russian | Japanese | Korean | Mandarin

The original english version of this page is newer and may contain information this translation does not have! Click here to view the english version.

Il tutorial che segue prevede che tu abbia fatto pratica col tutorial 4: Un IOBox per ogni Situazione (it.Tutorial IOBoxes).

Richiamo

Ora che abbiamo imparato come trattare con gli IOBoxes, approfondiamo la conoscenza su come i nodi si relazionino con gli spreads.

I due esempi ti danno un idea di cosa succeda dentro un nodo se ha a che fare con spreads con differenti SliceCounts.

Un nodo calcola innanzitutto gli SliceCounts di tutti gli spreads che riceve. Poi lo SliceCount maggiore in input viene usato per per lo SliceCount in output. Quindi il minore viene ridimensionato su quello maggiore: per fare questo le slices esistenti vengono ripetute.

Forse questo ti ha confuso, invece che chiarirti le idee, ma spesso spiegare cose semplici può essere difficile. Se sei arrivato/a fin qui, è probabile che tu abbia compreso a grandi linee la logica che sta dietro vvvv, ed il prossimo esempio ti aiuterà ulteriormente.

Gestire senza fatica Istanze Multiple

Supponiamo di avere un nodo RoundRect (GDI) propagato, (spreaded), linearmente lungo l'asse X e che tu voglia che il primo quadrato sia verde ed il secondo rosso.

Cosa faresti se avessi una griglia 5X5 di rettangoli? Forse connetteresti il nodo LinearSpread (Spreads) allo Y input del nodo RoundRect (GDI). Ma ecco cosa otterresti:

Il nodo RoundRect (GDI) si disegna per sole 5 volte, perché lo SliceCount maggiore è pari a 5. La prima coordinata X e la stessa della prima coordinata Y, e così per le altre coppie di coordinate X/Y, risultando in un ordine ascendente.

Naturalmente vvvv dispone di un nodo che ti consente di generare coordinate utili alla costruzione di una struttura a forma di griglia. Prova il nodo Cross (2D) come mostrato qui sotto.

Il nodo Cross (2D) produce in output 25 slices per la X e la Y, coprendo così ogni possibile combinazione delle input slices. Nota come sia possibile aggiustare la distanza tra i rettangoli attraverso il secondo input pin del nodo LinearSpread (Spreads).

Per ultimo aggiungiamo ancora un po' d'interazione. Diciamo che vogliamo conoscere la distanza che c'è tra ciascun rettangolo ed il cursore del mouse. Il nodo all'uopo è Points2Vector (2D) che restituisce la distanza tra due punti. Connetti il nodo come mostrato sotto ed indovina cosa significano quei 25 numeri nello IOBox in basso a destra.

Giusto, il nodo Points2Vector (2D) è così gentile da restituire le 25 distanze di ciascun punto della griglia dalle coordinate del punto in cui si trova il cursore. Adesso mappa queste distanza su una ragionevole lunghezza così che possano essere usate come dimensioni per il nodo RoundRect (GDI). Multimediale, no?

Ora regola lo SpreadCount del nodo LinearSpread (Spreads): non importa quanti rettangoli tu voglia gestire, la patch rimane semplice come la prima che hai costruito.

Ci sono ancora altre cose da imparare sugli spreads, ma per ora basta così. Ogni volta che avrai l'impressione che ti sfugga qualcosa, consulta le sezione del manuale sugli Spreads per ulteriori dettagli.

anonymous user login

Shoutbox

~21h ago

joreg: Reminder: #vvvv meetup in #berlin tomorrow, Tuesday 28: 16-berlin-vvvv-meetup

~3d ago

~7d ago

joreg: Know someone who should learn #vvvv? Send them to one of our intro workshops in #Berlin https://nodeforum.org/announcements/2020-series-of-2h-introduction-workshops-to-vvvv-gamma/ #creativecoding

~8d ago

udo2013: @sunep:had an idea how to restore midi-data by one lick and bring the sliders in original position.patch in forum."restore midi.."

~14d ago

sunep: @udo2013 make a forum post about and I can share my subpatch

~14d ago

sunep: @udo2013 I have myself dealt with that problem by using LTP (Value) in pickup mode

~18d ago

~18d ago