Effetto sfocatura direzionale
L'effetto sfocatura direzionale è simile alla sfocatura gaussiana, ad eccezione del fatto che è possibile asimmetriare la sfocatura in una particolare direzione. È possibile usare questo effetto per rendere un'immagine come se fosse in movimento o per enfatizzare un'immagine animata.
Il CLSID per questo effetto è CLSID_D2D1DirectionalBlur.
- Immagine di esempio
- Proprietà dell'effetto
- Modalità di ottimizzazione
- Modalità bordo
- Bitmap di output
- Requisiti
- Argomenti correlati
Immagine di esempio
Prima |
---|
After |
ComPtr<ID2D1Effect> directionalBlurEffect;
m_d2dContext->CreateEffect(CLSID_D2D1DirectionalBlur, &directionalBlurEffect);
directionalBlurEffect->SetInput(0, bitmap);
directionalBlurEffect->SetValue(D2D1_DIRECTIONALBLUR_PROP_STANDARD_DEVIATION, 7.0f);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(directionalBlurEffect.Get());
m_d2dContext->EndDraw();
Proprietà dell'effetto
Enumerazione nome visualizzato e indice | Descrizione |
---|---|
StandardDeviation D2D1_DIRECTIONALBLUR_PROP_STANDARD_DEVIATION |
Quantità di sfocatura da applicare all'immagine. È possibile calcolare il raggio di sfocatura del kernel moltiplicando la deviazione standard per 3. Le unità sia della deviazione standard che del raggio di sfocatura sono DIP. Il valore 0 DIP disabilita questo effetto. Il tipo è FLOAT. Il valore predefinito è 3,0f. |
Angle D2D1_DIRECTIONALBLUR_PROP_ANGLE |
Angolo della sfocatura rispetto all'asse x, nella direzione antiorario. Le unità vengono specificate in gradi. Il kernel di sfocatura viene generato per la prima volta usando lo stesso processo dell'effetto sfocatura gaussiano . I valori del kernel vengono quindi trasformati in base all'angolo di sfocatura. Il tipo è FLOAT. Il valore predefinito è 0,0f. |
Optimization D2D1_DIRECTIONALBLUR_PROP_OPTIMIZATION |
Modalità di ottimizzazione. Per altre informazioni, vedi Modalità di ottimizzazione . Il tipo è D2D1_DIRECTIONALBLUR_OPTIMIZATION. Il valore predefinito è D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED. |
BorderMode D2D1_DIRECTIONALBLUR_PROP_BORDER_MODE |
Modalità utilizzata per calcolare il bordo dell'immagine, morbido o rigido. Per altre info, vedi Modalità bordo . Il tipo è D2D1_BORDER_MODE. Il valore predefinito è D2D1_BORDER_MODE_SOFT. |
Modalità di ottimizzazione
Nome | Descrizione |
---|---|
D2D1_DIRECTIONALBLUR_OPTIMIZATION_SPEED | Applica ottimizzazioni interne, ad esempio la pre-scalabilità a raggi relativamente piccoli. Usa il filtro lineare. |
D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED | Usa le stesse soglie di ottimizzazione della modalità velocità, ma usa il filtro trilineare. |
D2D1_DIRECTIONALBLUR_OPTIMIZATION_QUALITY | Usa solo ottimizzazioni interne con raggi di sfocatura di grandi dimensioni, in cui è meno probabile che le approssimazioni siano visibili. Usa il filtro trilineare. |
Modalità bordo
Nome | Descrizione |
---|---|
D2D1_BORDER_MODE_SOFT | L'effetto riempie l'immagine con pixel neri trasparenti quando applica il kernel di sfocatura, ottenendo un bordo morbido. |
D2D1_BORDER_MODE_HARD | L'effetto blocca l'output alle dimensioni dell'immagine di input. Quando l'effetto applica il kernel di sfocatura, estende l'immagine di input con una trasformazione del bordo di tipo mirror per campioni esterni ai limiti di input. |
Bitmap di output
Le dimensioni della bitmap di output aumentano in base alla deviazione standard, all'angolo dell'effetto e alla modalità bordo. Se la modalità bordo è impostata su D2D1_BORDER_MODE_SOFT le dimensioni della bitmap di output aumentano in base alle dimensioni del kernel di sfocatura, rappresentate in pixel. Queste equazioni possono essere usate per calcolare le dimensioni della bitmap di output.
Requisito | Valore |
---|---|
Output Bitmap Growth X | StandardDeviation (DIP) * 6 * ((USER DPI) / 96) * cos(Angle)) |
Output Bitmap Growth Y | StandardDeviation (DIP) * 6 * ((User DPI) / 96) * sin(Angle)) |
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 |