Delen via


Turbulence effect

Gebruik het turbulence-effect om een bitmap te genereren op basis van de Perlin-ruisfunctie.

Het turbulence-effect heeft geen invoerafbeelding.

De CLSID voor dit effect is CLSID_D2D1Turbulence.

Voorbeeldafbeelding

voorbeeldschermopname van effect met de uitvoer van het turbulence-effect.

Het Turbulence-effect berekent de som van een of meer octaven van de Perlin-ruisfunctie. Perlin-ruis is een pseudo-willekeurige functie waarvan de waarde afhankelijk is van de frequentie, positie en seed-waarde. Het effect genereert de RGBA-waarden met behulp van een van deze vergelijkingen.

Als u de D2D1_TURBULENCE_NOISE_FRACTAL_SUM ruismodus selecteert, wordt deze vergelijking gebruikt.

Schermopname van de turbulence-functie die wordt gebruikt om een bitmap te genereren.

Als u de D2D1_TURBULENCE_NOISE_TURBULENCE ruismodus selecteert, wordt deze vergelijking gebruikt.

de turbulentiefunctie die wordt gebruikt om een bitmap te genereren.

Notitie

De functie PerlinNoise heeft een bereik van [-1, 1].

Met dit effect worden pixelwaarden in vooraf gedefinieerde alfa uitgevoerd.

Effecteigenschappen

Weergavenaam en indexenumeratie Beschrijving
Afstand
D2D1_TURBULENCE_PROP_OFFSET
De coördinaten waar de turbulence-uitvoer wordt gegenereerd.
Het algoritme dat wordt gebruikt om de Perlin-ruis te genereren, is afhankelijk van positie, dus een andere offset resulteert in een andere uitvoer. Deze eigenschap is niet gebonden en de eenheden worden opgegeven in DIPs
Opmerking: De offset heeft niet hetzelfde effect als een vertaling omdat de uitvoer van de ruisfunctie oneindig is en de functie rond de tegel loopt.
Het type is D2D1_VECTOR_2F.
De standaardwaarde is {0.0f, 0.0f}.
Grootte
D2D1_TURBULENCE_PROP_SIZE
De grootte van de uitvoer van de turbulence.
Deze eigenschap is niet gebonden en de eenheden worden opgegeven in DIPs

Het type is D2D1_VECTOR_2F.
De standaardwaarde is {0.0f, 0.0f}.
BaseFrequency
D2D1_TURBULENCE_PROP_BASE_FREQUENCY
De basisfrequenties in de X- en Y-richting. Deze eigenschap is een float en moet groter zijn dan 0. De eenheden worden opgegeven in 1/DIPs.
Een waarde van 1 (1/DIPs) voor de basisfrequentie resulteert in de Perlin-ruis die een volledige cyclus tussen twee pixels voltooit. Het gemakinterpolatie voor deze pixels resulteert in volledig willekeurige pixels, omdat er geen correlatie tussen de pixels is.
Een waarde van 0,1(1/DIPs) voor de basisfrequentie, herhaalt de perlinruisfunctie elke 10 DIPs. Dit resulteert in correlatie tussen pixels en het typische turbulence-effect.
Het type is D2D1_VECTOR_2F.
De standaardwaarde is {0.01f, 0,01f}.
NumOctaves
D2D1_TURBULENCE_PROP_NUM_OCTAVES
Het aantal octaven voor de ruisfunctie. Deze eigenschap is een UINT32 en moet groter zijn dan 0.
Het type is UINT32.
De standaardwaarde is 1.
Zaad
D2D1_TURBULENCE_PROP_SEED
Het zaad voor de pseudo-willekeurige generator. Deze eigenschap is niet gebonden.
Het type is UINT32.
De standaardwaarde is 0.
Lawaai
D2D1_TURBULENCE_PROP_NOISE
De ruismodus van de turbulence. Deze eigenschap kan fractale som of turbulencezijn. Geeft aan of een bitmap moet worden gegenereerd op basis van Fractal Noise of de Turbulence-functie. Zie Ruismodi voor meer informatie.
Het type is D2D1_TURBULENCE_NOISE.
De standaardwaarde is D2D1_TURBULENCE_NOISE_FRACTAL_SUM.
Steekbaar
D2D1_TURBULENCE_PROP_STITCHABLE
Hiermee schakelt u het stikken in of uit. De basisfrequentie wordt aangepast, zodat de uitvoer bitmap kan worden genaaid. Dit is handig als u meerdere exemplaren van de uitvoer van het turbulence-effect wilt tegelen.
  • True De uitvoer bitmap kan worden betegeld (met behulp van het tegeleffect) zonder het uiterlijk van naden. De basisfrequentie wordt aangepast, zodat de uitvoer bitmap kan worden genaaid.
  • Onwaar De basisfrequentie wordt niet aangepast, dus er kunnen naden tussen tegels worden weergegeven als de bitmap is betegeld.

Het type is BOOL.
De standaardwaarde is FALSE.

Ruismodi

Opsomming Beschrijving
D2D1_TURBULENCE_NOISE_FRACTAL_SUM Berekent een som van de octaven, waarbij het uitvoerbereik wordt verplaatst van [-1, 1], tot [0, 1].
D2D1_TURBULENCE_NOISE_TURBULENCE Berekent een som van de absolute waarde van elk octaaf.

Notitie

Geen van beide modus bevat een expliciete klem van de uitvoerwaarden.

Uitvoer bitmap

Dit effect genereert een logisch oneindig formaat bitmap.

Eisen

Eis Waarde
Minimaal ondersteunde client Windows 8 en Platform Update voor Windows 7 [desktop-apps | Windows Store-apps]
Minimaal ondersteunde server Windows 8 en Platform Update voor Windows 7 [desktop-apps | Windows Store-apps]
Rubriek d2d1effects.h
Bibliotheek d2d1.lib, dxguid.lib

ID2D1Effect-