wwobjloader2
Version:
[](https://github.com/kaisalmen/WWOBJLoader/blob/dev/LICENSE) [](https://github.com/kaisalm
69 lines • 2.75 kB
TypeScript
import { Object3D, LoadingManager } from 'three';
import { CallbackOnLoadType, CallbackOnMeshAlterType, FileLoaderOnErrorType, FileLoaderOnProgressType, OBJLoader2 } from './OBJLoader2.js';
/**
* Creates a new OBJLoader2Parallel. Use it to load OBJ data from files or to parse OBJ data from arraybuffer.
* It extends {@link OBJLoader2} with the capability to run the parser in a web worker.
*
* @param [LoadingManager] manager The loadingManager for the loader to use. Default is {@link LoadingManager}
* @constructor
*/
export declare class OBJLoader2Parallel extends OBJLoader2 {
static OBJLOADER2_PARALLEL_VERSION: string;
static DEFAULT_DEV_MODULE_WORKER_PATH: string;
static DEFAULT_DEV_STANDARD_WORKER_PATH: string;
static DEFAULT_PROD_MODULE_WORKER_PATH: string;
static DEFAULT_PROD_STANDARD_WORKER_PATH: string;
static TASK_NAME: string;
private moduleWorker;
private workerUrl;
private terminateWorkerOnLoad;
private workerTask?;
/**
*
* @param {LoadingManager} [manager]
*/
constructor(manager?: LoadingManager);
/**
* Set whether jsm modules in workers should be used. This requires browser support
* which is availableminall major browser apart from Firefox.
*
* @param {boolean} moduleWorker If the worker is a module or a standard worker
* @param {URL} workerUrl Provide complete worker URL otherwise relative path to this module may not be correct
* @return {OBJLoader2Parallel}
*/
setWorkerUrl(moduleWorker: boolean, workerUrl: URL): this;
static getModuleWorkerDefaultUrl(): URL;
static getStandardWorkerDefaultUrl(): URL;
/**
* Request termination of worker once parser is finished.
*
* @param {boolean} terminateWorkerOnLoad True or false.
* @return {OBJLoader2Parallel}
*/
setTerminateWorkerOnLoad(terminateWorkerOnLoad: boolean): this;
/**
* See {@link OBJLoader2.load}
*/
load(url: string, onLoad: CallbackOnLoadType, onProgress?: FileLoaderOnProgressType, onError?: FileLoaderOnErrorType, onMeshAlter?: CallbackOnMeshAlterType): void;
/**
* See {@link OBJLoader2.parse}
* The callback onLoad needs to be set to be able to receive the content if used in parallel mode.
*/
parse(objToParse: ArrayBuffer): Object3D<import("three").Object3DEventMap>;
private initWorkerParse;
/**
* Provide instructions on what is to be contained in the worker.
*
* @return {Promise<void>}
* @private
*/
private initWorker;
private executeWorker;
/**
*
* @param {Mesh} mesh
* @param {object} materialMetaInfo
*/
private onWorkerMessage;
}
//# sourceMappingURL=OBJLoader2Parallel.d.ts.map