@inweb/viewer-three 26.12.7 → 27.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/viewer-three.js +9 -15
- package/dist/viewer-three.js.map +1 -1
- package/dist/viewer-three.min.js +3 -3
- package/dist/viewer-three.module.js +9 -15
- package/dist/viewer-three.module.js.map +1 -1
- package/lib/Viewer/Viewer.d.ts +2 -1
- package/package.json +5 -5
- package/src/Viewer/Viewer.ts +10 -4
- package/src/Viewer/loaders/DynamicGltfLoader/DynamicGltfLoader.js +2 -12
|
@@ -4285,8 +4285,6 @@ class DynamicGltfLoader {
|
|
|
4285
4285
|
this.frameDelay = 0;
|
|
4286
4286
|
this.graphicsObjectLimit = 10000;
|
|
4287
4287
|
this.totalLoadedObjects = 0;
|
|
4288
|
-
this.lastUpdateTime = 0;
|
|
4289
|
-
this.updateInterval = 1000;
|
|
4290
4288
|
this.handleToObjects = new Map();
|
|
4291
4289
|
this.originalObjects = new Set();
|
|
4292
4290
|
this.originalObjectsToSelection = new Set();
|
|
@@ -4962,11 +4960,7 @@ class DynamicGltfLoader {
|
|
|
4962
4960
|
loaded: loadedCount,
|
|
4963
4961
|
total: totalNodes,
|
|
4964
4962
|
});
|
|
4965
|
-
|
|
4966
|
-
if (currentTime - this.lastUpdateTime >= this.updateInterval) {
|
|
4967
|
-
this.dispatchEvent("update");
|
|
4968
|
-
this.lastUpdateTime = currentTime;
|
|
4969
|
-
}
|
|
4963
|
+
this.dispatchEvent("update");
|
|
4970
4964
|
await new Promise((resolve) => {
|
|
4971
4965
|
setTimeout(resolve, 0);
|
|
4972
4966
|
});
|
|
@@ -5306,7 +5300,6 @@ class DynamicGltfLoader {
|
|
|
5306
5300
|
this.objectTransforms.clear();
|
|
5307
5301
|
this.transformedGeometries.clear();
|
|
5308
5302
|
this.totalLoadedObjects = 0;
|
|
5309
|
-
this.lastUpdateTime = 0;
|
|
5310
5303
|
this.currentMemoryUsage = 0;
|
|
5311
5304
|
this.loadedGeometrySize = 0;
|
|
5312
5305
|
this.abortController = new AbortController();
|
|
@@ -5417,9 +5410,7 @@ class DynamicGltfLoader {
|
|
|
5417
5410
|
}
|
|
5418
5411
|
yieldToUI() {
|
|
5419
5412
|
return new Promise((resolve) => {
|
|
5420
|
-
|
|
5421
|
-
setTimeout(resolve, 0);
|
|
5422
|
-
});
|
|
5413
|
+
setTimeout(resolve, 0);
|
|
5423
5414
|
});
|
|
5424
5415
|
}
|
|
5425
5416
|
async optimizeScene() {
|
|
@@ -6774,6 +6765,7 @@ class Viewer extends EventEmitter2 {
|
|
|
6774
6765
|
this.target = new Vector3(0, 0, 0);
|
|
6775
6766
|
this._activeDragger = null;
|
|
6776
6767
|
this._components = [];
|
|
6768
|
+
this._updateDelay = 1000;
|
|
6777
6769
|
this._renderNeeded = false;
|
|
6778
6770
|
this._renderTime = 0;
|
|
6779
6771
|
this.render = this.render.bind(this);
|
|
@@ -6911,16 +6903,18 @@ class Viewer extends EventEmitter2 {
|
|
|
6911
6903
|
this.emitEvent({ type: "resize", width, height });
|
|
6912
6904
|
}
|
|
6913
6905
|
update(force = false) {
|
|
6906
|
+
const time = performance.now();
|
|
6907
|
+
force = force || time - this._renderTime >= this._updateDelay;
|
|
6914
6908
|
this._renderNeeded = true;
|
|
6915
6909
|
if (force)
|
|
6916
|
-
this.render();
|
|
6917
|
-
this.emitEvent({ type: "update",
|
|
6910
|
+
this.render(time);
|
|
6911
|
+
this.emitEvent({ type: "update", force });
|
|
6918
6912
|
}
|
|
6919
|
-
render(time
|
|
6913
|
+
render(time) {
|
|
6920
6914
|
var _a, _b;
|
|
6921
6915
|
if (!this.renderer)
|
|
6922
6916
|
return;
|
|
6923
|
-
if (!this._renderNeeded
|
|
6917
|
+
if (!this._renderNeeded)
|
|
6924
6918
|
return;
|
|
6925
6919
|
if (!time)
|
|
6926
6920
|
time = performance.now();
|