local vec3 = require "vec3" local transf = require "transf" local posX = 11.71 -- Coordonnée sur l'axe X de la rangée de siège la plus à l'avant (ou à l'arrière si vous préfèrez) local posY1 = 0.97 -- Coordonnée sur l'axe Y des 4 (Y1, Y2, Y3 et Y4) sièges d'une rangée local posY2 = 0.55 local posY3 = -0.55 local posY4 = -0.97 local corrY = 0.075 -- l'axe des passagers n'étant pas centré, quand on les retournes pour les sièges qui font dos à la marche, ils sont décalés, cette valeur permet de corriger ce problème. Elle ne change jamais. local posZ = 1.37 -- Hauteur d'assise des passagers function data() { ... }, transportVehicle = { ... seats = { { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX, posY1+corrY, posZ))}, -- premier groupe de 4 sièges orienté dans le sens inverse du sens de marche { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-0.9, posY1+corrY, posZ))}, -- deuxième groupe de 4 sièges orienté en sens inverse, je soustrais à posX l'écart entre les sièges { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-0.9, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-0.9, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-0.9, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-1.8, posY1+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-1.8, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-1.8, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-1.8, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-16.87, posY1+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-16.87, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-16.87, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-16.87, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-17.77, posY1+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-17.77, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-17.77, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-17.77, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-18.67, posY1+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-18.67, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-18.67, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-18.67, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-19.57, posY1+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-19.57, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-19.57, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-19.57, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-20.47, posY1+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-20.47, posY2+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-20.47, posY3+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(posX-20.47, posY4+corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-2.99, posY1-corrY, posZ))}, -- On change le signe de corrY quand on retourne les passagers { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-2.99, posY2-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-2.99, posY3-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-2.99, posY4-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-3.89, posY1-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-3.89, posY2-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-3.89, posY3-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-3.89, posY4-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-4.79, posY1-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-4.79, posY4-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-21.66, posY1-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-21.66, posY2-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-21.66, posY3-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-21.66, posY4-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-22.56, posY1-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-22.56, posY2-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-22.56, posY3-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-22.56, posY4-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-23.46, posY1-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-23.46, posY2-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-23.46, posY3-corrY, posZ))}, { group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(posX-23.46, posY4-corrY, posZ))}, }, }, }, } end