diff --git a/three/index.d.ts b/three/index.d.ts
index 41224ff8c1..8700df1cbe 100644
--- a/three/index.d.ts
+++ b/three/index.d.ts
@@ -1,6 +1,6 @@
-// Type definitions for three.js 0.83
+// Type definitions for three.js 0.84
// Project: http://mrdoob.github.com/three.js/
-// Definitions by: Kon , Satoru Kimura , Florent Poujol , SereznoKot , HouChunlei , Ivo
+// Definitions by: Kon , Satoru Kimura , Florent Poujol , SereznoKot , HouChunlei , Ivo , David Asmuth
// Definitions: https://github.com/borisyankov/DefinitelyTyped
///
@@ -1027,9 +1027,6 @@ declare namespace THREE {
* @param type The type of event that gets fired.
*/
dispatchEvent(event: { type: string; [attachment: string]: any; }): void;
-
- // deprecated
- apply(target: any): void;
}
export interface Event {
@@ -2161,14 +2158,18 @@ declare namespace THREE {
setPath(path: string): CubeTextureLoader;
}
- export class BinaryTextureLoader {
+ export class DataTextureLoader {
constructor(manager?: LoadingManager);
manager: LoadingManager;
load(url: string, onLoad: (dataTexture: DataTexture) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): void;
}
- export class DataTextureLoader extends BinaryTextureLoader {}
+
+ /**
+ * @deprecated since 0.84.0. Use DataTextureLoader (renamed)
+ */
+ export class BinaryTextureLoader extends DataTextureLoader {}
export class CompressedTextureLoader {
constructor(manager?: LoadingManager);
@@ -2847,6 +2848,7 @@ declare namespace THREE {
expandByPoint(point: Vector3): Box3;
expandByVector(vector: Vector3): Box3;
expandByScalar(scalar: number): Box3;
+ expandByObject(object: Object3D): Box3;
containsPoint(point: Vector3): boolean;
containsBox(box: Box3): boolean;
getParameter(point: Vector3): Vector3;
@@ -3343,7 +3345,6 @@ declare namespace THREE {
clone(): this;
copy(m: this): this;
setFromMatrix4(m: Matrix4): Matrix3;
- applyToVector3Array(array: ArrayLike, offset?: number, length?: number): ArrayLike;
applyToBuffer(buffer: BufferAttribute, offset?: number, length?: number): BufferAttribute;
multiplyScalar(s: number): Matrix3;
determinant(): number;
@@ -3443,7 +3444,6 @@ declare namespace THREE {
* Multiplies this matrix by s.
*/
multiplyScalar(s: number): Matrix4;
- applyToVector3Array(array: ArrayLike, offset?: number, length?: number): ArrayLike;
applyToBuffer( buffer: BufferAttribute, offset?: number, length?: number): BufferAttribute;
/**
* Computes determinant of this matrix.
@@ -3530,7 +3530,7 @@ declare namespace THREE {
/**
* Creates a frustum matrix.
*/
- makeFrustum(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
+ makePerspective(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
/**
* Creates a perspective projection matrix.
@@ -3771,53 +3771,6 @@ declare namespace THREE {
z: number;
}
- /**
- * Represents a spline.
- *
- * @see src/math/Spline.js
- */
- export class Spline {
- /**
- * Initialises the spline with points, which are the places through which the spline will go.
- */
- constructor(points: SplineControlPoint[]);
-
- points: SplineControlPoint[];
-
- /**
- * Initialises using the data in the array as a series of points. Each value in a must be another array with three values, where a[n] is v, the value for the nth point, and v[0], v[1] and v[2] are the x, y and z coordinates of that point n, respectively.
- *
- * @param a array of triplets containing x, y, z coordinates
- */
- initFromArray(a: number[][]): void;
-
- /**
- * Return the interpolated point at k.
- *
- * @param k point index
- */
- getPoint(k: number): SplineControlPoint;
-
- /**
- * Returns an array with triplets of x, y, z coordinates that correspond to the current control points.
- */
- getControlPointsArray(): number[][];
-
- /**
- * Returns the length of the spline when using nSubDivisions.
- * @param nSubDivisions number of subdivisions between control points. Default is 100.
- */
- getLength(nSubDivisions?: number): { chunks: number[]; total: number; };
-
- /**
- * Modifies the spline so that it looks similar to the original but has its points distributed in such way that moving along the spline it's done at a more or less constant speed. The points should also appear more uniformly spread along the curve.
- * This is done by resampling the original spline, with the density of sampling controlled by samplingCoef. Here it's interesting to note that denser sampling is not necessarily better: if sampling is too high, you may get weird kinks in curvature.
- *
- * @param samplingCoef how many intermediate values to use between spline points
- */
- reparametrizeByArcLength(samplingCoef: number): void;
- }
-
class Triangle {
constructor(a?: Vector3, b?: Vector3, c?: Vector3);
@@ -4107,7 +4060,7 @@ declare namespace THREE {
toArray(xy?: number[], offset?: number): number[];
- fromAttribute( attribute: BufferAttribute, index: number, offset?: number): Vector2;
+ fromBufferAttribute( attribute: BufferAttribute, index: number, offset?: number): Vector2;
rotateAround( center: Vector2, angle: number ): Vector2;
}
@@ -4202,7 +4155,6 @@ declare namespace THREE {
applyAxisAngle(axis: Vector3, angle: number): Vector3;
applyMatrix3(m: Matrix3): Vector3;
applyMatrix4(m: Matrix4): Vector3;
- applyProjection(m: Matrix4): Vector3;
applyQuaternion(q: Quaternion): Vector3;
project(camrea: Camera): Vector3;
unproject(camera: Camera): Vector3;
@@ -4300,7 +4252,7 @@ declare namespace THREE {
fromArray(xyz: number[], offset?: number): Vector3;
toArray(xyz?: number[], offset?: number): number[];
- fromAttribute( attribute: BufferAttribute, index: number, offset?: number): Vector3;
+ fromBufferAttribute( attribute: BufferAttribute, index: number, offset?: number): Vector3;
// deprecated
getPositionFromMatrix(m: Matrix4): Vector3;
@@ -4466,7 +4418,7 @@ declare namespace THREE {
toArray(xyzw?: number[], offset?: number): number[];
- fromAttribute( attribute: BufferAttribute, index: number, offset?: number): Vector4;
+ fromBufferAttribute( attribute: BufferAttribute, index: number, offset?: number): Vector4;
}
export abstract class Interpolant {
@@ -5761,12 +5713,6 @@ declare namespace THREE {
}
// Extras /////////////////////////////////////////////////////////////////////
- export namespace CurveUtils {
- export function tangentQuadraticBezier(t: number, p0: number, p1: number, p2: number): number;
- export function tangentCubicBezier(t: number, p0: number, p1: number, p2: number, p3: number): number;
- export function tangentSpline(t: number, p0: number, p1: number, p2: number, p3: number): number;
- export function interpolate(p0: number, p1: number, p2: number, p3: number, t: number): number;
- }
export namespace ImageUtils { // deprecated
export let crossOrigin: string;
@@ -5786,8 +5732,6 @@ declare namespace THREE {
export function triangulate(contour: number[], indices: boolean): number[];
export function triangulateShape(contour: number[], holes: any[]): number[];
export function isClockWise(pts: number[]): boolean;
- export function b2(t: number, p0: number, p1: number, p2: number): number;
- export function b3(t: number, p0: number, p1: number, p2: number, p3: number): number;
}
// Extras / Audio /////////////////////////////////////////////////////////////////////
@@ -5948,6 +5892,9 @@ declare namespace THREE {
*/
getTangentAt(u: number): T;
+ /**
+ * @deprecated since r84.
+ */
static create(constructorFunc: Function, getPointFunc: Function): Function;
}
@@ -6039,6 +5986,13 @@ declare namespace THREE {
}
// Extras / Curves /////////////////////////////////////////////////////////////////////
+ export namespace CurveUtils {
+ export function tangentQuadraticBezier(t: number, p0: number, p1: number, p2: number): number;
+ export function tangentCubicBezier(t: number, p0: number, p1: number, p2: number, p3: number): number;
+ export function tangentSpline(t: number, p0: number, p1: number, p2: number, p3: number): number;
+ export function interpolate(p0: number, p1: number, p2: number, p3: number, t: number): number;
+ }
+
export class CatmullRomCurve3 extends Curve {
constructor(points?: Vector3[]);
@@ -6047,9 +6001,6 @@ declare namespace THREE {
getPoint(t: number): Vector3;
}
- export class ClosedSplineCurve3 extends CatmullRomCurve3 {} // deprecated, use CatmullRomCurve3
- export class SplineCurve3 extends CatmullRomCurve3 {} // will be deprecated, use CatmullRomCurve3
-
export class CubicBezierCurve extends Curve {
constructor(v0: Vector2, v1: Vector2, v2: Vector2, v3: Vector2);
diff --git a/three/test/math/test_unit_math.ts b/three/test/math/test_unit_math.ts
index 2c13817782..c70868b3d8 100644
--- a/three/test/math/test_unit_math.ts
+++ b/three/test/math/test_unit_math.ts
@@ -981,7 +981,7 @@ declare function equal(a: T, b: T, desc?: string): void;
});
test( "setFromMatrix/makeFrustum/containsPoint", function() {
- var m = new THREE.Matrix4().makeFrustum( -1, 1, -1, 1, 1, 100 )
+ var m = new THREE.Matrix4().makePerspective( -1, 1, -1, 1, 1, 100 )
var a = new THREE.Frustum().setFromMatrix( m );
ok( ! a.containsPoint( new THREE.Vector3( 0, 0, 0 ) ), "Passed!" );
@@ -1000,7 +1000,7 @@ declare function equal(a: T, b: T, desc?: string): void;
});
test( "setFromMatrix/makeFrustum/intersectsSphere", function() {
- var m = new THREE.Matrix4().makeFrustum( -1, 1, -1, 1, 1, 100 )
+ var m = new THREE.Matrix4().makePerspective( -1, 1, -1, 1, 1, 100 )
var a = new THREE.Frustum().setFromMatrix( m );
ok( ! a.intersectsSphere( new THREE.Sphere( new THREE.Vector3( 0, 0, 0 ), 0 ) ), "Passed!" );
@@ -1500,8 +1500,8 @@ declare function equal(a: T, b: T, desc?: string): void;
new THREE.Matrix4().makeRotationZ( -0.3 ),
new THREE.Matrix4().makeScale( 1, 2, 3 ),
new THREE.Matrix4().makeScale( 1/8, 1/2, 1/3 ),
- new THREE.Matrix4().makeFrustum( -1, 1, -1, 1, 1, 1000 ),
- new THREE.Matrix4().makeFrustum( -16, 16, -9, 9, 0.1, 10000 ),
+ new THREE.Matrix4().makePerspective( -1, 1, -1, 1, 1, 1000 ),
+ new THREE.Matrix4().makePerspective( -16, 16, -9, 9, 0.1, 10000 ),
new THREE.Matrix4().makeTranslation( 1, 2, 3 )
];