Тип QML ShapePath
Описывает путь и связанные свойства для обводки и заливки. Подробнее...
| Заявление об импорте: | import QtQuick.Shapes 1.14 |
| С тех пор: | 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.
Примечание: Тип Gradient здесь использовать нельзя. Вместо этого предпочтительнее использовать один из расширенных подтипов, например, 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-5.14/qml-qtquick-shapes-shapepath.html