 <p>The origin should be half the width and height of the item that you're rotating if you wish to rotate it about its centre. Note that the dot is not the true origin; I've tweaked your code a bit:</p> <pre><code>import QtQuick 2.0 Rectangle { id: dial width: 360 height: 360 color: "gray" Rectangle { id: dot height: 5 width: 5 color: "red" anchors.centerIn: parent z: 1 } Rectangle { id: line height: 5 width: 50 anchors.horizontalCenter: parent.horizontalCenter anchors.verticalCenter: parent.verticalCenter transform: Rotation { origin.x: line.width / 2 origin.y: line.height / 2 angle: 40 } } } </code></pre> <p><img src="https://i.stack.imgur.com/Zy6VK.png" alt="rotated line"></p> <p>Or, if you want to get even simpler:</p> <pre><code>import QtQuick 2.0 Rectangle { id: dial width: 360 height: 360 color: "gray" Rectangle { id: line height: 5 width: 50 anchors.centerIn: parent rotation: 40 } Rectangle { id: dot height: 5 width: 5 color: "red" anchors.centerIn: parent } } </code></pre>