Spaces:
Running
Running
| import { | |
| Material, | |
| LoadingManager, | |
| Mapping, | |
| EventDispatcher, | |
| BufferGeometry, | |
| Side, | |
| Texture, | |
| Vector2, | |
| Wrapping | |
| } from '../../../src/Three'; | |
| export interface MaterialCreatorOptions { | |
| /** | |
| * side: Which side to apply the material | |
| * THREE.FrontSide (default), THREE.BackSide, THREE.DoubleSide | |
| */ | |
| side?: Side; | |
| /* | |
| * wrap: What type of wrapping to apply for textures | |
| * THREE.RepeatWrapping (default), THREE.ClampToEdgeWrapping, THREE.MirroredRepeatWrapping | |
| */ | |
| wrap?: Wrapping; | |
| /* | |
| * normalizeRGB: RGBs need to be normalized to 0-1 from 0-255 | |
| * Default: false, assumed to be already normalized | |
| */ | |
| normalizeRGB?: boolean; | |
| /* | |
| * ignoreZeroRGBs: Ignore values of RGBs (Ka,Kd,Ks) that are all 0's | |
| * Default: false | |
| */ | |
| ignoreZeroRGBs?: boolean; | |
| /* | |
| * invertTrProperty: Use values 1 of Tr field for fully opaque. This option is useful for obj | |
| * exported from 3ds MAX, vcglib or meshlab. | |
| * Default: false | |
| */ | |
| invertTrProperty?: boolean; | |
| } | |
| export class MTLLoader extends EventDispatcher { | |
| constructor(manager?: LoadingManager); | |
| manager: LoadingManager; | |
| materialOptions: MaterialCreatorOptions; | |
| path: string; | |
| texturePath: string; | |
| crossOrigin: boolean; | |
| load(url: string, onLoad: (materialCreator: MaterialCreator) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): void; | |
| parse(text: string) : MaterialCreator; | |
| setPath(path: string) : void; | |
| setTexturePath(path: string) : void; | |
| setBaseUrl(path: string) : void; | |
| setCrossOrigin(value: boolean) : void; | |
| setMaterialOptions(value: MaterialCreatorOptions) : void; | |
| } | |
| export interface MaterialInfo { | |
| ks?: number[]; | |
| kd?: number[]; | |
| ke?: number[]; | |
| map_kd?: string; | |
| map_ks?: string; | |
| map_ke?: string; | |
| norm?: string; | |
| map_bump?: string; | |
| bump?: string; | |
| map_d?: string; | |
| ns?: number; | |
| d?: number; | |
| tr?: number; | |
| } | |
| export interface TexParams { | |
| scale: Vector2; | |
| offset: Vector2; | |
| url: string; | |
| } | |
| export class MaterialCreator { | |
| constructor(baseUrl?: string, options?: MaterialCreatorOptions); | |
| baseUrl : string; | |
| options : MaterialCreatorOptions; | |
| materialsInfo : {[key: string]: MaterialInfo}; | |
| materials : {[key: string]: Material}; | |
| private materialsArray : Material[]; | |
| nameLookup : {[key: string]: number}; | |
| side : Side; | |
| wrap : Wrapping; | |
| setCrossOrigin( value: boolean ) : void; | |
| setManager( value: LoadingManager ) : void; | |
| setMaterials( materialsInfo: {[key: string]: MaterialInfo} ) : void; | |
| convert( materialsInfo: {[key: string]: MaterialInfo} ) : {[key: string]: MaterialInfo}; | |
| preload() : void; | |
| getIndex( materialName: string ) : Material; | |
| getAsArray() : Material[]; | |
| create( materialName: string ) : Material; | |
| createMaterial_( materialName: string ) : Material; | |
| getTextureParams( value: string, matParams: any ) : TexParams; | |
| loadTexture(url: string, mapping?: Mapping, onLoad?: (bufferGeometry: BufferGeometry) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): Texture; | |
| } | |