mylingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
79 lines (78 loc) • 2.94 kB
TypeScript
import { PerspectiveCamera } from "three";
import ObjectManager from "../ObjectManager";
import pillShape from "../PhysicsObjectManager/cannon/shapes/pillShape";
import ICameraBase, { MouseControl } from "../../../interface/ICameraBase";
import { Point3d } from "@lincode/math";
import { Reactive } from "@lincode/reactivity";
import MeshItem from "../MeshItem";
export default abstract class CameraBase<T extends PerspectiveCamera> extends ObjectManager implements ICameraBase {
protected camera: T;
protected _physicsShape: typeof pillShape;
protected midObject3d: import("three").Object3D<import("three").Event>;
constructor(camera: T);
lookAt(target: MeshItem | Point3d): void;
lookAt(x: number, y: number | undefined, z: number): void;
get fov(): number;
set fov(val: number);
get zoom(): number;
set zoom(val: number);
get near(): number;
set near(val: number);
get far(): number;
set far(val: number);
get active(): boolean;
set active(val: boolean);
get transition(): number | boolean | undefined;
set transition(val: number | boolean | undefined);
get bokeh(): any;
set bokeh(val: any);
get bokehFocus(): any;
set bokehFocus(val: any);
get bokehMaxBlur(): any;
set bokehMaxBlur(val: any);
get bokehAperture(): any;
set bokehAperture(val: any);
protected getRay(): import("three").Ray;
append(object: MeshItem): void;
attach(object: MeshItem): void;
get width(): number;
set width(val: number);
get height(): number;
set height(val: number);
get depth(): number;
set depth(val: number);
protected orbitMode?: boolean;
private _gyrate;
private gyrateHandle?;
gyrate(movementX: number, movementY: number, noDamping?: boolean): void;
private static updateAngle;
protected updateAngle(): void;
private _minPolarAngle;
get minPolarAngle(): number;
set minPolarAngle(val: number);
private _maxPolarAngle;
get maxPolarAngle(): number;
set maxPolarAngle(val: number);
private _minAzimuthAngle;
get minAzimuthAngle(): number;
set minAzimuthAngle(val: number);
private _maxAzimuthAngle;
get maxAzimuthAngle(): number;
set maxAzimuthAngle(val: number);
setPolarAngle(angle: number): void;
setAzimuthAngle(angle: number): void;
private _polarAngle?;
get polarAngle(): number | undefined;
set polarAngle(val: number | undefined);
private _azimuthAngle?;
get azimuthAngle(): number | undefined;
set azimuthAngle(val: number | undefined);
enableDamping: boolean;
protected mouseControlState: Reactive<MouseControl>;
private mouseControlInit?;
get mouseControl(): MouseControl;
set mouseControl(val: MouseControl);
private _gyroControl?;
get gyroControl(): boolean;
set gyroControl(val: boolean);
}