Condividi tramite


Effetto rotazione tonalità

Usare l'effetto di rotazione della tonalità per modificare la tonalità di un'immagine applicando una matrice di colori in base all'angolo di rotazione.

Il CLSID per questo effetto è CLSID_D2D1HueRotation.

Immagine di esempio

L'esempio seguente mostra le immagini di input e output dell'effetto di rotazione delle tonalità con un angolo di rotazione di 270 gradi.

Prima di
l'immagine prima dell'effetto.
Dopo
immagine dopo la trasformazione.
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'effetto calcola una matrice di colori in base all'angolo di rotazione (?) specificato con la proprietà D2D1_HUEROTATION_PROP_ANGLE. Ecco le equazioni di matrice.

calcoli di rotazione delle tonalità

La matrice creata dipende solo dall'angolo di rotazione. È possibile usare l'effetto matrice di colori se è necessaria una matrice specifica.

Proprietà dell'effetto

Enumerazione del nome visualizzato e dell'indice Tipo e valore predefinito Descrizione
Angolo
D2D1_HUEROTATION_PROP_ANGLE
FLOAT
0,0f
Angolo per ruotare la tonalità, espressa in gradi.

Bitmap di output

Le dimensioni della bitmap di output corrispondono alle dimensioni della bitmap di input.

Requisiti

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

ID2D1Effect