@awayjs/core
Version:
AwayJS core classes
112 lines • 3.11 kB
TypeScript
import { Transform } from '../base/Transform';
import { Matrix3D } from '../geom/Matrix3D';
import { Vector3D } from '../geom/Vector3D';
import { EventDispatcher } from '../events/EventDispatcher';
import { CoordinateSystem } from './CoordinateSystem';
import { Rectangle } from '../geom/Rectangle';
import { Plane3D } from '../geom/Plane3D';
export declare class ProjectionBase extends EventDispatcher {
protected _viewMatrix3D: Matrix3D;
protected _inverseViewMatrix3D: Matrix3D;
protected _frustumMatrix3D: Matrix3D;
protected _near: number;
protected _far: number;
protected _scale: number;
protected _ratio: number;
protected _transform: Transform;
protected _coordinateSystem: CoordinateSystem;
protected _originX: number;
protected _originY: number;
protected _frustumRect: Rectangle;
private _viewFrustumCorners;
private _viewFrustumPlanes;
private _propertiesDirty;
private _viewMatrix3DDirty;
private _inverseViewMatrix3DDirty;
protected _frustumMatrix3DDirty: boolean;
private _viewFrustumCornersDirty;
private _viewFrustumPlanesDirty;
private _onInvalidateConcatenatedMatrix3DDelegate;
constructor(coordinateSystem?: CoordinateSystem);
get transform(): Transform;
set transform(value: Transform);
/**
* The handedness of the coordinate system projection. The default is LEFT_HANDED.
*/
get coordinateSystem(): CoordinateSystem;
set coordinateSystem(value: CoordinateSystem);
/**
*
*/
get scale(): number;
set scale(value: number);
/**
*
*/
get ratio(): number;
set ratio(value: number);
/**
*
* @returns {Matrix3D}
*/
get frustumMatrix3D(): Matrix3D;
set frustumMatrix3D(value: Matrix3D);
/**
*
* @returns {number[]}
*/
get viewFrustumCorners(): number[];
/**
*
*/
get viewFrustumPlanes(): Array<Plane3D>;
/**
*
* @returns {number}
*/
get near(): number;
set near(value: number);
/**
*
* @returns {number}
*/
get originX(): number;
set originX(value: number);
/**
*
* @returns {number}
*/
get originY(): number;
set originY(value: number);
/**
*
* @returns {number}
*/
get far(): number;
set far(value: number);
get frustumRect(): Rectangle;
/**
*
* @param position
* @param target
*/
project(position: Vector3D, target?: Vector3D): Vector3D;
/**
*
* @param nX
* @param nY
* @param sZ
* @param target
*/
unproject(nX: number, nY: number, sZ: number, target?: Vector3D): Vector3D;
get viewMatrix3D(): Matrix3D;
get inverseViewMatrix3D(): Matrix3D;
clone(): ProjectionBase;
private _invalidateProperties;
private _invalidateViewMatrix3D;
protected _invalidateFrustumMatrix3D(): void;
protected _updateFrustumMatrix3D(): void;
protected _updateProperties(): void;
private _onInvalidateConcatenatedMatrix3D;
}
//# sourceMappingURL=ProjectionBase.d.ts.map