Тип QML LinearGradient
Рисует линейный градиент. Подробнее...
| Заявление об импорте: | import QtGraphicalEffects 1.0 |
| С момента: | QtGraphicalEffects 1.0 |
| Наследует: |
Свойства
Подробное описание
Градиент определяется двумя или более цветами, которые плавно смешиваются. Цвета начинаются от заданной начальной точки и заканчиваются в заданной конечной точке.
| Применяемый эффект |
|---|
Примечание: Этот эффект доступен при работе с OpenGL.
Пример
Следующий пример демонстрирует применение эффекта.
import QtQuick 2.0
import QtGraphicalEffects 1.0
Item {
width: 300
height: 300
LinearGradient {
anchors.fill: parent
start: Qt.point(0, 0)
end: Qt.point(0, 300)
gradient: Gradient {
GradientStop { position: 0.0; color: "white" }
GradientStop { position: 1.0; color: "black" }
}
}
} Документация по свойствам
cached : bool
Это свойство позволяет кэшировать выходные пиксели эффекта для повышения производительности рендеринга.
Каждый раз при изменении свойств источника или эффекта пиксели в кэше должны быть обновлены. Потребление памяти увеличивается, так как для хранения выходных данных эффекта требуется дополнительный буфер памяти.
Рекомендуется отключать кэширование при анимации свойств источника или эффекта.
По умолчанию свойство установлено в false.
end : значение
Это свойство определяет конечную точку, где рендерится цвет с градиентной позицией 1,0. Цвета с меньшими значениями позиции рендерятся линейно к начальной точке. Точка задаётся в пикселях, а значение по умолчанию — Qt.point(0, height). Установка значений по умолчанию для свойств start и end приводит к линейному градиенту по всей высоте по оси y.
| Примеры вывода с различными значениями end | ||
|---|---|---|
| end: Qt.point(300, 300) | end: Qt.point(150, 150) | end: Qt.point(300, 0) |
| start: Qt.point(0, 0) | start: Qt.point(0, 0) | start: Qt.point(0, 0) |
gradient : Gradient
Градиент определяется двумя или более цветами, которые плавно смешиваются. Цвета задаются набором элементов-остановки градиента GradientStop, каждый из которых определяет положение на градиенте от 0,0 до 1,0 и цвет. Положение каждого элемента-остановки GradientStop определяется свойством position, а цвет — свойством color.
| Примеры вывода с различными значениями градиента | ||
|---|---|---|
gradient:Gradient {
GradientStop {
position: 0.000
color: Qt.rgba(1, 0, 0, 1)
}
GradientStop {
position: 0.167
color: Qt.rgba(1, 1, 0, 1)
}
GradientStop {
position: 0.333
color: Qt.rgba(0, 1, 0, 1)
}
GradientStop {
position: 0.500
color: Qt.rgba(0, 1, 1, 1)
}
GradientStop {
position: 0.667
color: Qt.rgba(0, 0, 1, 1)
}
GradientStop {
position: 0.833
color: Qt.rgba(1, 0, 1, 1)
}
GradientStop {
position: 1.000
color: Qt.rgba(1, 0, 0, 1)
}
} |
gradient:Gradient {
GradientStop {
position: 0.0
color: "#F0F0F0"
}
GradientStop {
position: 0.5
color: "#000000"
}
GradientStop {
position: 1.0
color: "#F0F0F0"
}
} |
gradient:Gradient {
GradientStop {
position: 0.0
color: "#00000000"
}
GradientStop {
position: 1.0
color: "#FF000000"
}
} |
| start: Qt.point(0, 0) | start: Qt.point(0, 0) | start: Qt.point(0, 0) |
| end: Qt.point(300, 300) | end: Qt.point(300, 300) | end: Qt.point(300, 300) |
source : значение
Это свойство определяет элемент, который будет заполнен градиентом. Элемент источника рендерится в промежуточный буфер пикселей, а значения альфа из результата используются для определения видимости пикселей градиента на дисплее. Значение по умолчанию для source — неопределённое, и в этом случае вся область эффекта заполняется градиентом.
| Примеры вывода с различными значениями source | ||
|---|---|---|
| source: undefined | source: Image { source: images/butterfly.png } | |
| start: Qt.point(0, 0) | start: Qt.point(0, 0) | |
| end: Qt.point(300, 300) | end: Qt.point(300, 300) |
Примечание: Нельзя позволять эффекту включать себя, например, установив source для родителя эффекта.
start : значение
Это свойство определяет начальную точку, где рендерится цвет с градиентной позицией 0,0. Цвета с большими значениями позиции рендерятся линейно к конечной точке. Точка задаётся в пикселях, а значение по умолчанию — Qt.point(0, 0). Установка значений по умолчанию для свойств start и end приводит к линейному градиенту по всей высоте по оси y.
| Примеры вывода с различными значениями start | ||
|---|---|---|
| start: QPoint(0, 0) | start: QPoint(150, 150) | start: QPoint(300, 0) |
| end: QPoint(300, 300) | end: QPoint(300, 300) | end: QPoint(300, 300) |
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtgraphicaleffects-lineargradient.html