diff --git a/threejs/examples/CSS3DRenderer.d.ts b/threejs/examples/CSS3DRenderer.d.ts new file mode 100644 index 000000000..1d557b334 --- /dev/null +++ b/threejs/examples/CSS3DRenderer.d.ts @@ -0,0 +1,32 @@ +// Type definitions for CSS3DRenderer.js +// Project: https://github.com/mrdoob/three.js/blob/master/examples/js/renderers/CSS3DRenderer.js +// Definitions by: Satoru Kimura +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +// This renderer does not work in IE. Can be found here for more information. +// https://github.com/mrdoob/three.js/issues/4783 + +/// + +declare module THREE { + class CSS3DObject extends Object3D { + constructor(element: any); + + element: any; + } + + class CSS3DSprite extends CSS3DObject { + constructor(element: any); + + } + + + class CSS3DRenderer { + constructor(); + + domElement:HTMLElement; + + setSize(width: number, height: number): void; + render(scene: THREE.Scene, camera: THREE.Camera): void; + } +} \ No newline at end of file diff --git a/threejs/examples/Detector.d.ts b/threejs/examples/Detector.d.ts new file mode 100644 index 000000000..b02478061 --- /dev/null +++ b/threejs/examples/Detector.d.ts @@ -0,0 +1,16 @@ +// Type definitions for Detector.js +// Project: https://github.com/mrdoob/three.js/blob/master/examples/js/Detector.js +// Definitions by: Satoru Kimura +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +interface DetectorStatic { + canvas: boolean; + webgl: boolean; + workers: boolean; + fileapi: boolean; + + getWebGLErrorMessage(): HTMLElement; + addGetWebGLMessage(parameters?: {id?: string; parent?: HTMLElement}): void; +} + +declare var Detector: DetectorStatic; diff --git a/threejs/examples/OrbitControls.d.ts b/threejs/examples/OrbitControls.d.ts new file mode 100644 index 000000000..7671489ae --- /dev/null +++ b/threejs/examples/OrbitControls.d.ts @@ -0,0 +1,42 @@ +// Type definitions for OrbitControls.js +// Project: https://github.com/mrdoob/three.js/blob/master/examples/js/controls/OrbitControls.js +// Definitions by: Satoru Kimura +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// + +declare module THREE { + class OrbitControls { + constructor(object:Camera, domElement?:HTMLElement); + + object:Camera; + domElement:HTMLElement; + + // API + enabled: boolean; + target: THREE.Vector3; + + // deprecated + center: THREE.Vector3; + + noZoom: boolean; + zoomSpeed: number; + minDistance: number; + maxDistance: number; + noRotate: boolean; + rotateSpeed: number; + noPan: boolean; + keyPanSpeed: number; + autoRotate: boolean; + autoRotateSpeed: number; + minPolarAngle: number; + maxPolarAngle: number; + minAzimuthAngle: number; + maxAzimuthAngle: number; + noKeys: boolean; + keys: { LEFT: number; UP: number; RIGHT: number; BOTTOM: number; }; + mouseButtons: { ORBIT: MOUSE; ZOOM: MOUSE; PAN: MOUSE; }; + + update():void; + } +} \ No newline at end of file diff --git a/threejs/examples/TrackballControls.d.ts b/threejs/examples/TrackballControls.d.ts new file mode 100644 index 000000000..33d69011d --- /dev/null +++ b/threejs/examples/TrackballControls.d.ts @@ -0,0 +1,33 @@ +// Type definitions for TrackballControls.js +// Project: https://github.com/mrdoob/three.js/blob/master/examples/js/controls/TrackballControls.js +// Definitions by: Satoru Kimura +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// + +declare module THREE { + class TrackballControls { + constructor(object:Camera, domElement?:HTMLElement); + + object:Camera; + domElement:HTMLElement; + + // API + enabled:boolean; + screen:{ left: number; top: number; width: number; height: number }; + rotateSpeed:number; + zoomSpeed:number; + panSpeed:number; + noRotate:boolean; + noZoom:boolean; + noPan:boolean; + noRoll:boolean; + staticMoving:boolean; + dynamicDampingFactor:number; + minDistance:number; + maxDistance:number; + keys:number[]; + + update():void; + } +} \ No newline at end of file diff --git a/threejs/tests/css3d/css3d_periodictable.ts b/threejs/tests/css3d/css3d_periodictable.ts index 6ce32c42f..2f304dac0 100644 --- a/threejs/tests/css3d/css3d_periodictable.ts +++ b/threejs/tests/css3d/css3d_periodictable.ts @@ -247,7 +247,6 @@ } // - renderer = new THREE.CSS3DRenderer(); renderer.setSize(window.innerWidth, window.innerHeight); renderer.domElement.style.position = 'absolute'; diff --git a/threejs/tests/examples/Detector.ts b/threejs/tests/examples/Detector.ts new file mode 100644 index 000000000..0f30fdd31 --- /dev/null +++ b/threejs/tests/examples/Detector.ts @@ -0,0 +1,10 @@ +/// +/// + + +() => { + if ( !Detector.canvas || !Detector.webgl || !Detector.workers || !Detector.fileapi ){ + var errorElement = Detector.getWebGLErrorMessage(); + Detector.addGetWebGLMessage(); + } +} \ No newline at end of file diff --git a/threejs/tests/three-tests-setup.ts b/threejs/tests/three-tests-setup.ts index 33b36098b..af594582f 100644 --- a/threejs/tests/three-tests-setup.ts +++ b/threejs/tests/three-tests-setup.ts @@ -2,20 +2,18 @@ // https://github.com/mrdoob/three.js/tree/master/examples ////////////////////////////////////////////////////////////// -declare var Stats: any; -declare var Detector: any; +/// +/// +/// +/// +/// declare module THREE { var AWDLoader: any; - var CSS3DSprite: any; - var CSS3DRenderer: any; - var CSS3DObject: any; var DotScreenShader: any; - var TrackballControls: any; var FlyControls: any; var RenderPass: any; var EffectComposer: any; - var OrbitControls: any; var RGBShiftShader: any; var RenderPass: any; var BloomPass: any; @@ -23,4 +21,3 @@ declare module THREE { var FXAAShader: any; var CopyShader: any; } - diff --git a/threejs/three-tests.ts b/threejs/three-tests.ts index 46a563a6d..c99f08f23 100644 --- a/threejs/three-tests.ts +++ b/threejs/three-tests.ts @@ -57,3 +57,5 @@ THE SOFTWARE. /// /// +// examples test. +/// diff --git a/threejs/three.d.ts b/threejs/three.d.ts index 7a2ee5ede..f114cd958 100644 --- a/threejs/three.d.ts +++ b/threejs/three.d.ts @@ -8,6 +8,12 @@ interface WebGLRenderingContext {} declare module THREE { export var REVISION: string; + // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent.button + export enum MOUSE { } + export var LEFT: MOUSE; + export var MIDDLE: MOUSE; + export var RIGHT: MOUSE; + // GL STATE CONSTANTS export enum CullFace { } export var CullFaceNone: CullFace; @@ -923,7 +929,7 @@ declare module THREE { */ dispose(): void; - //These properties does not exist in a normal Geometry class, but if you use the instance that was passed by JSONLoader, it will be added. + //These properties do not exist in a normal Geometry class, but if you use the instance that was passed by JSONLoader, it will be added. bones: Bone[]; animation: AnimationData; animations: AnimationData[];