@inweb/viewer-visualize 26.9.5 → 26.9.7
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-visualize.js +47 -0
- package/dist/viewer-visualize.js.map +1 -1
- package/dist/viewer-visualize.min.js +1 -1
- package/dist/viewer-visualize.module.js +47 -0
- package/dist/viewer-visualize.module.js.map +1 -1
- package/lib/Viewer/Components/ResetComponent.d.ts +18 -0
- package/package.json +5 -5
- package/src/Viewer/Components/ResetComponent.ts +97 -0
- package/src/Viewer/Components/index.ts +2 -0
|
@@ -2590,11 +2590,58 @@ class GestureManagerComponent {
|
|
|
2590
2590
|
}
|
|
2591
2591
|
}
|
|
2592
2592
|
|
|
2593
|
+
class ResetComponent {
|
|
2594
|
+
constructor(viewer) {
|
|
2595
|
+
this.savedCameraSettings = null;
|
|
2596
|
+
this.onDatabaseChunk = () => {
|
|
2597
|
+
if (!this.viewer.visualizeJs)
|
|
2598
|
+
return;
|
|
2599
|
+
this.savedCameraSettings = this.getOrthogonalCameraSettings();
|
|
2600
|
+
};
|
|
2601
|
+
this.viewer = viewer;
|
|
2602
|
+
this.viewer.addEventListener("databasechunk", this.onDatabaseChunk);
|
|
2603
|
+
}
|
|
2604
|
+
dispose() {
|
|
2605
|
+
this.viewer.removeEventListener("databasechunk", this.onDatabaseChunk);
|
|
2606
|
+
}
|
|
2607
|
+
resetCameraPosition() {
|
|
2608
|
+
if (this.savedCameraSettings && this.viewer.visualizeJs) {
|
|
2609
|
+
this.setOrthogonalCameraSettings(this.savedCameraSettings);
|
|
2610
|
+
}
|
|
2611
|
+
}
|
|
2612
|
+
getOrthogonalCameraSettings() {
|
|
2613
|
+
const visViewer = this.viewer.visViewer();
|
|
2614
|
+
const activeView = visViewer.activeView;
|
|
2615
|
+
return {
|
|
2616
|
+
view_point: this.getPoint3dFromArray(activeView.viewPosition),
|
|
2617
|
+
direction: this.getPoint3dFromArray(activeView.viewTarget),
|
|
2618
|
+
up_vector: this.getPoint3dFromArray(activeView.upVector),
|
|
2619
|
+
field_width: activeView.viewFieldWidth,
|
|
2620
|
+
field_height: activeView.viewFieldHeight,
|
|
2621
|
+
view_to_world_scale: 1,
|
|
2622
|
+
};
|
|
2623
|
+
}
|
|
2624
|
+
setOrthogonalCameraSettings(settings) {
|
|
2625
|
+
const visViewer = this.viewer.visViewer();
|
|
2626
|
+
const activeView = visViewer.activeView;
|
|
2627
|
+
if (settings) {
|
|
2628
|
+
activeView.setView(this.getLogicalPoint3dAsArray(settings.view_point), this.getLogicalPoint3dAsArray(settings.direction), this.getLogicalPoint3dAsArray(settings.up_vector), settings.field_width, settings.field_height, true);
|
|
2629
|
+
}
|
|
2630
|
+
}
|
|
2631
|
+
getPoint3dFromArray(array) {
|
|
2632
|
+
return { x: array[0], y: array[1], z: array[2] };
|
|
2633
|
+
}
|
|
2634
|
+
getLogicalPoint3dAsArray(point3d) {
|
|
2635
|
+
return [point3d.x, point3d.y, point3d.z];
|
|
2636
|
+
}
|
|
2637
|
+
}
|
|
2638
|
+
|
|
2593
2639
|
const components = componentsRegistry("visualizejs");
|
|
2594
2640
|
components.registerComponent("ResizeCanvasComponent", (viewer) => new ResizeCanvasComponent(viewer));
|
|
2595
2641
|
components.registerComponent("RenderLoopComponent", (viewer) => new RenderLoopComponent(viewer));
|
|
2596
2642
|
components.registerComponent("ZoomWheelComponent", (viewer) => new ZoomWheelComponent(viewer));
|
|
2597
2643
|
components.registerComponent("GestureManagerComponent", (viewer) => new GestureManagerComponent(viewer));
|
|
2644
|
+
components.registerComponent("ResetComponent", (viewer) => new ResetComponent(viewer));
|
|
2598
2645
|
|
|
2599
2646
|
class FileLoader {
|
|
2600
2647
|
constructor() {
|