UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

24 lines (23 loc) 862 B
"use strict"; import { isNumber } from "../../Type"; import { CameraAttribute } from "../CoreCamera"; import { CameraFrameMode, CAMERA_FRAME_MODES } from "../CoreCameraFrameMode"; import { coreObjectClassFactory } from "../../geometry/CoreObjectFactory"; export class BaseCoreCameraFrameMode { static frameMode(camera) { return this._getFrameMode(camera) || CameraFrameMode.DEFAULT; } static expectedAspectRatio(camera) { return coreObjectClassFactory(camera).attribValue(camera, CameraAttribute.FRAME_MODE_EXPECTED_ASPECT_RATIO); } static _getFrameMode(camera) { const frameModeAttribVal = coreObjectClassFactory(camera).attribValue(camera, CameraAttribute.FRAME_MODE); if (!frameModeAttribVal) { return; } if (!isNumber(frameModeAttribVal)) { return; } return CAMERA_FRAME_MODES[frameModeAttribVal]; } }