Тип QML ShapePath
Описывает путь и связанные свойства для обводки и заливки. Подробнее...
| Заявление об импорте: | import QtQuick.Shapes |
| С момента: | Qt 5.10 |
| Наследует: |
Свойства
- capStyle : перечисление
- dashOffset : вещественное
- dashPattern : список<вещественное>
- fillColor : цвет
- fillGradient : ShapeGradient
- fillRule : перечисление
- joinStyle : перечисление
- miterLimit : целое
- strokeColor : цвет
- strokeStyle : перечисление
- strokeWidth : вещественное
Подробное описание
Объект Shape содержит один или несколько элементов ShapePath. По крайней мере один ShapePath необходим для того, чтобы Shape выводил что-либо видимое. Сам ShapePath представляет собой объект Path с дополнительными свойствами, описывающими параметры обводки и заливки, такие как толщина и цвет обводки, цвет или градиент заливки, стили соединения и окончания и так далее. Как и обычные объекты Path, ShapePath также содержит список элементов пути, таких как PathMove, PathLine, PathCubic, PathQuad, PathArc, вместе с начальной позицией.
Любые изменения свойств в этих наборах данных будут переданы вверх и изменят вывод Shape. Это означает, что легко изменить или даже анимировать начальную и конечную точку, контрольные точки или любые параметры обводки или заливки с помощью обычных QML привязок и типов анимации, таких как NumberAnimation.
В следующем примере стиль соединения линии автоматически изменяется в зависимости от значения joinStyleIndex:
ShapePath {
strokeColor: "black"
strokeWidth: 16
fillColor: "transparent"
capStyle: ShapePath.RoundCap
property int joinStyleIndex: 0
property variant styles: [
ShapePath.BevelJoin,
ShapePath.MiterJoin,
ShapePath.RoundJoin
]
joinStyle: styles[joinStyleIndex]
startX: 30
startY: 30
PathLine { x: 100; y: 100 }
PathLine { x: 30; y: 100 }
} После связывания с Shape, вот вывод со значением joinStyleIndex 2 (ShapePath.RoundJoin):
См. также Примеры Qt Quick - Фигуры и Shape.
Документация по свойствам
capStyle : перечисление
Это свойство определяет, как рисуются конечные точки линий. Значение по умолчанию равно ShapePath.SquareCap.
| Константа | Описание |
|---|---|
ShapePath.FlatCap |
Конец квадратной линии, который не накрывает конечную точку линии. |
ShapePath.SquareCap |
Квадратный конец линии, который накрывает конечную точку и выходит за её пределы на половину ширины линии. |
ShapePath.RoundCap |
Закругленный конец линии. |
dashOffset : вещественное
Это свойство определяет начальную точку на шаблоне штриховки, измеренную в единицах, используемых для задания шаблона штриховки.
Значение по умолчанию равно 0.
См. также QPen::setDashOffset().
dashPattern : список<вещественное>
Это свойство определяет шаблон штриховки, когда ShapePath.strokeStyle устанавливается в ShapePath.DashLine. Шаблон должен быть указан как четное число положительных элементов, где элементы 1, 3, 5... — это штрихи, а 2, 4, 6... — это пробелы. Шаблон задается в единицах ширины пера.
Значение по умолчанию равно (4, 2), что означает штрих длиной 4 * ShapePath.strokeWidth пикселей, за которым следует пробел длиной 2 * ShapePath.strokeWidth пикселей.
См. также QPen::setDashPattern().
fillColor : цвет
Это свойство содержит цвет заливки.
При установке в transparent, заливка не происходит.
Значение по умолчанию равно white.
fillGradient : ShapeGradient
Это свойство определяет градиент заливки. По умолчанию градиент не включен, и значение равно null. В этом случае заливка использует твёрдый цвет, основанный на значении ShapePath.fillColor.
При установке свойства ShapePath.fillColor игнорируется, и заливка выполняется с помощью одного из типов ShapeGradient.
Примечание: Тип Градиент здесь использовать нельзя. Вместо этого предпочтительно использовать один из расширенных подтипов, таких как LinearGradient.
fillRule : перечисление
Это свойство содержит правило заливки. Значение по умолчанию равно ShapePath.OddEvenFill. Объяснение правил заливки см. в QPainterPath::setFillRule().
| Константа | Описание |
|---|---|
ShapePath.OddEvenFill |
Правило заливки чётность-нечётность. |
ShapePath.WindingFill |
Правило заливки ненулевое закручивание. |
joinStyle : перечисление
Это свойство определяет, как рисуются соединения между двумя соединёнными линиями. Значение по умолчанию равно ShapePath.BevelJoin.
| Константа | Описание |
|---|---|
ShapePath.MiterJoin |
Внешние края линий продолжаются до пересечения под углом, и эта область заполняется. |
ShapePath.BevelJoin |
Треугольный выступ между двумя линиями заполняется. |
ShapePath.RoundJoin |
Круговая дуга между двумя линиями заполняется. |
miterLimit : целое
При joinStyle установленном в ShapePath.MiterJoin, это свойство определяет, насколько далеко соединение митёра может простираться от точки соединения.
Значение по умолчанию равно 2.
strokeColor : цвет
Это свойство содержит цвет обводки.
При установке в transparent, обводка не происходит.
Значение по умолчанию равно white.
strokeStyle : перечисление
Это свойство определяет стиль обводки. Значение по умолчанию равно ShapePath.SolidLine.
- ShapePath.SolidLine - Простая линия.
- ShapePath.DashLine - Штрихи, разделенные несколькими пикселями.
strokeWidth : вещественное
Это свойство содержит толщину обводки.
При установке отрицательного значения, обводка не происходит.
Значение по умолчанию равно 1.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qml-qtquick-shapes-shapepath.html