Turbulenseffekt
Använd turbulenseffekten för att generera en bitmapp baserat på funktionen Perlin-brus.
Turbulenseffekten har ingen indatabild.
CLSID för den här effekten är CLSID_D2D1Turbulence.
- Exempelbild
- egenskaper för effekt
- Bruslägen
- bitmapp för utdata
- Krav
- Relaterade ämnen
Exempelbild
skärmbild av
Turbulence-effekten beräknar summan av en eller flera oktaver av Perlin-brusfunktionen. Perlinbrus är en pseudo-slumpmässig funktion vars värde beror på frekvensen, positionen och frövärdet. Effekten genererar RGBA-värdena med någon av dessa ekvationer.
Om du väljer D2D1_TURBULENCE_NOISE_FRACTAL_SUM brusläge använder effekten den här ekvationen.
Om du väljer D2D1_TURBULENCE_NOISE_TURBULENCE brusläge använder effekten den här ekvationen.
Not
Funktionen PerlinNoise
har ett intervall på [-1, 1].
Den här effekten matar ut pixelvärden i premultiplied alfa.
Effektegenskaper
Visningsnamn och indexuppräkning | Beskrivning |
---|---|
Uppväga D2D1_TURBULENCE_PROP_OFFSET |
Koordinaterna där turbulensens utdata genereras. Algoritmen som används för att generera Perlin-bruset är positionsberoende, så en annan förskjutning resulterar i en annan utdata. Den här egenskapen är inte begränsad och enheterna anges i DIP:er Obs! Förskjutningen har inte samma effekt som en översättning eftersom brusfunktionens utdata är oändliga och funktionen omsluter panelen. Typen är D2D1_VECTOR_2F. Standardvärdet är {0.0f, 0.0f}. |
Storlek D2D1_TURBULENCE_PROP_SIZE |
Storleken på turbulensens utdata. Den här egenskapen är inte begränsad och enheterna anges i DIP:er Typen är D2D1_VECTOR_2F. Standardvärdet är {0.0f, 0.0f}. |
BaseFrequency D2D1_TURBULENCE_PROP_BASE_FREQUENCY |
Basfrekvenserna i X- och Y-riktningen. Den här egenskapen är en flyttal och måste vara större än 0. Enheterna anges i 1/DIP:er. Ett värde på 1 (1/DIPs) för basfrekvensen resulterar i att Perlin-bruset slutför en hel cykel mellan två bildpunkter. Den enkla interpoleringen för dessa bildpunkter resulterar i helt slumpmässiga pixlar, eftersom det inte finns någon korrelation mellan bildpunkterna. Ett värde på 0,1(1/DIPs) för basfrekvensen, perlinbrusfunktionen upprepar var 10:e DIP:er. Detta resulterar i korrelation mellan pixlar och den typiska turbulenseffekten är synlig. Typen är D2D1_VECTOR_2F. Standardvärdet är {0.01f, 0.01f}. |
NumOctaves D2D1_TURBULENCE_PROP_NUM_OCTAVES |
Antalet oktaver för brusfunktionen. Den här egenskapen är en UINT32 och måste vara större än 0. Typen är UINT32. Standardvärdet är 1. |
Frö D2D1_TURBULENCE_PROP_SEED |
Fröet för pseudo slumpgeneratorn. Den här egenskapen är obundna. Typen är UINT32. Standardvärdet är 0. |
Buller D2D1_TURBULENCE_PROP_NOISE |
Brusläget för turbulens. Den här egenskapen kan vara antingen fraktal summa eller turbulens. Anger om du vill generera en bitmapp baserat på fractalbrus eller funktionen Turbulence. Mer information finns i bruslägen. Typen är D2D1_TURBULENCE_NOISE. Standardvärdet är D2D1_TURBULENCE_NOISE_FRACTAL_SUM. |
Stygnbar D2D1_TURBULENCE_PROP_STITCHABLE |
Sätter på eller av sömmar. Basfrekvensen justeras så att utdatabitmappen kan sys. Det här är användbart om du vill panela flera kopior av turbulenseffektens utdata.
Typen är BOOL. Standardvärdet är FALSE. |
Bruslägen
Uppräkning | Beskrivning |
---|---|
D2D1_TURBULENCE_NOISE_FRACTAL_SUM | Beräknar en summa av oktaverna och flyttar utdataintervallet från [-1, 1] till [0, 1]. |
D2D1_TURBULENCE_NOISE_TURBULENCE | Beräknar en summa av det absoluta värdet för varje oktav. |
Not
Inget av lägena innehåller en explicit klämma av utdatavärdena.
Utdatabitmapp
Den här effekten genererar en bitmapp i logiskt oändlig storlek.
Krav
Krav | Värde |
---|---|
Lägsta klient som stöds | Windows 8 och Platform Update för Windows 7 [skrivbordsappar | Windows Store-appar] |
Lägsta server som stöds | Windows 8 och Platform Update för Windows 7 [skrivbordsappar | Windows Store-appar] |
Rubrik | d2d1effects.h |
Bibliotek | d2d1.lib, dxguid.lib |