Created
April 17, 2020 00:35
-
-
Save mayakraft/8d12172a673e9f7f65b1f2a8566e1f58 to your computer and use it in GitHub Desktop.
two
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var degtorad = Math.PI / 180; | |
function makeRotationMatrix(alpha, beta, gamma) { | |
var _x = beta ? beta * degtorad : 0; | |
var _y = gamma ? gamma * degtorad : 0; | |
var _z = alpha ? alpha * degtorad : 0; | |
var cX = Math.cos( _x ); | |
var cY = Math.cos( _y ); | |
var cZ = Math.cos( _z ); | |
var sX = Math.sin( _x ); | |
var sY = Math.sin( _y ); | |
var sZ = Math.sin( _z ); | |
// | |
// ZXY-ordered rotation matrix construction. | |
// | |
var m11 = cZ * cY - sZ * sX * sY; | |
var m12 = - cX * sZ; | |
var m13 = cY * sZ * sX + cZ * sY; | |
var m21 = cY * sZ + cZ * sX * sY; | |
var m22 = cZ * cX; | |
var m23 = sZ * sY - cZ * cY * sX; | |
var m31 = - cX * sY; | |
var m32 = sX; | |
var m33 = cX * cY; | |
return [ | |
m11, m12, m13, 0, | |
m21, m22, m23, 0, | |
m31, m32, m33, 0, | |
0, 0, 0, 1 | |
]; | |
}; | |
function handleOrientation(e) { | |
let matrix = makeRotationMatrix(e.alpha, e.beta, e.gamma); | |
if (matrix) { | |
} | |
} | |
function getPermission() { | |
if (typeof DeviceOrientationEvent.requestPermission === "function") { | |
DeviceOrientationEvent.requestPermission() | |
.then(permissionState => { | |
if (permissionState === "granted") { | |
window.addEventListener("deviceorientation", handleOrientation); | |
} | |
}).catch(console.error); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment