Я пытаюсь повернуть стрелку датчика вокруг индексной точки, но у меня появляется ошибка выравнивания при ее перемещении. Пожалуйста, предложите, какие изменения необходимо внести в код, чтобы исправить это?
Я не разместил код дляфоновое изображение, используемое в моем проекте.
В моем проекте есть фоновое изображение, на котором игла поворачивается. Но когда стрелка вращается, она не остается в том же месте, откуда начинается вращение. Я использую, чтобы получить некоторую разницу в выравнивании между фоновым изображением ЧЕРНЫЙ круг и винт иглы. Изначально этой ошибки не было.
Размер изображения иглы - 188x36.
main.qml файл: ---
import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.5
Window
{
visible: true
x :0
y :0
width: 800
height: 480
color: "grey"
id : window_id
Rectangle
{
Speed_Needle{
id: cluster_pointer_base
x : 214+16
y : 222
}
}
Timer{
id:gearUpdate
interval: 15
running: true
repeat: true
property real speedValue: -31
property real direction: 0
property real direction_toggel: 0
onTriggered: {
//rpmSpeedMeter()
//cluster_large_gear.rotation = speedValue;
if(speedValue == 209)
{
direction = 1
}
if(speedValue == -31)
{
direction = 0
}
cluster_pointer_base.value = speedValue //- 31;
if(direction == 0)
{
speedValue++;
}
else
{
speedValue--;
}
}
}
}
needle.qml файл: -
import QtQuick 2.0
Item {
property int value: -31
width: 186
height: 36
Image
{
id: root
source: "files/pointer_needle2.png"
x : 0
y : 0
transform: Rotation {
id: needleRotation
angle : value
origin.x :root.width-16
origin.y :root.height/2
origin.z : 0
Behavior on angle {
SmoothedAnimation { velocity: 50 }
}
}
}
}
