Spec-Zone.ru › Qt 5.12

Тип QML DirectionalBlur

Применяет эффект размытия к указанному направлению. Подробнее...

Оператор импорта: import QtGraphicalEffects 1.12
С момента: QtGraphicalEffects 1.0
Наследует:

Item

  • Список всех членов, включая унаследованные

Свойства

  • angle : real
  • cached : bool
  • length : real
  • samples : int
  • source : variant
  • transparentBorder : bool

Подробное описание

Эффект создает видимое впечатление, что исходный элемент движется в направлении размытия. Размытие применяется к обеим сторонам каждого пикселя, поэтому установка направления в 0 и 180 приводит к одному и тому же результату.

Другие доступные эффекты размытия движения — ZoomBlur и RadialBlur.

Источник Применяемый эффект

Примечание: Этот эффект доступен при работе с OpenGL.

Пример

Следующий пример демонстрирует применение эффекта.

import QtQuick 2.12
import QtGraphicalEffects 1.12

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
    }
}

Документация по свойствам

angle : real

Это свойство определяет направление размытия. Размытие применяется к обеим сторонам каждого пикселя, поэтому установка направления в 0 и 180 даёт одинаковый результат.

Значение изменяется от -180.0 до 180.0. По умолчанию свойство установлено в 0.0.

Примеры вывода с разными значениями угла

angle: 0.0 angle: 45.0 angle: 90.0
samples: 24 samples: 24 samples: 24
length: 32 length: 32 length: 32

cached : bool

Это свойство позволяет кэшировать выходные пиксели эффекта для повышения производительности рендеринга.

При каждом изменении источника или свойств эффекта пиксели в кэше должны быть обновлены. Потребление памяти увеличивается, поскольку требуется дополнительный буфер памяти для хранения выходных данных эффекта.

Рекомендуется отключать кэш, когда источник или свойства эффекта анимированы.

По умолчанию свойство установлено в false.

length : real

Это свойство определяет воспринимаемое количество перемещения для каждого пикселя. Перемещение делится равномерно на обе стороны каждого пикселя.

Качество размытия зависит от свойства samples. Если значение length велико, для сохранения качества изображения на высоком уровне требуется большее количество выборок.

Значение изменяется от 0.0 до бесконечности. По умолчанию свойство установлено в 0.0 (без размытия).

Примеры вывода с разными значениями length

length: 0.0 length: 32.0 length: 48.0
samples: 24 samples: 24 samples: 24
angle: 0 angle: 0 angle: 0

samples : int

Это свойство определяет количество выборок на пиксель при вычислении размытия. Большее значение обеспечивает более высокое качество, но замедляет рендеринг.

Это свойство не предназначено для анимации. Изменение этого свойства может привести к перекомпиляции базовых шейдеров OpenGL.

Допустимые значения от 0 до бесконечности (практический максимум зависит от графического процессора). По умолчанию свойство установлено в 0 (без выборок).

source : variant

Это свойство определяет исходный элемент, который будет размыт.

Примечание: Не поддерживается включение эффекта в сам себя, например, установкой source в родительский элемент эффекта.

transparentBorder : bool

Это свойство определяет поведение размытия у краёв элемента, где размытие пикселя зависит от пикселей за пределами границ источника.

Если свойство установлено в true, пиксели за пределами источника интерпретируются как прозрачные, что аналогично расширению OpenGL clamp-to-border. Размытие слегка расширяется за пределы области элемента эффекта.

Если свойство установлено в false, пиксели за пределами источника интерпретируются как имеющие тот же цвет, что и пиксели на краю элемента, что аналогично поведению OpenGL clamp-to-edge. Размытие не расширяется за пределы области элемента эффекта.

По умолчанию свойство установлено в false.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qml-qtgraphicaleffects-directionalblur.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API