UNPKG

awayjs-display

Version:
73 lines (72 loc) 2.36 kB
import ControllerBase from "../controllers/ControllerBase"; import DisplayObject from "../display/DisplayObject"; /** * Extended camera used to hover round a specified target object. * * @see away3d.containers.View3D */ declare class FirstPersonController extends ControllerBase { _iCurrentPanAngle: number; _iCurrentTiltAngle: number; private _panAngle; private _tiltAngle; private _minTiltAngle; private _maxTiltAngle; private _steps; private _walkIncrement; private _strafeIncrement; private _wrapPanAngle; fly: boolean; /** * Fractional step taken each time the <code>hover()</code> method is called. Defaults to 8. * * Affects the speed at which the <code>tiltAngle</code> and <code>panAngle</code> resolve to their targets. * * @see #tiltAngle * @see #panAngle */ steps: number; /** * Rotation of the camera in degrees around the y axis. Defaults to 0. */ panAngle: number; /** * Elevation angle of the camera in degrees. Defaults to 90. */ tiltAngle: number; /** * Minimum bounds for the <code>tiltAngle</code>. Defaults to -90. * * @see #tiltAngle */ minTiltAngle: number; /** * Maximum bounds for the <code>tiltAngle</code>. Defaults to 90. * * @see #tiltAngle */ maxTiltAngle: number; /** * Defines whether the value of the pan angle wraps when over 360 degrees or under 0 degrees. Defaults to false. */ wrapPanAngle: boolean; /** * Creates a new <code>HoverController</code> object. */ constructor(targetObject?: DisplayObject, panAngle?: number, tiltAngle?: number, minTiltAngle?: number, maxTiltAngle?: number, steps?: number, wrapPanAngle?: boolean); /** * Updates the current tilt angle and pan angle values. * * Values are calculated using the defined <code>tiltAngle</code>, <code>panAngle</code> and <code>steps</code> variables. * * @param interpolate If the update to a target pan- or tiltAngle is interpolated. Default is true. * * @see #tiltAngle * @see #panAngle * @see #steps */ update(interpolate?: boolean): void; incrementWalk(val: number): void; incrementStrafe(val: number): void; } export default FirstPersonController;