UNPKG

wonder.js

Version:
26 lines (21 loc) 1.54 kB
'use strict'; var QuaternionService$Wonderjs = require("../../../atom/QuaternionService.js"); var RecordTransformMainService$Wonderjs = require("./RecordTransformMainService.js"); var ModelMatrixTransformService$Wonderjs = require("../../../record/main/transform/ModelMatrixTransformService.js"); function rotateLocalOnAxis(transform, param, state) { var rot = QuaternionService$Wonderjs.setFromAxisAngle(param[0], param[1]); var transformRecord = RecordTransformMainService$Wonderjs.getRecord(state); var localRotations = transformRecord[/* localRotations */4]; state[/* transformRecord */11] = ModelMatrixTransformService$Wonderjs.setLocalRotationByTuple(transform, QuaternionService$Wonderjs.multiply(ModelMatrixTransformService$Wonderjs.getLocalRotationTuple(transform, localRotations), rot), transformRecord); return state; } function rotateWorldOnAxis(transform, param, state) { var rot = QuaternionService$Wonderjs.setFromAxisAngle(param[0], param[1]); var transformRecord = RecordTransformMainService$Wonderjs.getRecord(state); var localRotations = transformRecord[/* localRotations */4]; state[/* transformRecord */11] = ModelMatrixTransformService$Wonderjs.setLocalRotationByTuple(transform, QuaternionService$Wonderjs.multiply(rot, ModelMatrixTransformService$Wonderjs.getLocalRotationTuple(transform, localRotations)), transformRecord); return state; } exports.rotateLocalOnAxis = rotateLocalOnAxis; exports.rotateWorldOnAxis = rotateWorldOnAxis; /* RecordTransformMainService-Wonderjs Not a pure module */