UNPKG

timeline-state-resolver

Version:
101 lines 3.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ViscaValueConverter = void 0; const timeline_state_resolver_types_1 = require("timeline-state-resolver-types"); const ConnectionEnums = require("../enums"); class ViscaValueConverter { // -- to -- mapPanTiltSpeedToVisca(panTiltSpeed) { return Math.round(Math.abs(panTiltSpeed) * 24); } mapPanTiltSpeedToViscaDirection(panSpeed, tiltSpeed) { let horizontalDirection; let verticalDirection; if (panSpeed < 0) { horizontalDirection = 'left'; } else if (panSpeed > 0) { horizontalDirection = 'right'; } if (tiltSpeed < 0) { verticalDirection = 'down'; } else if (tiltSpeed > 0) { verticalDirection = 'up'; } switch (horizontalDirection) { case 'left': switch (verticalDirection) { case 'up': return ConnectionEnums.PanTiltDirection.UpLeft; case 'down': return ConnectionEnums.PanTiltDirection.DownLeft; default: return ConnectionEnums.PanTiltDirection.Left; } case 'right': switch (verticalDirection) { case 'up': return ConnectionEnums.PanTiltDirection.UpRight; case 'down': return ConnectionEnums.PanTiltDirection.DownRight; default: return ConnectionEnums.PanTiltDirection.Right; } default: switch (verticalDirection) { case 'up': return ConnectionEnums.PanTiltDirection.Up; case 'down': return ConnectionEnums.PanTiltDirection.Down; default: return ConnectionEnums.PanTiltDirection.Stop; } } } mapZoomSpeedToVisca(zoomSpeed) { return Math.round(Math.abs(zoomSpeed) * 7); } mapZoomSpeedToViscaDirection(zoomSpeed) { if (zoomSpeed > 0) return ConnectionEnums.ZoomDirection.TeleVariable; if (zoomSpeed < 0) return ConnectionEnums.ZoomDirection.WideVariable; return ConnectionEnums.ZoomDirection.Stop; } mapFocusSpeedToVisca(focusSpeed) { return Math.round(Math.abs(focusSpeed) * 7); } mapFocusModeToVisca(focusMode) { if (focusMode === timeline_state_resolver_types_1.FocusMode.AUTO) return ConnectionEnums.FocusMode.Auto; return ConnectionEnums.FocusMode.Manual; } // -- from -- mapFocusSpeedToViscaDirection(focusSpeed) { if (focusSpeed > 0) return ConnectionEnums.FocusDirection.FarVariable; if (focusSpeed < 0) return ConnectionEnums.FocusDirection.NearVariable; return ConnectionEnums.FocusDirection.Stop; } mapFocusPositionFromVisca(focusPosition) { return focusPosition / 0xffff; } mapZoomPositionFromVisca(zoomPosition) { return zoomPosition / 0x6000; } mapPanTiltPositionFromVisca(position) { return { panPosition: position.panPosition / 0x14bbc, tiltPosition: position.tiltPosition / 0x14bbc, }; } mapFocusModeFromVisca(focusMode) { if (focusMode === ConnectionEnums.FocusMode.Auto) return timeline_state_resolver_types_1.FocusMode.AUTO; return timeline_state_resolver_types_1.FocusMode.MANUAL; } } exports.ViscaValueConverter = ViscaValueConverter; //# sourceMappingURL=ViscaValueConverter.js.map