3 #include "vehicletype.h"
9 Axle3D::Axle3D(const Vehicle3D &v, unsigned a):
10 VehiclePart3D(v, *v.get_type().get_fixed_axle_object(a)),
12 axle(vehicle.get_vehicle().get_fixed_axle(a))
15 Axle3D::Axle3D(const Vehicle3D &v, unsigned b, unsigned a):
16 VehiclePart3D(v, *v.get_type().get_bogie_axle_object(b, a)),
17 bogie(&vehicle.get_vehicle().get_bogie(b)),
21 void Axle3D::update_matrix()
23 matrix = vehicle.Object3D::get_matrix();
27 matrix.translate(bogie->type->position, 0, 0);
28 matrix.rotate(bogie->direction, 0, 0, 1);
31 matrix.translate(axle.type->position, 0, axle.type->wheel_dia/2);
32 matrix.rotate(axle.angle, 0, 1, 0);