C

Qt Quick Ultralite shapes Example

// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial

import QtQuick 2.15
import QtQuick.Shapes 1.0

ShapesEntry {
    id: root
    text: "Arc direction"

    Rectangle {
        color: "lightGray"
        anchors.top: parent.top
        anchors.horizontalCenter: parent.horizontalCenter
        anchors.margins: root.contentMargins
        width: root.contentHeight
        height: root.contentHeight

        Repeater {
            model: 2
            Shape {
                width: 100
                height: 100
                anchors.centerIn: parent

                scale: root.shapeScale

                ShapePath {
                    fillColor: "transparent"
                    strokeColor: index === 1 ? "red" : "blue"
                    strokeWidth: 4

                    startX: 4; startY: 4
                    PathArc {
                        id: arc
                        x: 96; y: 96
                        radiusX: 100; radiusY: 100
                        direction: index === 1 ? PathArc.Clockwise : PathArc.Counterclockwise
                    }
                }
            }
        }

        Column {
            anchors.top: parent.top
            anchors.right: parent.right
            anchors.margins: 2
            Text {
                text: "Counterclockwise"
                font.pixelSize: 10
                color: "red"
                anchors.right: parent.right
            }
            Text {
                text: "Clockwise"
                font.pixelSize: 10
                color: "blue"
                anchors.right: parent.right
            }
        }
    }
}