async loadIfcUrl(url, fitToFrame = false, onProgress, onError) {
            try {
                const firstModel = Boolean(this.context.items.ifcModels.length === 0);
                const settings = this.loader.ifcManager.state.webIfcSettings;
                const fastBools = (settings === null || settings === void 0 ? void 0 : settings.USE_FAST_BOOLS) || true;
                const coordsToOrigin = (settings === null || settings === void 0 ? void 0 : settings.COORDINATE_TO_ORIGIN) || false;
                await this.loader.ifcManager.applyWebIfcConfig({
                    COORDINATE_TO_ORIGIN: firstModel && coordsToOrigin,
                    USE_FAST_BOOLS: fastBools
                });
                const ifcModel = await this.loader.loadAsync(url, onProgress);
                this.addIfcModel(ifcModel);
                if (firstModel && coordsToOrigin) {
                    const matrixArr = await this.loader.ifcManager.ifcAPI.GetCoordinationMatrix(ifcModel.modelID);
                    const matrix = new Matrix4().fromArray(matrixArr);
                    this.loader.ifcManager.setupCoordinationMatrix(matrix);
                }
                if (fitToFrame)
                    this.context.fitToFrame();
                return ifcModel;
            }
            catch (err) {
                console.error('Error loading IFC.');
                console.error(err);
                if (onError)
                    onError(err);
                return null;
            }
        }
Loads the given IFC in the current scene.
@file IFC as URL.
@fitToFrame (optional) if true, brings the perspectiveCamera to the loaded IFC.
@onProgress (optional) a callback function to report on downloading progress
@onError (optional) a callback function to report on loading errors