Partager via


Effet de turbulence

Utilisez l’effet de turbulence pour générer une bitmap basée sur la fonction de bruit Perlin.

L’effet de turbulence n’a aucune image d’entrée.

Le CLSID pour cet effet est CLSID_D2D1Turbulence.

Exemple d’image

capture d’écran de l’exemple d’effet montrant la sortie de l’effet de turbulence.

L’effet De turbulence calcule la somme d’une ou plusieurs octaves de la fonction de bruit Perlin. Le bruit perlin est une fonction pseudo-aléatoire dont la valeur dépend de la fréquence, de la position et de la valeur de départ. L’effet génère les valeurs RVBA à l’aide de l’une de ces équations.

Si vous sélectionnez le mode de bruit D2D1_TURBULENCE_NOISE_FRACTAL_SUM, l’effet utilise cette équation.

Capture d’écran montrant la fonction de turbulence utilisée pour générer une bitmap.

Si vous sélectionnez le mode de bruit D2D1_TURBULENCE_NOISE_TURBULENCE, l’effet utilise cette équation.

la fonction de turbulence utilisée pour générer une bitmap.

Note

La fonction PerlinNoise a une plage de [-1, 1].

Cet effet génère des valeurs de pixels en alpha prémultiplié.

Propriétés d’effet

Nom complet et énumération d’index Description
Compenser
D2D1_TURBULENCE_PROP_OFFSET
Coordonnées où la sortie de turbulence est générée.
L’algorithme utilisé pour générer le bruit Perlin dépend de la position, donc un décalage différent entraîne une sortie différente. Cette propriété n’est pas limitée et les unités sont spécifiées dans les adresses IP
Remarque : Le décalage n’a pas le même effet qu’une traduction, car la sortie de la fonction de bruit est infinie et la fonction s’encapsule autour de la vignette.
Le type est D2D1_VECTOR_2F.
La valeur par défaut est {0.0f, 0.0f}.
Taille
D2D1_TURBULENCE_PROP_SIZE
Taille de la sortie de turbulence.
Cette propriété n’est pas limitée et les unités sont spécifiées dans les adresses IP

Le type est D2D1_VECTOR_2F.
La valeur par défaut est {0.0f, 0.0f}.
BaseFrequency
D2D1_TURBULENCE_PROP_BASE_FREQUENCY
Fréquences de base dans la direction X et Y. Cette propriété est un float et doit être supérieure à 0. Les unités sont spécifiées en 1/DIPs.
Une valeur de 1 (1/DIPs) pour la fréquence de base entraîne le bruit Perlin qui termine un cycle entier entre deux pixels. L’interpolation de facilité pour ces pixels entraîne des pixels complètement aléatoires, car il n’existe aucune corrélation entre les pixels.
Valeur 0.1(1/DIPs) pour la fréquence de base, la fonction de bruit Perlin répète toutes les 10 DIPs. Cela entraîne une corrélation entre les pixels et l’effet de turbulence typique.
Le type est D2D1_VECTOR_2F.
La valeur par défaut est {0.01f, 0.01f}.
NumOctaves
D2D1_TURBULENCE_PROP_NUM_OCTAVES
Nombre d’octaves pour la fonction de bruit. Cette propriété est un UINT32 et doit être supérieure à 0.
Le type est UINT32.
La valeur par défaut est 1.
Graines
D2D1_TURBULENCE_PROP_SEED
Valeur initiale pour le générateur pseudo aléatoire. Cette propriété n’est pas liée.
Le type est UINT32.
La valeur par défaut est 0.
Bruit
D2D1_TURBULENCE_PROP_NOISE
Le mode de bruit de turbulence. Cette propriété peut être somme fractale ou . Indique s’il faut générer une bitmap basée sur le bruit Fractal ou la fonction Turbulence. Pour plus d’informations, consultez modes bruit.
Le type est D2D1_TURBULENCE_NOISE.
La valeur par défaut est D2D1_TURBULENCE_NOISE_FRACTAL_SUM.
Pointable
D2D1_TURBULENCE_PROP_STITCHABLE
Active ou désactive le pointage. La fréquence de base est ajustée afin que la bitmap de sortie puisse être cousue. Cela est utile si vous souhaitez vignetter plusieurs copies de la sortie de l’effet de turbulence.
  • True La bitmap de sortie peut être mosaïque (à l’aide de l’effet de vignette) sans l’apparence des coutures. La fréquence de base est ajustée afin que la bitmap de sortie puisse être cousue.
  • False La fréquence de base n’est pas ajustée, de sorte que les coutures peuvent apparaître entre les vignettes si la bitmap est mosaïque.

Le type est BOOL.
La valeur par défaut est FALSE.

Modes de bruit

Énumération Description
D2D1_TURBULENCE_NOISE_FRACTAL_SUM Calcule une somme des octaves, en déplaçant la plage de sortie de [-1, 1], à [0, 1].
D2D1_TURBULENCE_NOISE_TURBULENCE Calcule une somme de la valeur absolue de chaque octave.

Note

Aucun des modes ne contient une pince explicite des valeurs de sortie.

Bitmap de sortie

Cet effet génère une bitmap de taille logique infinie.

Exigences

Exigence Valeur
Client minimum pris en charge Windows 8 et Mise à jour de plateforme pour Windows 7 [applications de bureau | Applications du Windows Store]
Serveur minimum pris en charge Windows 8 et Mise à jour de plateforme pour Windows 7 [applications de bureau | Applications du Windows Store]
En-tête d2d1effects.h
Bibliothèque d2d1.lib, dxguid.lib

ID2D1Effect