[Interest] [Qt3d] Does the duration of NumberAnimation update when you change its value?

Oleg Evseev ev.mipt at gmail.com
Tue Apr 26 21:27:16 CEST 2016


Hi, Ramy and Sean

> Something like this should do it (not tested)

Thank you, Sean. Correct it little bit, tested, it works:

Entity {

        id: mainEntity

        property real progress: 0.0

        property real rotationSpeed: -1.0

        property real angle: previousAngle + ( progress * 360.0 *
rotationSpeed  )

        property real previousAngle: 0.0


        function updatePreviousRotation() {

            mainEntity.previousAngle = mainEntity.angle % 360;

        }


        TorusMesh { id: mesh; radius: 5; minorRadius: 1; rings: 100;
slices: 20 }

        PhongMaterial { id: material }


//for some reason in this test project using just "angle" leads to
ReferenceError,
// but in another project it's all right to use Entity properties in
Transform without Entity id

        Transform {id: transform; rotation:  fromEulerAngles(0,
mainEntity.angle, 0) }


        SequentialAnimation {

            running: true

            loops: Animation.Infinite


            NumberAnimation {

                target: mainEntity; property: "progress"

                from: 0.0; to: 1.0

                duration: 1000

            }


            ScriptAction {

                script: {

                    mainEntity.updatePreviousRotation();

                    mainEntity.rotationSpeed += 0.1;

                }

            }

        components: [ mesh, material, transform ]    }
}


rotationSpeed defines cycles per second.

But now I have another related question. To compute rotationSpeed from
vehicle linear speed one needs wheel radius. If I use different vehicle
models with distinct size of wheels, I need to know sizes of a mesh
(something like size of 3d model collision box).
Is there a way to get mesh cube size?

Regards, Oleg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160426/cbe496cf/attachment.html>


More information about the Interest mailing list