Тип QML ThresholdMask
Маскирует исходный элемент другим элементом и применяет значение порога. Подробнее...
| Заявление об импорте: | import QtGraphicalEffects 1.0 |
| С тех пор: | QtGraphicalEffects 1.0 |
| Наследует: |
Свойства
- cached : bool
- maskSource : variant
- source : variant
- spread : real
- threshold : real
Подробное описание
Поведение маскирования можно контролировать с помощью значения threshold для пикселей маски.
| Исходник | MaskSource | Применяемый эффект |
|---|---|---|
Пример
Следующий пример демонстрирует, как применить эффект.
import QtQuick 2.0
import QtGraphicalEffects 1.0
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
Это свойство позволяет кэшировать пиксели выходного эффекта, чтобы улучшить производительность отрисовки.
Каждый раз, когда изменяются свойства source или effect, пиксели в кэше должны быть обновлены. Потребление памяти увеличивается, так как для хранения выходных данных эффекта требуется дополнительный буфер памяти.
Рекомендуется отключать кэш, когда свойства source или effect анимированы.
По умолчанию свойство установлено в 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/archives/qt-5.6/qml-qtgraphicaleffects-thresholdmask.html
