Тип QML ThresholdMask
Маскирует исходный элемент другим элементом и применяет значение порога. Подробнее...
| Оператор импорта: | import QtGraphicalEffects 1.12 |
| С тех пор: | QtGraphicalEffects 1.0 |
| Наследует: |
Свойства
- cached : bool
- maskSource : variant
- source : variant
- spread : real
- threshold : real
Подробное описание
Поведение маскирования можно контролировать с помощью значения threshold для пикселей маски.
| Исходник | MaskSource | Применённый эффект |
|---|---|---|
Примечание: Этот эффект доступен при работе с OpenGL.
Пример
Следующий пример демонстрирует применение эффекта.
import QtQuick 2.12
import QtGraphicalEffects 1.12
Item {
width: 300
height: 300
Image {
id: background
anchors.fill: parent
source: "images/checker.png"
smooth: true
fillMode: Image.Tile
}
Image {
id: bug
source: "images/bug.jpg"
sourceSize: Qt.size(parent.width, parent.height)
smooth: true
visible: false
}
Image {
id: mask
source: "images/fog.png"
sourceSize: Qt.size(parent.width, parent.height)
smooth: true
visible: false
}
ThresholdMask {
anchors.fill: bug
source: bug
maskSource: mask
threshold: 0.4
spread: 0.2
}
} Документация свойств
cached : bool
Это свойство позволяет кэшировать выходные пиксели эффекта для повышения производительности отрисовки.
Каждый раз при изменении свойств источника или эффекта пиксели в кэше должны быть обновлены. Потребление памяти увеличивается, так как требуется дополнительный буфер памяти для хранения выходных данных эффекта.
Рекомендуется отключить кэш при анимации свойств источника или эффекта.
По умолчанию свойство установлено в false.
maskSource : variant
Это свойство определяет элемент, который будет использоваться в качестве маски. Элемент маски рендерится в промежуточный буфер пикселей, а значения альфа из результата используются для определения видимости пикселей исходного элемента на дисплее.
| Оригинал | Маска | Применённый эффект |
|---|---|---|
Примечание: Не поддерживается включение эффекта в сам себя, например, при назначении maskSource родительскому элементу эффекта.
source : variant
Это свойство определяет исходный элемент, который будет замаскирован.
Примечание: Не поддерживается включение эффекта в сам себя, например, при назначении source родительскому элементу эффекта.
spread : real
Это свойство определяет плавность краёв маски вблизи значения альфы threshold. Установка spread в 0.0 использует маску обычно с указанным порогом. Установка более высоких значений spread сглаживает переход от прозрачных пикселей маски к непрозрачным, добавляя интерполированные значения между ними.
Значение изменяется от 0.0 (резкий край маски) до 1.0 (плавный край маски). По умолчанию свойство установлено в 0.0.
| Примеры выходных данных с разными значениями spread | ||
|---|---|---|
|
||
| spread: 0.0 | spread: 0.2 | spread: 0.8 |
| threshold: 0.4 | threshold: 0.4 | threshold: 0.4 |
threshold : real
Это свойство определяет пороговое значение для пикселей маски. Пиксели маски с значением альфа ниже этого свойства полностью маскируют соответствующие пиксели из исходного элемента. Пиксели маски с более высоким значением альфа используются для альфа-смешивания исходного элемента с дисплеем.
Значение изменяется от 0.0 (значение альфа 0) до 1.0 (значение альфа 255). По умолчанию свойство установлено в 0.0.
| Примеры выходных данных с разными пороговыми значениями | ||
|---|---|---|
| threshold: 0.0 | threshold: 0.5 | threshold: 0.7 |
| spread: 0.2 | spread: 0.2 | spread: 0.2 |
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qml-qtgraphicaleffects-thresholdmask.html
