Threejs test

CSS

body {
    overflow: hidden;
}

JavaScript

var camera, scene, renderer;
var geometry, material, mesh;



var eulerOrder = "XYZ";

const DEG2RAD = Math.PI / 180;
const RAD2DEG = 180 / Math.PI;

function radToDeg( radians ) {

	return radians * RAD2DEG;

}

//var q1 = new THREE.Quaternion( 0.003767564194276929, -0.008624134585261345, -0.016449201852083206, 0.9998204112052917 );
//var q1 = new THREE.Quaternion( 0.0024969051592051983, -0.004433812573552132, -0.6778653860092163, 0.73516845703125 );
var q1 = new THREE.Quaternion(0.02060599811375141, 0.021557066589593887, 0.8863955140113831, -0.46196720004081726 );

                                
                                
// create Euler directly from a Quaternion
var euler = new THREE.Euler().setFromQuaternion( q1, eulerOrder ); 

var d = euler.z;
console.log(d);

console.log(radToDeg(d));

console.log(180+90+radToDeg(d));

// the results here are different
// console.log( eViaQ1 );  // this result is wrong