delta = {
let delta = [];
for(let i = 0; i<mov.length-1;++i) {
let C0 = new THREE.Vector3(mov[i].x0,mov[i].y0,mov[i].z0);
let B0 = new THREE.Vector3(mov[i].x1,mov[i].y1,mov[i].z1);
let A0 = new THREE.Vector3(mov[i].x2,mov[i].y2,mov[i].z2);
let C1 = new THREE.Vector3(mov[i+1].x0,mov[i+1].y0,mov[i+1].z0);
let B1 = new THREE.Vector3(mov[i+1].x1,mov[i+1].y1,mov[i+1].z1);
let A1 = new THREE.Vector3(mov[i+1].x2,mov[i+1].y2,mov[i+1].z2);
let u0 = B0.sub(C0);
let v0 = A0.sub(B0);
let u1 = B1.sub(C1);
let v1 = A1.sub(B1);
let u0n = u0.clone().normalize();
let u1n = u1.clone().normalize();
let q = new THREE.Quaternion();
q.setFromUnitVectors(u0n,u1n);
let alpha = (Math.PI-u1.angleTo(v1))-(Math.PI-u0.angleTo(v0));
let beta = orientedAngle(v0.clone().applyQuaternion(q),v1.clone(),u1n);
delta.push( {rot: q, alpha: alpha, beta: beta} );
}
return delta;
}