Qt Quick Shapes QML Types

To use the types in this module, import the module with the following line:

import QtQuick.Shapes

Qt Quick Shapes provides tools for drawing arbitrary shapes in a Qt Quick scene. Shapes can be constructed from basic building blocks like lines and curves that define sub-shapes. The sub-shapes can then be filled with solid colors or gradients, and an outline stroke can be defined.

Qt Quick Shapes also supports higher level path element types, such as text and SVG path descriptions. The currently supported element types is: PathMove, PathLine, PathQuad, PathCubic, PathArc, PathText and PathSvg.

Qt Quick Shapes triangulates the shapes and renders the corresponding triangles on the GPU. Therefore, altering the control points of elements will lead to re-triangulation of the affected paths, at some performance cost. In addition, curves are flattened before they are rendered, so applying a very high scale to the shape may show artifacts where it is visible that the curves are represented by a sequence of smaller, straight lines.

Note: Qt Quick Shapes relies on multi-sampling for anti-aliasing. This can be enabled for the entire application or window using the corresponding settings in QSurfaceFormat. It can also be enabled for only the shape, by setting its layer.enabled property to true and then adjusting the layer.samples property. In the latter case, multi-sampling will not be applied to the entire scene, but the shape will be rendered via an intermediate off-screen buffer.

For further information, the Shapes example shows how to implement different types of shapes, fills and strokes.

ConicalGradient

Conical gradient

LinearGradient

Linear gradient

RadialGradient

Radial gradient

Shape

Renders a path

ShapeGradient

Base type of Shape fill gradients

ShapePath

Describes a Path and associated properties for stroking and filling

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.