Effet de rotation de la teinte

Utilisez l’effet rotation de la teinte pour modifier la teinte d’une image en appliquant une matrice de couleurs en fonction de l’angle de rotation.

Le CLSID de cet effet est CLSID _ D2D1HueRotation.

Exemple d’image

L’exemple ci-dessous montre les images d’entrée et de sortie de l’effet de rotation de la teinte avec un angle de rotation de 270 degrés.

Avant
image avant l’effet.
After
image après la transformation.
ComPtr<ID2D1Effect> hueRotationEffect;
m_d2dContext->CreateEffect(CLSID_D2D1HueRotation, &hueRotationEffect);

hueRotationEffect->SetInput(0, bitmap);
hueRotationEffect->SetValue(D2D1_HUEROTATION_PROP_ANGLE, 270.0f);

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(hueRotationEffect.Get());
m_d2dContext->EndDraw();

L’effet calcule une matrice de couleurs en fonction de l’angle de rotation (?) que vous spécifiez avec la _ propriété d2d1 HUEROTATION _ prop _ angle. Voici les équations de matrice.

calculs de rotation de teinte

La matrice créée dépend uniquement de l’angle de rotation. Vous pouvez utiliser l’effet matrice de couleurs si vous avez besoin d’une matrice spécifique.

Propriétés d’effet

Nom complet et énumération d’index Type et valeur par défaut Description
Angle
_Angle d2d1 HUEROTATION _ prop _
FLOAT
0.0f
Angle de rotation de la teinte, en degrés.

Bitmap de sortie

La taille de la bitmap de sortie est la même que la taille de la bitmap d’entrée.

Spécifications

Condition requise Valeur
Client minimal pris en charge mise à jour Windows 8 et de plateforme pour les applications de bureau Windows 7 Windows les applications du windows [ | Store]
Serveur minimal pris en charge mise à jour Windows 8 et de plateforme pour les applications de bureau Windows 7 Windows les applications du windows [ | Store]
En-tête d2d1effects. h
Bibliothèque d2d1. lib, dxguid. lib

ID2D1Effect