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

fr.Tutorial SpreadsII

English | Russian | Japanese | Italian | 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.

Le tutorial fait suite au tutorial IV: IOBoxes.
(...et désolé pour la piètre qualité des jpegs)

Rappel

Maintenant que nous avons vu comment manipuler les IOBoxes, jetons un autre coup d'oeil à la manière dont les nodes gèrent les spreads.

Ces deux exemples vous donnent une idée de ce qui arrive à l'intérieur d'une node si elle a affaire à des spreads de tailles différentes. Notez que les deux premiers graphs ont le même résultat, ainsi que les deux derniers.

Une node "regarde" d'abord le nombre de slices de tous les spreads qu'elle reçoit en entrée. Le nombre de slices de la spread la plus grande est appliqué à la sortie. Puis les spreads plus petits sont redimensionnées pour atteindre ce nombre. Si la node doit rajouter de nouvelles slices, elle répètera simplement celles déjà existantes.

Si ce dernier paragraphe vous a plus embrouillé qu'aidé à comprendre le sujet, et bien... pas grave. Souvent, les choses les plus simples sont les plus durs à expliquer. Si vous avez tenu le coup jusqu'ici, alors vous devriez avoir déjà compris l'essentiel, même si vous n'en cernez pas tous les aspects. Jetons simplement un coup d'oeil rapide à l'exemple suivant.

La manipulation d'instances multiples sans effort

Supposez que vous ayez un RoundRect (GDI) avec une spread linéaire connectée à sa coordonnée X, et maintenant vous voulez que chaque premier rectangle soit dessiné en vert et chaque second rectangle en rouge.

Et maintenant, comment feriez-vous pour avoir une grille de 5x5 rectangles? Votre premier réflexe serait de connecter le LinearSpread (Spreads) à la coordonnée Y du RoundRect (GDI). Regardez ce que ça donne:

Le RoundRect (GDI) ne s'affiche que cinq fois car le nombre maximum de slices en entrée est toujours de cinq. La première coordonnée en X est la même que la première coordonnée en Y, la seconde en X est la même que la seconde en Y et ainsi de suite, ce qui a pour résultat un ordre ascendant.

Il existe (merci vvvv!) une node qui tombe à pic pour générer les coordonnées d'une structure en grille. Essayez la node Cross (2D) comme montrée ci-dessous.

Cross (2D) retourne 25 slices pour X et Y, chacune représentant chaque combinaison possible des slices en entrées. Remarquez également que la distance entre les rectangles peut désormais être ajustée grâce au second pin d'entrée du LinearSpread (Spreads).

Enfin, ajoutons un peu d'interaction à tout ça. Disons que nous voulons connaître l'écart entre chaque rectangle et le pointeur de la souris. Encore une fois, il existe une node à cet effet: Points2Vector (2D) vous donne la distance entre deux points. Connectez la node comme montré ci-dessous, et devinez l'utilité des 25 nombres dans l'IOBox en bas à droite.

OK. Points2Vector (2D) est très ordonné et nous renvoie les 25 distances entre chaque point de la grille et les coordonnées de la souris.
A présent, mappez ces distances selon une longueur raisonnable de manière à pouvoir les utiliser en tant que tailles pour les RoundRect (GDI). Appeler ça multimédia.

Ajustez le Spreadcount du LinearSpread (Spreads) et vous verrez: peu importe combien de rectangles vous utilisez, le patch reste aussi simple qu'au premier jour!

Il y a beaucoup d'autres choses à savoir au sujet des spreads, mais pour le moment on vous laisse souffler... Dés que vous sentez qu'il vous manque des informations, parcourez la section "Manuel" pour plus de détails.

anonymous user login

Shoutbox

~14h ago

fleg: This Tuesday, Cologne: exhibition opening of "interwoven", textile disinformation patterns created with vvvv. https://fleg.de/news/exhibition-interwoven

~14d ago

manuelgonzalvez: Assimp nodes all broken afted Win Update w/exception "COM object that has been separated from its underlying RCW(...)"

~14d ago

manuelgonzalvez: @levi thanks would love to! anyway managed to get something similar working based on forum search and anthokio's patches.

~15d ago

levi: @ravasquez thanks. 31.2 x86 verrion worked. @manuelgonzalvez i have a dx11 projectTexture if u a want.

~16d ago

manuelgonzalvez: Anyone has a dx11 port of "projectedTexture" dx9 fx for projection mapping?

~16d ago

manuelgonzalvez: Anyone has a dx11 port of "projectedTexture" dx9 fx for projection mapping?

~16d ago

ravazquez: @levi not sure bout the ImagePack, but I believe VL.OpenCV should give you the same tools and should work with beta just fine

~17d ago

levi: anyone knows of a VVVVpacks.image that works for elliot's projector calibration patches?x64,dx11. always crashes v4 on solve.

~24d ago

Lorenz: VJing with GIFS: https://lorenzpotthast.de/gifjockey/ A fun little side project, that I first prototyped in v4 and now turned web-based ;)

~1mth ago

schlonzo: finally fixed in 4.8 nice1