@ar-js-org/ar.js-threejs
Version:
AR.js (THREEx, ARjs) modular package - Typescript version
46 lines (41 loc) • 1.5 kB
text/typescript
import { PerspectiveCamera } from "three";
export class Utils {
constructor() { }
/**
* Create a default rendering camera for this trackingBackend. They may be modified later. to fit physical camera parameters
*
* @param {string} trackingBackend - the tracking to user
* @return {THREE.Camera} the created camera
*/
static createDefaultCamera(trackingMethod: string) {
var trackingBackend =
Utils.parseTrackingMethod(trackingMethod).trackingBackend;
// Create a camera
if (trackingBackend === "artoolkit") {
var camera = new PerspectiveCamera();
} else console.assert(false, "unknown trackingBackend: " + trackingBackend);
return camera;
};
/**
* parse tracking method
*
* @param {String} trackingMethod - the tracking method to parse
* @return {Object} - various field of the tracking method
*/
static parseTrackingMethod(trackingMethod: string) {
if (trackingMethod === "best") {
trackingMethod = "area-artoolkit";
}
if (trackingMethod.startsWith("area-")) {
return {
trackingBackend: trackingMethod.replace("area-", ""),
markersAreaEnabled: true,
};
} else {
return {
trackingBackend: trackingMethod,
markersAreaEnabled: false,
};
}
};
}