Arte Generativa

( generative art )

Onda Elettronica

Valutazione attuale: 0 / 5

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva
 

Questo Programma, che ho scritto per studio e ricerca, rientra nella categoria della "Generative Art" ovvero algoritmi scritti per generare immagini nelle arti visive digitali.

Potete usarlo in modo interattivo nel riquadro sottostante.

Nel seguito del post, una rapida guida all'uso del programma e la descrizione del modello matematico e del codice.

Rapida Guida agli oggetti interattivi del programma: 

Nota: gli oggetti mostrano la loro icona (rappresentata da una ellisse e una descrizione) quando passate il mouse sopra e la nascondono quando spostare gli oggetti o osservate il disegno creato.

L'oggetto principale è il generatore di Onde, appare al centro della finestra ma potete spostarlo con il mouse. E' facile vederlo perché è il primo oggetto che emette le onde colorate. 

Esistono altri due oggetti che non emettono onde ma le "distorcono". Li ho chiamati "Lente Gravita" che genera un effetto di lente gravitazionale in quanto attira i raggi sul bordo dell'area e li repelle nel centro, e L'altro "Attrattore" che attira verso il centro i raggi. Nelle figure seguenti li potete vedere quando ci passate sopra con il mouse, si trovano nella finestra del programma e li riconoscerete per l'effetto che generano sui raggi. Con il Mouse potere strascinarli nella finestra e osservare l'effetto che hanno sull'immagine.

 Se li sovrapponete i loro effetti si contrastano creando disegni differenti.

 Versione con un ulteriore oggetto: "Repulsore sui bordi" lo potete lanciare da qui: istanza "ONDA ELETTRONICA CON BORDI A 100 PIXEL"

Descrizione Algoritmo.

Il modello matematico implementato è molto semplice. L'idea è di generare un raggio colorato dalla posizione x,y che si proietta verso una direzione definita da un angolo 'a'.

Tale angolo viene generato in modo continui da 0 a 4PI e il raggio invece di essere una semplice linea connessa da due vertici e una curva connessa da un certo numero di vertici che si animano seguendo il seguente modello matematico:

Ogni vertice è spostato nel vettore direzione definito da 'a' di un certo 'step' e shiftato in funzione di un valore di "phase" che viene generato in modo "casuale morbido" ovvero usando il metodo di Perlin Noise.

I valori di colore sono allocati usando il modello "luminosita,saturazione,blillantezza,alfa" e varinao in funzione della phase. Le classi che ho scritto per questo programma sono le seguenti:

public Class EmettitoreRaggiElettronici

public Class RaggioElettronico

public abstract class Attrattore 

public class MouseAttractor extends Attrattore

public class LenteGravitaAttractor extends MouseAttractor

public class InverseAttractorFrameBorder extends Attrattore

Questo attrattore è in realtà un repulsore ovvero un attrattore all'inverso e lo uso per controllare che i raggi restino dentor i limiti della finestra del programma.

Nell'istanza precedento non l'ho abilitata ma potete vederla in esecuzione in questa istanza "ONDA ELETTRONICA CON BORDI A 100 PIXEL". Provate a spostare l'emettitore verso i bordi per notare che i raggi restano entro i 100 pixel dai bordi e cambiano la loro phase diventando simili a stringhe di plasma elettrico.

© 2018 sito prototipale studio di GiuseppeGi