use-on-demand
Version:
145 lines • 4.39 kB
TypeScript
declare const THREE: any;
export declare abstract class xX_BaseThreeClass {
_container: HTMLElement;
abstract $scene: THREE.Scene;
abstract $camera: THREE.PerspectiveCamera;
abstract $renderer: THREE.WebGLRenderer;
abstract $lights: THREE.Light[];
abstract $objects: THREE.Object3D[];
abstract $helper: xX_BaseThreeClass_Helper;
$statsUtil: Stats;
get _width(): number;
get _height(): number;
constructor(_container: HTMLElement);
abstract $1_initScene(): THREE.Scene;
abstract $2_initCamera(): THREE.PerspectiveCamera;
abstract $3_initRenderer_needAppend(): THREE.WebGLRenderer;
abstract $4_initLight_needAdd(): THREE.Light[];
abstract $5_initObject_needAdd(): THREE.Object3D[];
abstract $111_onceChange(): void;
abstract $999_loopChange_Render(): void;
abstract $1000_threeStart(): void;
}
export declare class xX_MyPoint3D {
x: number;
y: number;
z: number;
constructor(x: number, y: number, z: number);
}
interface MyRendererOptions {
antialias?: boolean;
bg_color?: number;
bg_alpha?: number;
}
interface MyCameraOptions {
fov?: number;
near?: number;
far?: number;
position?: xX_MyPoint3D;
up?: xX_MyPoint3D;
lookAt?: xX_MyPoint3D;
}
interface MyLightOptions {
color?: number;
intensity?: number;
distance?: number;
decay?: number;
position?: xX_MyPoint3D;
}
interface MyObject3DOptions {
yuan_zhu?: xX_My_YuanZhu_Option;
li_fang_ti?: xX_My_LiFangTi_Option;
common_line?: xX_My_CommonLine_Option;
color_line?: xX_My_ColorLine_Option;
}
declare class My_Object3DBundle<T extends THREE.Object3D> {
geometry: THREE.Geometry;
material: THREE.Material;
object3d: T;
}
export declare class xX_My_YuanZhu_Option {
geometry: {
radiusTop: number;
radiusBottom: number;
height: number;
};
material: {
color: number;
};
position: xX_MyPoint3D;
constructor(geometry: {
radiusTop: number;
radiusBottom: number;
height: number;
}, material: {
color: number;
}, position: xX_MyPoint3D);
}
export declare class xX_My_LiFangTi_Option {
geometry: {
width: number;
height: number;
depth: number;
};
material: {
color: number;
};
position: xX_MyPoint3D;
constructor(geometry: {
width: number;
height: number;
depth: number;
}, material: {
color: number;
}, position: xX_MyPoint3D);
}
export declare class xX_My_CommonLine_Option {
geometry: {
vertices: THREE.Vector3[];
};
material: {
color: number;
opacity: number;
};
position: xX_MyPoint3D;
constructor(geometry: {
vertices: THREE.Vector3[];
}, material: {
color: number;
opacity: number;
}, position: xX_MyPoint3D);
}
export declare class xX_My_ColorLine_Option {
geometry: {
my_vertices: THREE.Vector3[];
my_colors: number[];
};
material: {
vertexColors: typeof THREE.VertexColors;
};
position: xX_MyPoint3D;
constructor(geometry: {
my_vertices: THREE.Vector3[];
my_colors: number[];
}, material: {
vertexColors: typeof THREE.VertexColors;
}, position: xX_MyPoint3D);
}
export declare abstract class xX_BaseThreeClass_Helper {
my_Default_Scene(threeClass: xX_BaseThreeClass, options?: any): any;
my_Default_Camera(threeClass: xX_BaseThreeClass, options: MyCameraOptions): THREE.PerspectiveCamera;
my_DefaultRenderer_haveNotAppend(threeClass: xX_BaseThreeClass, options: MyRendererOptions): any;
my_Default_LightsBundle_haveNotAdd(threeClass: xX_BaseThreeClass, options: MyLightOptions): {
ambientLight: THREE.AmbientLight;
pointLight: THREE.PointLight;
directionalLight: any;
};
my_Default_Object_haveNotAdd(threeClass: xX_BaseThreeClass, options: MyObject3DOptions): {
LiFangTi: My_Object3DBundle<THREE.Mesh>;
YuanZhu: My_Object3DBundle<THREE.Mesh>;
ColorLine: My_Object3DBundle<THREE.Line>;
CommonLine: My_Object3DBundle<THREE.Line>;
};
}
export {};
//# sourceMappingURL=BaseThreeClass.d.ts.map