Spec-Zone.ru › Qt 5.15

Тип QML ZoomBlur

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

Заявление об импорте: import QtGraphicalEffects 1.15
С момента: QtGraphicalEffects 1.0
Наследует:

Элемент

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

Свойства

  • cached : bool
  • horizontalOffset : real
  • length : real
  • samples : int
  • source : variant
  • transparentBorder : bool
  • verticalOffset : real

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

Эффект создаёт видимость, что исходный элемент движется к центральной точке в направлении Z или что камера быстро приближается. Другие доступные эффекты размытия движения — DirectionalBlur и RadialBlur.

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

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

Пример

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

import QtQuick 2.12
import QtGraphicalEffects 1.12

Item {
    width: 300
    height: 300

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

    ZoomBlur {
        anchors.fill: butterfly
        source: butterfly
        samples: 24
        length: 48
    }
}

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

cached : bool

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

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

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

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

horizontalOffset : real

Эти свойства определяют смещение в пикселях для центральной точки направления размытия.

Значения варьируются от -∞ до ∞. По умолчанию эти свойства установлены в 0.

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

horizontalOffset: 100.0 horizontalOffset: 0.0 horizontalOffset: -100.0
samples: 24 samples: 24 samples: 24
length: 32 length: 32 length: 32
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0

length : real

Это свойство определяет максимальное воспринимаемое количество перемещения для каждого пикселя. Величина меньше вблизи центра и достигает указанного значения на краях.

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

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

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

length: 0.0 length: 32.0 length: 48.0
samples: 24 samples: 24 samples: 24
horizontalOffset: 0 horizontalOffset: 0 horizontalOffset: 0
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0

samples : int

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

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

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

source : variant

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

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

transparentBorder : bool

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

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

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

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

verticalOffset : real

Эти свойства определяют смещение в пикселях для центральной точки направления размытия.

Значения варьируются от -∞ до ∞. По умолчанию эти свойства установлены в 0.

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

horizontalOffset: 100.0 horizontalOffset: 0.0 horizontalOffset: -100.0
samples: 24 samples: 24 samples: 24
length: 32 length: 32 length: 32
verticalOffset: 0 verticalOffset: 0 verticalOffset: 0

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

Spec-Zone.ru

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