I run script file with QQmlEngine.
I passing QVector3D value to qml (QQmlEngine):
QVector3D dir(1,2,3);
QQmlEngine lifeEngine;
lifeEngine.globalObject().setProperty("direction", lifeEngine.toScriptValue<QVector3D>(dir));
This QML code outputs nothing interesting:
console.log("1-!");
console.log("2-"+direction);
console.log("3.1-"+direction.x);
//console.log("3.2-"+direction.x()); interrupt execution
for(var property in direction) {
console.log("4-"+property) + ": "+direction[property];
}
console.log("5-!");
var v = Qt.vector3d(1,2,3);
console.log("6-!" + v);
Output:
qml: 1-!
qml: 2-QVariant(QVector3D)
qml: 3.1-undefined
qml: 5-!
qml: 6-!undefined
I tried to import in file
import QtQuick 2.1
but it interrupt execution.
How can i get access to value QVector3D in QML? May be some imports in cpp project or in script file?... Problem is in environment not in code. May be vector3d available only in quick applications.
My *.pro file:
QT += core gui multimedia qml quick
(Qt 5.12.2)