Qt Quick 3D - Robot Arm Example
import QtQuick
import QtQuick3D
Node {
id: rootNode
property int rotation1
property int rotation2
property int rotation3
property int rotation4
property int clawsAngle
readonly property alias hand_position: hand_grab_t.scenePosition
readonly property alias hand_hinge_position: hand_hinge.scenePosition
readonly property alias arm_position: arm.scenePosition
readonly property alias forearm_position: forearm.scenePosition
readonly property alias root_position: root.scenePosition
Model {
id: base
scale.x: 100
scale.y: 100
scale.z: 100
source: "meshes/base.mesh"
eulerRotation.x: -90
DefaultMaterial {
id: steel_material
diffuseColor: "#ff595959"
}
DefaultMaterial {
id: plastic_material
}
materials: [steel_material, plastic_material]
Model {
id: root
y: -5.96047e-08
z: 1.0472
eulerRotation.z: rotation4
source: "meshes/root.mesh"
DefaultMaterial {
id: plastic_color_material
diffuseColor: "#41cd52"
}
materials: [plastic_material, plastic_color_material, steel_material]
Model {
id: forearm
x: 5.32907e-15
y: -0.165542
z: 1.53472
eulerRotation.x: rotation3
source: "meshes/forearm.mesh"
materials: [plastic_material, steel_material]
Model {
id: arm
x: -7.43453e-07
y: 0.667101
z: 2.23365
eulerRotation.x: rotation2
source: "meshes/arm.mesh"
DefaultMaterial {
id: plastic_qt_material
diffuseMap: Texture {
source: "maps/qt.png"
pivotU: 0.5
pivotV: 0.5
generateMipmaps: true
mipFilter: Texture.Linear
}
}
materials: [plastic_material, plastic_qt_material, steel_material]
Model {
id: hand_hinge
x: 7.43453e-07
y: 0.0635689
z: 2.12289
eulerRotation.x: rotation1
source: "meshes/hand_hinge.mesh"
materials: [plastic_material]
Model {
id: hand
x: 3.35649e-06
y: 2.38419e-07
z: 0.366503
source: "meshes/hand.mesh"
materials: [plastic_material, steel_material]
Model {
id: hand_grab_t_hinge_2
x: -9.5112e-07
y: 0.323057
z: 0.472305
eulerRotation: hand_grab_t_hinge_1.eulerRotation
source: "meshes/hand_grab_t_hinge_2.mesh"
materials: [steel_material]
}
Model {
id: hand_grab_t_hinge_1
x: -9.3061e-07
y: 0.143685
z: 0.728553
eulerRotation.x: clawsAngle * -1
source: "meshes/hand_grab_t_hinge_1.mesh"
materials: [steel_material]
Model {
id: hand_grab_t
x: -2.42588e-06
y: -0.0327932
z: 0.414757
eulerRotation.x: hand_grab_t_hinge_1.eulerRotation.x * -1
source: "meshes/hand_grab_t.mesh"
materials: [plastic_color_material, steel_material]
}
}
Model {
id: hand_grab_b_hinge_1
x: -9.38738e-07
y: -0.143685
z: 0.728553
eulerRotation.x: clawsAngle
source: "meshes/hand_grab_b_hinge_1.mesh"
materials: [steel_material]
Model {
id: hand_grab_b
x: -2.41775e-06
y: 0.0327224
z: 0.413965
eulerRotation.x: hand_grab_b_hinge_1.eulerRotation.x * -1
source: "meshes/hand_grab_b.mesh"
materials: [plastic_color_material, steel_material]
}
}
Model {
id: hand_grab_b_hinge_2
x: -9.5112e-07
y: -0.323058
z: 0.472305
eulerRotation: hand_grab_b_hinge_1.eulerRotation
source: "meshes/hand_grab_b_hinge_2.mesh"
materials: [steel_material]
}
}
}
}
}