Sur cette page

DirectionalBlur QML Type

Applique un effet de flou dans la direction indiquée. En savoir plus...

Import Statement: import Qt5Compat.GraphicalEffects
Since: QtGraphicalEffects 1.0
Inherits:

Item

Propriétés

Description détaillée

Cet effet donne l'impression que l'élément source semble se déplacer dans la direction du flou. Le flou est appliqué des deux côtés de chaque pixel ; par conséquent, définir la direction sur 0 ou 180 donne le même résultat.

D'autres effets de flou de mouvement sont disponibles : ZoomBlur et RadialBlur.

SourceEffet appliqué

Coléoptère noir sur une feuille

Coléoptère avec un flou directionnel appliqué

Remarque : cet effet est disponible lors de l'exécution avec OpenGL.

Exemple

L'exemple suivant montre comment appliquer l'effet.

import QtQuick
import Qt5Compat.GraphicalEffects

Item {
    width: 300
    height: 300

    Image {
        id: bug
        source: "images/bug.jpg"
        sourceSize: Qt.size(parent.width, parent.height)
        smooth: true
        visible: false
    }

    DirectionalBlur {
        anchors.fill: bug
        source: bug
        angle: 90
        length: 32
        samples: 24
    }
}

Documentation sur les propriétés

angle : real

Cette propriété définit la direction du flou. Le flou étant appliqué des deux côtés de chaque pixel, définir la direction sur 0 ou 180 donne le même résultat.

La valeur est comprise entre -180,0 et 180,0. Par défaut, la propriété est définie sur 0.0.

Exemples de résultats avec différentes valeurs d'angle

Flou horizontal à un angle de 0

Flou diagonal à un angle de 45°

Flou vertical à un angle de 90

angle : 0,0 angle : 45,0 angle : 90,0
samples: 24samples: 24samples: 24
length: 32length: 32length: 32

cached : bool

Cette propriété permet de mettre en cache les pixels de sortie de l'effet afin d'améliorer les performances de rendu.

Chaque fois que les propriétés de la source ou de l'effet sont modifiées, les pixels du cache doivent être mis à jour. La consommation de mémoire augmente, car un tampon mémoire supplémentaire est nécessaire pour stocker la sortie de l'effet.

Il est recommandé de désactiver le cache lorsque les propriétés de la source ou de l’effet sont animées.

Par défaut, la propriété est définie sur « false ».

length : real

Cette propriété définit l'amplitude perçue du mouvement pour chaque pixel. Le mouvement est réparti de manière égale de part et d'autre de chaque pixel.

La qualité du flou dépend de la propriété « samples ». Si la valeur de «length» est élevée, davantage d'échantillons sont nécessaires pour maintenir une qualité visuelle optimale.

La valeur est comprise entre 0,0 et inf. Par défaut, la propriété est définie sur « 0.0 » (pas de flou).

Exemples de résultats avec différentes valeurs de longueur

Coléoptère sans flou

Coléoptère avec une longueur de flou modérée

Beetle avec une longueur de flou maximale

longueur : 0,0 length : 32,0 length : 48,0
samples: 24samples: 24samples: 24
angle: 0angle: 0angle: 0

samples : int

Cette propriété définit le nombre d'échantillons prélevés par pixel lors du calcul du flou. Une valeur plus élevée offre une meilleure qualité, mais ralentit le rendu.

Cette propriété n'est pas destinée à être animée. La modification de cette propriété peut entraîner la recompilation des shaders OpenGL sous-jacents.

Les valeurs autorisées sont comprises entre 0 et inf (le maximum pratique dépend du GPU). Par défaut, la propriété est définie sur « 0 » (aucun échantillon).

source : variant

Cette propriété définit l'élément source qui va être flouté.

Remarque : il n'est pas possible de faire en sorte que l'effet s'applique à lui-même, par exemple en définissant la source comme étant le parent de l'effet.

transparentBorder : bool

Cette propriété définit le comportement du flou à proximité des bords de l'élément, où le flou des pixels est influencé par les pixels situés à l'extérieur des bords de la source.

Si la propriété est définie sur « true », les pixels situés en dehors de la source sont considérés comme transparents, ce qui est similaire à l'extension « clamp-to-border » d'OpenGL. Le flou s'étend légèrement au-delà de la zone de l'élément concerné.

Si la propriété est définie sur « false », les pixels situés en dehors de la source sont interprétés comme contenant la même couleur que les pixels situés au bord de l'élément, ce qui est similaire au comportement « clamp-to-edge » d'OpenGL. Le flou ne s'étend pas en dehors de la zone de l'élément d'effet.

Par défaut, la propriété est définie sur « false ».

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.