Condividi tramite


Effetto di turbolenza

Usare l'effetto di turbolenza per generare una bitmap in base alla funzione di rumore Perlin.

L'effetto della turbolenza non ha un'immagine di input.

ClSID per questo effetto è CLSID_D2D1Turbulence.

Immagine di esempio

screenshot dell'esempio di effetto che mostra l'output dell'effetto di turbolenza.

L'effetto Turbulence calcola la somma di una o più ottave della funzione di rumore Perlin. Il rumore perlin è una funzione pseudo-casuale il cui valore dipende dalla frequenza, dalla posizione e dal valore di inizializzazione. L'effetto genera i valori RGBA usando una di queste equazioni.

Se si seleziona la modalità D2D1_TURBULENCE_NOISE_FRACTAL_SUM rumore, l'effetto usa questa equazione.

Screenshot che mostra la funzione di turbolenza usata per generare una bitmap.

Se si seleziona la modalità D2D1_TURBULENCE_NOISE_TURBULENCE rumore, l'effetto usa questa equazione.

la funzione di turbolenza usata per generare una bitmap.

Nota

La PerlinNoise funzione ha un intervallo di [-1, 1].

Questo effetto restituisce i valori pixel in alfa premultiplied.

Proprietà dell'effetto

Enumerazione nome visualizzato e indice Descrizione
Offset
D2D1_TURBULENCE_PROP_OFFSET
Le coordinate in cui viene generato l'output della turbolenza.
L'algoritmo usato per generare il rumore perlin dipende dalla posizione, quindi un offset diverso genera un output diverso. Questa proprietà non è associata e le unità vengono specificate in INDIRIZZI DIP
Nota: L'offset non ha lo stesso effetto di una traduzione perché l'output della funzione di rumore è infinito e la funzione verrà eseguito il wrapping intorno al riquadro.
Il tipo è D2D1_VECTOR_2F.
Il valore predefinito è {0.0f, 0.0f}.
Dimensione
D2D1_TURBULENCE_PROP_SIZE
Dimensione dell'output della turbolenza.
Questa proprietà non è associata e le unità vengono specificate in INDIRIZZI DIP

Il tipo è D2D1_VECTOR_2F.
Il valore predefinito è {0.0f, 0.0f}.
BaseFrequency
D2D1_TURBULENCE_PROP_BASE_FREQUENCY
Le frequenze di base nella direzione X e Y. Questa proprietà è un float e deve essere maggiore di 0. Le unità vengono specificate in 1/DIP.
Un valore pari a 1 (1/DIP) per la frequenza di base comporta il completamento di un intero ciclo tra due pixel. L'interpolazione di facilità per questi pixel comporta pixel completamente casuali, poiché non esiste alcuna correlazione tra i pixel.
Valore pari a 0,1(1/DIP) per la frequenza di base, la funzione rumore Perlin ripete ogni 10 DIP. Ciò comporta la correlazione tra pixel e l'effetto tipico della turbolenza è visibile.
Il tipo è D2D1_VECTOR_2F.
Il valore predefinito è {0.01f, 0.01f}.
NumOctaves
D2D1_TURBULENCE_PROP_NUM_OCTAVES
Numero di ottafi per la funzione di rumore. Questa proprietà è un UINT32 e deve essere maggiore di 0.
Il tipo è UINT32.
Il valore predefinito è 1.
Seed
D2D1_TURBULENCE_PROP_SEED
Inizializzazione per il generatore pseudo casuale. Questa proprietà non è associata.
Il tipo è UINT32.
Il valore predefinito è 0.
Rumore
D2D1_TURBULENCE_PROP_NOISE
Modalità rumore di turbolenza. Questa proprietà può essere la somma frattale o la turbolenza. Indica se generare una bitmap in base al rumore Fractal o alla funzione Turbulence. Per altre informazioni, vedere Modalità rumore .
Il tipo è D2D1_TURBULENCE_NOISE.
Il valore predefinito è D2D1_TURBULENCE_NOISE_FRACTAL_SUM.
Impazzabile
D2D1_TURBULENCE_PROP_STITCHABLE
Attiva o disattiva il punto. La frequenza di base viene modificata in modo che la bitmap di output possa essere ricucita. Questo è utile se si desidera riquadriare più copie dell'output dell'effetto di turbolenza.
  • True La bitmap di output può essere riquadri (usando l'effetto riquadro) senza l'aspetto di seams. La frequenza di base viene modificata in modo che la bitmap di output possa essere ricucita.
  • False La frequenza di base non viene modificata, quindi i riquadri possono essere visualizzati tra i riquadri se la bitmap viene riquadri.

Il tipo è BOOL.
Il valore predefinito è FALSE.

Modalità rumore

Enumerazione Descrizione
D2D1_TURBULENCE_NOISE_FRACTAL_SUM Calcola una somma delle ottafie, spostando l'intervallo di output da [-1, 1], a [0, 1].
D2D1_TURBULENCE_NOISE_TURBULENCE Calcola una somma del valore assoluto di ogni ottava.

Nota

Nessuna modalità contiene un blocco esplicito dei valori di output.

Bitmap di output

Questo effetto genera una bitmap di dimensioni logicamente infinite.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 e Platform Update per Windows 7 [app desktop | App di Windows Store]
Server minimo supportato Windows 8 e Platform Update per Windows 7 [app desktop | App di Windows Store]
Intestazione d2d1effects.h
Libreria d2d1.lib, dxguid.lib

ID2D1Effect