mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-22 20:39:17 +08:00
Updated to three.js r71.
This commit is contained in:
185
threejs/three.d.ts
vendored
185
threejs/three.d.ts
vendored
@@ -1,4 +1,4 @@
|
||||
// Type definitions for three.js r70
|
||||
// Type definitions for three.js r71
|
||||
// Project: http://mrdoob.github.com/three.js/
|
||||
// Definitions by: Kon <http://phyzkit.net/>, Satoru Kimura <https://github.com/gyohk>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
@@ -129,6 +129,7 @@ declare module THREE {
|
||||
export var IntType: TextureDataType;
|
||||
export var UnsignedIntType: TextureDataType;
|
||||
export var FloatType: TextureDataType;
|
||||
export var HalfFloatType: TextureDataType;
|
||||
|
||||
// Pixel types
|
||||
export enum PixelType { }
|
||||
@@ -159,6 +160,12 @@ declare module THREE {
|
||||
export var RGBA_PVRTC_4BPPV1_Format: CompressedPixelFormat;
|
||||
export var RGBA_PVRTC_2BPPV1_Format: CompressedPixelFormat;
|
||||
|
||||
// log handlers
|
||||
export function warn(message?: any, ...optionalParams: any[]): void;
|
||||
export function error(message?: any, ...optionalParams: any[]): void;
|
||||
export function log(message?: any, ...optionalParams: any[]): void;
|
||||
|
||||
|
||||
// Cameras ////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
@@ -364,7 +371,7 @@ declare module THREE {
|
||||
length: number;
|
||||
|
||||
copyAt(index1: number, attribute: BufferAttribute, index2: number): void;
|
||||
set(value: number): BufferAttribute;
|
||||
set(value: number, offset?: number): BufferAttribute;
|
||||
setX(index: number, x: number): BufferAttribute;
|
||||
setY(index: number, y: number): BufferAttribute;
|
||||
setZ(index: number, z: number): BufferAttribute;
|
||||
@@ -456,8 +463,7 @@ declare module THREE {
|
||||
*/
|
||||
applyMatrix(matrix: Matrix4): void;
|
||||
|
||||
// this method is currently empty.
|
||||
center(): void;
|
||||
center(): Vector3;
|
||||
|
||||
fromGeometry( geometry: Geometry, settings?: any ): BufferGeometry;
|
||||
|
||||
@@ -488,7 +494,7 @@ declare module THREE {
|
||||
*/
|
||||
computeTangents(): void;
|
||||
|
||||
computeOffsets(indexBufferSize: number): void;
|
||||
computeOffsets(size: number): void;
|
||||
merge(geometry: BufferGeometry, offset: number): BufferGeometry;
|
||||
normalizeNormals(): void;
|
||||
reorderBuffers(indexBuffer: number, indexMap: number[], vertexCount: number): void;
|
||||
@@ -569,6 +575,17 @@ declare module THREE {
|
||||
getDelta(): number;
|
||||
}
|
||||
|
||||
export class DynamicBufferAttribute extends BufferAttribute{
|
||||
constructor(array: any, itemSize: number);
|
||||
|
||||
updateRange: {
|
||||
offset: number;
|
||||
count: number;
|
||||
}
|
||||
|
||||
clone(): DynamicBufferAttribute;
|
||||
}
|
||||
|
||||
/**
|
||||
* JavaScript events for custom objects
|
||||
*
|
||||
@@ -1065,6 +1082,8 @@ declare module THREE {
|
||||
*/
|
||||
frustumCulled: boolean;
|
||||
|
||||
renderOrder: number;
|
||||
|
||||
/**
|
||||
* An object that can be used to store custom data about the Object3d. It should not hold references to functions as these will not be cloned.
|
||||
*/
|
||||
@@ -1193,23 +1212,21 @@ declare module THREE {
|
||||
remove(object: Object3D): void;
|
||||
|
||||
/* deprecated */
|
||||
getChildByName( name: string, recursive?: boolean ): Object3D;
|
||||
getChildByName( name: string ): Object3D;
|
||||
|
||||
/**
|
||||
* Searches through the object's children and returns the first with a matching id, optionally recursive.
|
||||
* @param id Unique number of the object instance
|
||||
* @param recursive Boolean whether to search through the children's children. Default is false.
|
||||
*/
|
||||
getObjectById(id: string, recursive: boolean): Object3D;
|
||||
getObjectById(id: string): Object3D;
|
||||
|
||||
/**
|
||||
* Searches through the object's children and returns the first with a matching name, optionally recursive.
|
||||
* @param name String to match to the children's Object3d.name property.
|
||||
* @param recursive Boolean whether to search through the children's children. Default is false.
|
||||
*/
|
||||
getObjectByName(name: string, recursive?: boolean): Object3D;
|
||||
getObjectByName(name: string): Object3D;
|
||||
|
||||
getObjectByProperty( name: string, value: string, recursive?: boolean ): Object3D;
|
||||
getObjectByProperty( name: string, value: string ): Object3D;
|
||||
|
||||
getWorldPosition(optionalTarget?: Vector3): Vector3;
|
||||
getWorldQuaternion(optionalTarget?: Quaternion): Quaternion;
|
||||
@@ -1521,7 +1538,7 @@ declare module THREE {
|
||||
* scene.add( light );
|
||||
*/
|
||||
export class PointLight extends Light {
|
||||
constructor(hex?: number, intensity?: number, distance?: number);
|
||||
constructor(hex?: number, intensity?: number, distance?: number, decay?: number);
|
||||
|
||||
/*
|
||||
* Light's intensity.
|
||||
@@ -1535,6 +1552,8 @@ declare module THREE {
|
||||
*/
|
||||
distance: number;
|
||||
|
||||
decay: number;
|
||||
|
||||
clone(): PointLight;
|
||||
}
|
||||
|
||||
@@ -1554,7 +1573,7 @@ declare module THREE {
|
||||
* scene.add( spotLight );
|
||||
*/
|
||||
export class SpotLight extends Light {
|
||||
constructor(hex?: number, intensity?: number, distance?: number, angle?: number, exponent?: number);
|
||||
constructor(hex?: number, intensity?: number, distance?: number, angle?: number, exponent?: number, decay?: number);
|
||||
|
||||
/**
|
||||
* Spotlight focus points at target.position.
|
||||
@@ -1586,6 +1605,8 @@ declare module THREE {
|
||||
*/
|
||||
exponent: number;
|
||||
|
||||
decay: number;
|
||||
|
||||
/**
|
||||
* If set to true light will cast dynamic shadows. Warning: This is expensive and requires tweaking to get shadows looking right.
|
||||
* Default — false.
|
||||
@@ -1744,9 +1765,7 @@ declare module THREE {
|
||||
parse(json: any): BufferGeometry;
|
||||
}
|
||||
|
||||
export class Cache{
|
||||
constructor();
|
||||
|
||||
export interface Cache{
|
||||
files: any[];
|
||||
|
||||
add(key: string, file: any): void;
|
||||
@@ -1754,6 +1773,7 @@ declare module THREE {
|
||||
remove(key: string): void;
|
||||
clear(): void;
|
||||
}
|
||||
export var Cache:Cache;
|
||||
|
||||
export class CompressedTextureLoader{
|
||||
constructor();
|
||||
@@ -1856,14 +1876,18 @@ declare module THREE {
|
||||
constructor(manager?: LoadingManager);
|
||||
|
||||
manager: LoadingManager;
|
||||
crossOrigin: string;
|
||||
texturePass: string;
|
||||
|
||||
load(url: string, onLoad: (object: Object3D) => void): void;
|
||||
load(url: string, onLoad?: (object: Object3D) => void): void;
|
||||
setTexturePath( value: string ): void;
|
||||
setCrossOrigin(crossOrigin: string): void;
|
||||
parse<T extends Object3D>(json: any): T;
|
||||
parse<T extends Object3D>(json: any, onLoad?: (object: Object3D) => void): T;
|
||||
parseGeometries(json: any): any[]; // Array of BufferGeometry or Geometry or Geometry2.
|
||||
parseMaterials(json: any): Material[]; // Array of Classes that inherits from Matrial.
|
||||
parseMaterials(json: any, textures: Texture[]): Material[]; // Array of Classes that inherits from Matrial.
|
||||
parseImages( json: any, onLoad: () => void ): any[];
|
||||
parseTextures( json: any, images: any ): Texture[];
|
||||
parseObject<T extends Object3D>(data: any, geometries: any[], materials: Material[]): T;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1976,6 +2000,10 @@ declare module THREE {
|
||||
*/
|
||||
blendEquation: BlendingEquation;
|
||||
|
||||
blendSrcAlpha: number;
|
||||
blendDstAlpha: number;
|
||||
blendEquationAlpha: number;
|
||||
|
||||
/**
|
||||
* Whether to have depth test enabled when rendering this material. Default is true.
|
||||
*/
|
||||
@@ -1987,6 +2015,8 @@ declare module THREE {
|
||||
*/
|
||||
depthWrite: boolean;
|
||||
|
||||
colorWrite: boolean;
|
||||
|
||||
/**
|
||||
* Whether to use polygon offset. Default is false. This corresponds to the POLYGON_OFFSET_FILL WebGL feature.
|
||||
*/
|
||||
@@ -2026,6 +2056,7 @@ declare module THREE {
|
||||
setValues(values: Object): void;
|
||||
toJSON(): any;
|
||||
clone(material?:Material): Material;
|
||||
update(): void;
|
||||
dispose(): void;
|
||||
|
||||
// EventDispatcher mixins
|
||||
@@ -2156,7 +2187,6 @@ declare module THREE {
|
||||
|
||||
export interface MeshLambertMaterialParameters extends MaterialParameters{
|
||||
color?: number;
|
||||
ambient?: number;
|
||||
emissive?: number;
|
||||
wrapAround?: boolean;
|
||||
wrapRGB?: Vector3;
|
||||
@@ -2183,7 +2213,6 @@ declare module THREE {
|
||||
export class MeshLambertMaterial extends Material {
|
||||
constructor(parameters?: MeshLambertMaterialParameters);
|
||||
color: Color;
|
||||
ambient: Color;
|
||||
emissive: Color;
|
||||
wrapAround: boolean;
|
||||
wrapRGB: Vector3;
|
||||
@@ -2210,7 +2239,6 @@ declare module THREE {
|
||||
}
|
||||
|
||||
export interface MeshNormalMaterialParameters extends MaterialParameters{
|
||||
shading?: Shading;
|
||||
wireframe?: boolean;
|
||||
wireframeLinewidth?: number;
|
||||
morphTargets?: boolean;
|
||||
@@ -2219,7 +2247,6 @@ declare module THREE {
|
||||
export class MeshNormalMaterial extends Material {
|
||||
constructor(parameters?: MeshNormalMaterialParameters);
|
||||
|
||||
shading: Shading;
|
||||
wireframe: boolean;
|
||||
wireframeLinewidth: number;
|
||||
morphTargets: boolean;
|
||||
@@ -2229,7 +2256,6 @@ declare module THREE {
|
||||
|
||||
export interface MeshPhongMaterialParameters extends MaterialParameters{
|
||||
color?: number; // diffuse
|
||||
ambient?: number;
|
||||
emissive?: number;
|
||||
specular?: number;
|
||||
shininess?: number;
|
||||
@@ -2264,7 +2290,6 @@ declare module THREE {
|
||||
constructor(parameters?: MeshPhongMaterialParameters);
|
||||
|
||||
color: Color; // diffuse
|
||||
ambient: Color;
|
||||
emissive: Color;
|
||||
specular: Color;
|
||||
shininess: number;
|
||||
@@ -2531,13 +2556,13 @@ declare module THREE {
|
||||
* Copies given color making conversion from gamma to linear space.
|
||||
* @param color Color to copy.
|
||||
*/
|
||||
copyGammaToLinear(color: Color): Color;
|
||||
copyGammaToLinear(color: Color, gammaFactor?: number): Color;
|
||||
|
||||
/**
|
||||
* Copies given color making conversion from linear to gamma space.
|
||||
* @param color Color to copy.
|
||||
*/
|
||||
copyLinearToGamma(color: Color): Color;
|
||||
copyLinearToGamma(color: Color, gammaFactor?: number): Color;
|
||||
|
||||
/**
|
||||
* Converts this color from gamma to linear space.
|
||||
@@ -2577,7 +2602,7 @@ declare module THREE {
|
||||
lerp(color: Color, alpha: number): Color;
|
||||
equals(color: Color): boolean;
|
||||
fromArray(rgb: number[]): Color;
|
||||
toArray(): number[];
|
||||
toArray(array?: number[], offset?: number): number[];
|
||||
|
||||
/**
|
||||
* Clones this color.
|
||||
@@ -2751,7 +2776,7 @@ declare module THREE {
|
||||
reorder(newOrder: string): Euler;
|
||||
equals(euler: Euler): boolean;
|
||||
fromArray(xyzo: any[]): Euler;
|
||||
toArray(): any[];
|
||||
toArray(array?: number[], offset?: number): number[];
|
||||
toVector3(optionalResult?: Vector3): Vector3;
|
||||
onChange: () => void;
|
||||
|
||||
@@ -2860,6 +2885,8 @@ declare module THREE {
|
||||
radToDeg(radians: number): number;
|
||||
|
||||
isPowerOfTwo(value: number): boolean;
|
||||
|
||||
nextPowerOfTwo(value: number): number;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3558,8 +3585,8 @@ declare module THREE {
|
||||
/**
|
||||
* Sets this vector to a + b.
|
||||
*/
|
||||
addVectors(a: Vector2, b: Vector2): Vector2;
|
||||
addScalar(s: number): Vector2;
|
||||
addVectors(a: Vector2, b: Vector2): Vector2;
|
||||
|
||||
/**
|
||||
* Subtracts v from this vector.
|
||||
@@ -3635,6 +3662,9 @@ declare module THREE {
|
||||
setLength(l: number): Vector2;
|
||||
|
||||
lerp(v: Vector2, alpha: number): Vector2;
|
||||
|
||||
lerpVectors(v1: Vector2, v2: Vector2, alpha: number): Vector2;
|
||||
|
||||
/**
|
||||
* Checks for strict equality of this vector and v.
|
||||
*/
|
||||
@@ -3717,6 +3747,8 @@ declare module THREE {
|
||||
*/
|
||||
sub(a: Vector3): Vector3;
|
||||
|
||||
subScalar( s: number ): Vector3;
|
||||
|
||||
/**
|
||||
* Sets this vector to a - b.
|
||||
*/
|
||||
@@ -3790,6 +3822,8 @@ declare module THREE {
|
||||
setLength(l: number): Vector3;
|
||||
lerp(v: Vector3, alpha: number): Vector3;
|
||||
|
||||
lerpVectors(v1: Vector3, v2: Vector3, alpha: number): Vector3;
|
||||
|
||||
/**
|
||||
* Sets this vector to cross product of itself and v.
|
||||
*/
|
||||
@@ -3896,6 +3930,8 @@ declare module THREE {
|
||||
*/
|
||||
sub(v: Vector4): Vector4;
|
||||
|
||||
subScalar(s: number): Vector4;
|
||||
|
||||
/**
|
||||
* Sets this vector to a - b.
|
||||
*/
|
||||
@@ -3969,6 +4005,8 @@ declare module THREE {
|
||||
*/
|
||||
lerp(v: Vector4, alpha: number): Vector4;
|
||||
|
||||
lerpVectors(v1: Vector4, v2: Vector4, alpha: number): Vector4;
|
||||
|
||||
/**
|
||||
* Checks for strict equality of this vector and v.
|
||||
*/
|
||||
@@ -3989,7 +4027,7 @@ declare module THREE {
|
||||
// Objects //////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
export class Bone extends Object3D {
|
||||
constructor(belongsToSkin: SkinnedMesh);
|
||||
constructor(skin: SkinnedMesh);
|
||||
|
||||
skin: SkinnedMesh;
|
||||
}
|
||||
@@ -4291,6 +4329,8 @@ declare module THREE {
|
||||
*/
|
||||
sortObjects: boolean;
|
||||
|
||||
gammaFactor: number;
|
||||
|
||||
/**
|
||||
* Default is false.
|
||||
*/
|
||||
@@ -4480,7 +4520,7 @@ declare module THREE {
|
||||
uploadTexture(texture: Texture): void;
|
||||
setTexture(texture: Texture, slot: number): void;
|
||||
setRenderTarget(renderTarget: RenderTarget): void;
|
||||
|
||||
readRenderTargetPixels( renderTarget: RenderTarget, x: number, y: number, width: number, height: number, buffer: any ): void;
|
||||
}
|
||||
|
||||
export interface RenderTarget {
|
||||
@@ -4539,6 +4579,7 @@ declare module THREE {
|
||||
export interface ShaderChunk {
|
||||
[name: string]: string;
|
||||
|
||||
common: string;
|
||||
alphamap_fragment: string;
|
||||
alphamap_pars_fragment: string;
|
||||
alphatest_fragment: string;
|
||||
@@ -4613,6 +4654,7 @@ declare module THREE {
|
||||
normal: Shader;
|
||||
normalmap: Shader;
|
||||
cube: Shader;
|
||||
equirect: Shader;
|
||||
depthRGBA: Shader;
|
||||
};
|
||||
|
||||
@@ -4655,6 +4697,40 @@ declare module THREE {
|
||||
constructor(gl: any, type: string, string: string);
|
||||
}
|
||||
|
||||
interface WebGLStateInstance{
|
||||
new ( gl: any, paramThreeToGL: Function ): void;
|
||||
initAttributes(): void;
|
||||
enableAttribute(attribute: string): void;
|
||||
disableUnusedAttributes(): void;
|
||||
setBlending( blending: number, blendEquation: number, blendSrc: number, blendDst: number, blendEquationAlpha: number, blendSrcAlpha: number, blendDstAlpha: number ): void;
|
||||
setDepthTest( depthTest: number ): void;
|
||||
setDepthWrite( depthWrite: number ): void;
|
||||
setColorWrite( colorWrite: number ): void;
|
||||
setDoubleSided( doubleSided: number ): void;
|
||||
setFlipSided( flipSided: number ): void;
|
||||
setLineWidth( width: number ): void;
|
||||
setPolygonOffset(polygonoffset: number, factor: number, units: number): void;
|
||||
reset(): void;
|
||||
}
|
||||
interface WebGLStateStatic{
|
||||
( gl: any, paramThreeToGL: Function ): WebGLStateInstance;
|
||||
}
|
||||
export var WebGLState: WebGLStateStatic;
|
||||
|
||||
|
||||
interface WebGLTexturesInstance{
|
||||
new (webgglcontext: any): WebGLTexturesInstance;
|
||||
|
||||
get(texture: Texture): any; // it will return result of gl.createTexture().
|
||||
create(texture: Texture): any; // it will return result of gl.createTexture().
|
||||
delete(texture: Texture): void;
|
||||
}
|
||||
interface WebGLTexturesStatic{
|
||||
(webgglcontext: any): WebGLTexturesInstance;
|
||||
}
|
||||
export var WebGLTextures: WebGLTexturesStatic;
|
||||
|
||||
|
||||
// Renderers / WebGL / Plugins /////////////////////////////////////////////////////////////////////
|
||||
export interface RendererPlugin {
|
||||
init(renderer: WebGLRenderer): void;
|
||||
@@ -4821,29 +4897,7 @@ declare module THREE {
|
||||
|
||||
export class Texture {
|
||||
constructor(
|
||||
image: any, // HTMLImageElement or HTMLCanvasElement ( or HTMLVideoElement)
|
||||
mapping?: Mapping,
|
||||
wrapS?: Wrapping,
|
||||
wrapT?: Wrapping,
|
||||
magFilter?: TextureFilter,
|
||||
minFilter?: TextureFilter,
|
||||
format?: PixelFormat,
|
||||
type?: TextureDataType,
|
||||
anisotropy?: number
|
||||
);
|
||||
constructor(
|
||||
image: HTMLCanvasElement,
|
||||
mapping?: Mapping,
|
||||
wrapS?: Wrapping,
|
||||
wrapT?: Wrapping,
|
||||
magFilter?: TextureFilter,
|
||||
minFilter?: TextureFilter,
|
||||
format?: PixelFormat,
|
||||
type?: TextureDataType,
|
||||
anisotropy?: number
|
||||
);
|
||||
constructor(
|
||||
image: HTMLImageElement,
|
||||
image: HTMLImageElement | HTMLCanvasElement | HTMLVideoElement,
|
||||
mapping?: Mapping,
|
||||
wrapS?: Wrapping,
|
||||
wrapT?: Wrapping,
|
||||
@@ -4857,6 +4911,7 @@ declare module THREE {
|
||||
id: number;
|
||||
uuid: string;
|
||||
name: string;
|
||||
sourceFile: string;
|
||||
image: any; // HTMLImageElement or ImageData ;
|
||||
mipmaps: ImageData[];
|
||||
mapping: Mapping;
|
||||
@@ -4992,14 +5047,13 @@ declare module THREE {
|
||||
isPlaying: boolean;
|
||||
loop: boolean;
|
||||
weight: number;
|
||||
keyTypes: string[];
|
||||
interpolationType: number;
|
||||
|
||||
play(startTime?: number, weight?: number): void;
|
||||
stop(): void;
|
||||
reset(): void;
|
||||
resetBlendWeights(): void;
|
||||
update(deltaTimeMS: number): void;
|
||||
update(delta: number): void;
|
||||
getNextKeyWith(type: string, h: number, key: number): KeyFrame;
|
||||
getPrevKeyWith(type: string, h: number, key: number): KeyFrame;
|
||||
}
|
||||
@@ -5022,7 +5076,7 @@ declare module THREE {
|
||||
constructor(data: any);
|
||||
|
||||
root: Mesh;
|
||||
data: Object;
|
||||
data: AnimationData;
|
||||
hierarchy: KeyFrames[];
|
||||
currentTime: number;
|
||||
timeScale: number;
|
||||
@@ -5051,7 +5105,7 @@ declare module THREE {
|
||||
|
||||
play(): void;
|
||||
pause(): void;
|
||||
update(deltaTimeMS: number): void;
|
||||
update(delta: number): void;
|
||||
}
|
||||
|
||||
// Extras / Audio /////////////////////////////////////////////////////////////////////
|
||||
@@ -5063,11 +5117,18 @@ declare module THREE {
|
||||
source: AudioBufferSourceNode;
|
||||
gain: GainNode;
|
||||
panner: PannerNode;
|
||||
autoplay: boolean;
|
||||
startTime: number;
|
||||
isPlaying: boolean;
|
||||
|
||||
load(file: string): Audio;
|
||||
play(): void;
|
||||
pause(): void;
|
||||
stop(): void;
|
||||
setLoop(value: boolean): void;
|
||||
setRefDistance(value: number): void;
|
||||
setRolloffFactor(value: number): void;
|
||||
setVolume(value: number): void;
|
||||
updateMatrixWorld(force?: boolean): void;
|
||||
}
|
||||
|
||||
@@ -5646,7 +5707,7 @@ declare module THREE {
|
||||
}
|
||||
|
||||
export class EdgesHelper extends Line {
|
||||
constructor(object: Object3D, hex?: number);
|
||||
constructor(object: Object3D, hex?: number, thresholdAngle?: number);
|
||||
|
||||
}
|
||||
|
||||
@@ -5669,7 +5730,7 @@ declare module THREE {
|
||||
setColors(colorCenterLine: number, colorGrid: number): void;
|
||||
}
|
||||
export class HemisphereLightHelper extends Object3D {
|
||||
constructor(light: Light, sphereSize: number, arrowLength: number, domeSize: number);
|
||||
constructor(light: Light, sphereSize: number);
|
||||
|
||||
light: Light;
|
||||
colors: Color[];
|
||||
|
||||
Reference in New Issue
Block a user