未验证 提交 e444f23b 编写于 作者: M Mr.doob 提交者: GitHub

Merge pull request #16149 from asutekku/typings

Introduced new typings for jsm modules.
import {Object3D} from '../../../src/Three';
export class ColladaExporter {
constructor();
parse(object: Object3D, onDone: (res: any) => void, options: object): null;
}
import { Object3D } from '../../../src/Three';
import {Object3D} from '../../../src/Three';
export class GLTFExporter {
constructor();
constructor();
parse(input: Object3D, onCompleted: (gltf: object) => void, options: object): null;
parse(input: Object3D, onCompleted: (gltf: object) => void, options: object): null;
}
import {Object3D} from "../../..";
export class MMDExporter {
constructor();
parseVpd(skin: Object3D, outputShiftJis: boolean, useOriginalBones: boolean): [] | Uint8Array
}
import {Object3D} from '../../../src/Three';
export class OBJExporter {
constructor();
parse(object: Object3D): string;
}
import {Object3D} from "../../..";
export class PLYExporter {
constructor();
parse(object: Object3D, onDone: (res: any) => void, options: object): null;
}
import {Object3D} from "../../..";
export class STLExporter {
constructor();
parse(scene: Object3D, options: {});
}
import {Object3D} from "../../..";
export class TypedGeometryExporterD {
constructor();
parse(scene: Object3D, options: {}): DataView | string;
}
import {
CubeTexture,
Renderer,
ShaderMaterial,
WebGLRenderTarget
} from '../../../src/Three';
import {CubeTexture, Renderer, WebGLRenderTarget} from '../../../src/Three';
export class PMREMCubeUVPacker {
CubeUVRenderTarget:WebGLRenderTarget;
......
import {Quaternion} from "../../..";
export namespace MathUtils {
export function setQuaternionFromProperEuler(q: Quaternion, a: number, b: number, c: number, order: string): void ;
}
......@@ -7,61 +7,69 @@
var MathUtils = {
setQuaternionFromProperEuler: function ( q, a, b, c, order ) {
// Intrinsic Proper Euler Angles - see https://en.wikipedia.org/wiki/Euler_angles
/**
* @param {Quaternion} q
* @param {number} a
* @param {number} b
* @param {number} c
* @param {string} order
*/
setQuaternionFromProperEuler: function (q, a, b, c, order) {
// rotations are applied to the axes in the order specified by 'order'
// rotation by angle 'a' is applied first, then by angle 'b', then by angle 'c'
// angles are in radians
// Intrinsic Proper Euler Angles - see https://en.wikipedia.org/wiki/Euler_angles
var cos = Math.cos;
var sin = Math.sin;
// rotations are applied to the axes in the order specified by 'order'
// rotation by angle 'a' is applied first, then by angle 'b', then by angle 'c'
// angles are in radians
var c2 = cos( b / 2 );
var s2 = sin( b / 2 );
var cos = Math.cos;
var sin = Math.sin;
var c13 = cos( ( a + c ) / 2 );
var s13 = sin( ( a + c ) / 2 );
var c2 = cos(b / 2);
var s2 = sin(b / 2);
var c1_3 = cos( ( a - c ) / 2 );
var s1_3 = sin( ( a - c ) / 2 );
var c13 = cos((a + c) / 2);
var s13 = sin((a + c) / 2);
var c3_1 = cos( ( c - a ) / 2 );
var s3_1 = sin( ( c - a ) / 2 );
var c1_3 = cos((a - c) / 2);
var s1_3 = sin((a - c) / 2);
if ( order === 'XYX' ) {
var c3_1 = cos((c - a) / 2);
var s3_1 = sin((c - a) / 2);
q.set( c2 * s13, s2 * c1_3, s2 * s1_3, c2 * c13 );
if (order === 'XYX') {
} else if ( order === 'YZY' ) {
q.set(c2 * s13, s2 * c1_3, s2 * s1_3, c2 * c13);
q.set( s2 * s1_3, c2 * s13, s2 * c1_3, c2 * c13 );
} else if (order === 'YZY') {
} else if ( order === 'ZXZ' ) {
q.set(s2 * s1_3, c2 * s13, s2 * c1_3, c2 * c13);
q.set( s2 * c1_3, s2 * s1_3, c2 * s13, c2 * c13 );
} else if (order === 'ZXZ') {
} else if ( order === 'XZX' ) {
q.set(s2 * c1_3, s2 * s1_3, c2 * s13, c2 * c13);
q.set( c2 * s13, s2 * s3_1, s2 * c3_1, c2 * c13 );
} else if (order === 'XZX') {
} else if ( order === 'YXY' ) {
q.set(c2 * s13, s2 * s3_1, s2 * c3_1, c2 * c13);
q.set( s2 * c3_1, c2 * s13, s2 * s3_1, c2 * c13 );
} else if (order === 'YXY') {
} else if ( order === 'ZYZ' ) {
q.set(s2 * c3_1, c2 * s13, s2 * s3_1, c2 * c13);
q.set( s2 * s3_1, s2 * c3_1, c2 * s13, c2 * c13 );
} else if (order === 'ZYZ') {
} else {
q.set(s2 * s3_1, s2 * c3_1, c2 * s13, c2 * c13);
console.warn( 'THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order.' );
} else {
}
console.warn('THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order.');
}
}
}
};
export { MathUtils };
export {MathUtils};
import {Light} from "../../..";
export class ShadowMapViewer {
constructor(light: Light)
}
import {AnimationClip, Bone, Matrix4, Object3D, Skeleton, SkeletonHelper} from "../../..";
export class SkeletonUtils {
retarget(target: Object3D | Skeleton,
source: Object3D | Skeleton,
options: {})
retargetClip(target: Skeleton | Object3D,
source: Skeleton | Object3D,
clip: AnimationClip,
options: {}): AnimationClip;
getHelperFromSkeleton(skeleton: Skeleton): SkeletonHelper;
getSkeletonOffsets(target: Object3D | Skeleton,
source: Object3D | Skeleton,
options: {}): Matrix4[];
renameBones(skeleton: Skeleton, names: {}): any;
getBones(skeleton: Skeleton | Bone[]): Bone[];
getBoneByName(name: string, skeleton: Skeleton): Bone;
getNearestBone(bone: Bone, names: {}): Bone;
findBoneTrackData(name: string, tracks: any[]): {};
getEqualsBonesNames(skeleton: Skeleton, targetSkeleton: Skeleton);
clone(source: Skeleton): Skeleton;
}
export namespace TypedArrayUtils {
export function quicksortIP(arr: any[], eleSize: number, orderElement: number): any[];
export class Kdtree {
self: this;
root: Node;
private maxDepth: number;
constructor(points: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Float32Array | Float64Array | Uint8ClampedArray, metric: (a: any, b: any) => number, eleSize: number);
getPointSet(points: any, pos: number);
buildTree(): Node;
getMaxDepth(): number;
nearest(point: [], maxNodes: number, maxDistance: number): any[];
}
export namespace Kdtree {
export class Node {
obj: any;
left: Node | null;
right: Node | null;
parent: Node;
depth: number;
pos: any;
constructor(obj: any, depth: number, parent: Node, pos: any)
}
export class BinaryHeap {
content: any[];
scoreFunction: () => any;
constructor(scoreFunction?: () => any);
}
export namespace BinaryHeap {
export function push(element: any): void;
export function pop(): any;
export function peek(): any;
export function remove(node: any): any;
export function size(): number;
export function bubbleUp(n: number): void;
export function sinkDown(n: number): void;
}
}
}
import {Geometry} from "../../..";
export function UVsDebug(geometry: Geometry, size: number): HTMLCanvasElement;
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册