UNPKG

wonder.js

Version:
52 lines (47 loc) 2.65 kB
'use strict'; var Caml_array = require("bs-platform/lib/js/caml_array.js"); var OptionService$Wonderjs = require("../../../../atom/OptionService.js"); var RecordTransformMainService$Wonderjs = require("../../transform/RecordTransformMainService.js"); var ModelMatrixTransformService$Wonderjs = require("../../../../record/main/transform/ModelMatrixTransformService.js"); var OperateFlyCameraControllerService$Wonderjs = require("../../../../record/main/camera_controller/fly/OperateFlyCameraControllerService.js"); function getLocalEulerAngleOrInit(transformComponent, state) { var flyCameraControllerRecord = state[/* flyCameraControllerRecord */26]; var match = OperateFlyCameraControllerService$Wonderjs.getLocalEulerAngle(transformComponent, flyCameraControllerRecord); if (match !== undefined) { var match$1 = match; return /* tuple */[ /* tuple */[ match$1[0], match$1[1], match$1[2] ], state ]; } else { var localEulerAngle = ModelMatrixTransformService$Wonderjs.getLocalEulerAnglesTuple(transformComponent, RecordTransformMainService$Wonderjs.getRecord(state)[/* localRotations */4]); var flyCameraControllerRecord$1 = OperateFlyCameraControllerService$Wonderjs.setLocalEulerAngle(transformComponent, localEulerAngle, flyCameraControllerRecord); var newrecord = Caml_array.caml_array_dup(state); return /* tuple */[ localEulerAngle, (newrecord[/* flyCameraControllerRecord */26] = flyCameraControllerRecord$1, newrecord) ]; } } function getLocalEulerAngleWithDiffValueAndSetToMap(transformComponent, param, state) { var flyCameraControllerRecord = state[/* flyCameraControllerRecord */26]; var match = getLocalEulerAngleOrInit(transformComponent, state); var match$1 = match[0]; var flyCameraControllerRecord$1 = OperateFlyCameraControllerService$Wonderjs.setLocalEulerAngle(transformComponent, /* tuple */[ match$1[0] - param[0], match$1[1] - param[1], match$1[2] ], flyCameraControllerRecord); var newrecord = Caml_array.caml_array_dup(match[1]); return /* tuple */[ OptionService$Wonderjs.unsafeGet(OperateFlyCameraControllerService$Wonderjs.getLocalEulerAngle(transformComponent, flyCameraControllerRecord$1)), (newrecord[/* flyCameraControllerRecord */26] = flyCameraControllerRecord$1, newrecord) ]; } exports.getLocalEulerAngleOrInit = getLocalEulerAngleOrInit; exports.getLocalEulerAngleWithDiffValueAndSetToMap = getLocalEulerAngleWithDiffValueAndSetToMap; /* OptionService-Wonderjs Not a pure module */