@inweb/viewer-visualize 26.6.4 → 26.6.5

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.
@@ -2187,6 +2187,10 @@ class RenderLoopComponent {
2187
2187
  this.animate = (time = 0) => {
2188
2188
  this.requestId = requestAnimationFrame(this.animate);
2189
2189
  this.viewer.render(time);
2190
+ this.viewer.emitEvent({
2191
+ type: "animate",
2192
+ time: time
2193
+ });
2190
2194
  };
2191
2195
  this.viewer = viewer;
2192
2196
  this.animate();
@@ -2565,7 +2569,12 @@ class VSFXCloudModelLoader extends Loader {
2565
2569
  const arrayBuffer = await model.downloadResource(model.database, progress, this.abortController.signal);
2566
2570
  if (!this.viewer.visualizeJs) return this;
2567
2571
  const data = new Uint8Array(arrayBuffer);
2568
- visViewer.parseVsfx(data);
2572
+ try {
2573
+ visViewer.parseVsfx(data);
2574
+ } catch (error) {
2575
+ console.error("VSFX parse error.", error);
2576
+ throw error;
2577
+ }
2569
2578
  this.viewer.syncOpenCloudVisualStyle(false);
2570
2579
  this.viewer.syncOptions();
2571
2580
  this.viewer.syncOverlay();
@@ -2630,7 +2639,13 @@ class VSFXCloudStreamingLoader extends Loader {
2630
2639
  let isFireDatabaseChunk = false;
2631
2640
  const chunkLoadHandler = (progress, chunk) => {
2632
2641
  if (!this.viewer.visualizeJs) return;
2633
- const status = visViewer.parseVsfx(chunk);
2642
+ let status;
2643
+ try {
2644
+ status = visViewer.parseVsfx(chunk);
2645
+ } catch (error) {
2646
+ console.error("VSFX parse error.", error);
2647
+ throw error;
2648
+ }
2634
2649
  updateController.update(UpdateType.kDelay);
2635
2650
  this.viewer.emitEvent({
2636
2651
  type: "geometryprogress",
@@ -2700,7 +2715,13 @@ class VSFXCloudPartialLoader extends Loader {
2700
2715
  visViewer.memoryLimit = this.viewer.options.memoryLimit;
2701
2716
  const chunkLoadHandler = (progress, chunk, requestId = 0) => {
2702
2717
  if (!this.viewer.visualizeJs) return;
2703
- const state = visViewer.parseVsfxInPartialMode(requestId, chunk);
2718
+ let state;
2719
+ try {
2720
+ state = visViewer.parseVsfxInPartialMode(requestId, chunk);
2721
+ } catch (error) {
2722
+ console.error("VSFX parse error.", error);
2723
+ throw error;
2724
+ }
2704
2725
  updateController.update(UpdateType.kDelay);
2705
2726
  this.viewer.emitEvent({
2706
2727
  type: "geometryprogress",
@@ -2754,7 +2775,7 @@ class VSFXCloudPartialLoader extends Loader {
2754
2775
  ranges.push({
2755
2776
  requestId: requestId,
2756
2777
  begin: Number(record.begin),
2757
- end: Number(record.end)
2778
+ end: Number(record.end) - 1
2758
2779
  });
2759
2780
  record.delete();
2760
2781
  }
@@ -2840,9 +2861,9 @@ class VSFXCloudPartialLoader extends Loader {
2840
2861
  visViewer.attachPartialResolver(objectHandler);
2841
2862
  try {
2842
2863
  await model.downloadResource(model.database, chunkLoadHandler, this.abortController.signal);
2843
- } catch (e) {
2864
+ } catch (error) {
2844
2865
  window.clearTimeout(pendingRequestsTimerId);
2845
- if (!servicePartAborted) throw e;
2866
+ if (!servicePartAborted) throw error;
2846
2867
  }
2847
2868
  return this;
2848
2869
  }