Efekt otočení odstínu
Pomocí efektu otáčení odstínu můžete změnit odstín obrázku použitím barevné matice na základě úhlu otočení.
CLSID pro tento účinek je CLSID_D2D1HueRotation.
Příklad obrázku
Příklad zde ukazuje vstupní a výstupní obrázky efektu otočení odstínu s úhlem otočení 270 stupňů.
Před |
---|
![]() |
Po |
![]() |
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();
Efekt vypočítá barevnou matici na základě úhlu otočení (?), který zadáte pomocí vlastnosti D2D1_HUEROTATION_PROP_ANGLE. Tady jsou maticové rovnice.
Matice vytvořená závisí pouze na úhlu otáčení. Pokud potřebujete konkrétní matici, můžete použít barevnou matici efekt.
Vlastnosti efektu
Zobrazovaný název a výčet indexu | Typ a výchozí hodnota | Popis |
---|---|---|
Úhel D2D1_HUEROTATION_PROP_ANGLE |
PLOUT 0.0f |
Úhel otočení odstínu ve stupních. |
Výstupní rastrový obrázek
Velikost výstupního rastrového obrázku je stejná jako velikost vstupního rastrového obrázku.
Požadavky
Požadavek | Hodnota |
---|---|
Minimální podporovaný klient | Windows 8 a Aktualizace platformy pro Windows 7 [desktopové aplikace | Aplikace pro Windows Store] |
Minimální podporovaný server | Windows 8 a Aktualizace platformy pro Windows 7 [desktopové aplikace | Aplikace pro Windows Store] |
Záhlaví | d2d1effects.h |
Knihovna | d2d1.lib, dxguid.lib |