变换内的QML对象属性

变换内的QML对象属性,qml,Qml,我有一个对象,我想围绕一个点旋转,该点的坐标存储在属性offsetx,offsety中。这是我的目标: Rectangle { id: rec1 property int offsetx: width/2 property int offsety: height/2 height: 50 width: 50 color: "blue" x: originx - offsetx y: originy - offsety tra

我有一个对象,我想围绕一个点旋转,该点的坐标存储在属性
offsetx
offsety
中。这是我的目标:

Rectangle {
    id: rec1
    property int offsetx: width/2
    property int offsety: height/2
    height: 50
    width: 50
    color: "blue"
    x: originx - offsetx
    y: originy - offsety
    transform: Rotation { origin.x: offsetx ; origin.y: offsety; angle: 45}
}

转换既不能识别
offsetx
也不能识别
offsety
,而位置属性x和y(两者都依赖于偏移属性)工作正常。如果我写
rec1.offsetx
,那么转换会识别它,但是如果我想实例化许多这样的矩形(不一定有id),那么使用这种方法可能会有问题。

在单独的
qml
文件中移动代码上方。
每个
qml
文件至少有一个根项,其属性可用于其子项,而无需明确限定。
samplect.qml

import QtQuick 2.6

Rectangle {
    id: rec1
    property int offsetx: width/2
    property int offsety: height/2
    height: 50
    width: 50
    color: "blue"
    x: 100 - offsetx
    y: 100 - offsety
    transform: Rotation { origin.x: offsetx ; origin.y: offsety; angle: 45}  //<- offsetx is accessible. same as rec1.offsetx
}
SampleRect {
}