vim-web 0.3.23 → 0.3.25

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.
Files changed (192) hide show
  1. package/dist/types/react-viewer/bim/bimInfoBody.d.ts +9 -0
  2. package/dist/types/react-viewer/bim/bimInfoData.d.ts +77 -0
  3. package/dist/types/react-viewer/bim/bimInfoHeader.d.ts +6 -0
  4. package/dist/types/react-viewer/bim/bimInfoObject.d.ts +12 -0
  5. package/dist/types/react-viewer/bim/bimInfoPanel.d.ts +10 -0
  6. package/dist/types/react-viewer/bim/bimInfoVim.d.ts +5 -0
  7. package/dist/types/react-viewer/bim/bimPanel.d.ts +40 -0
  8. package/dist/types/react-viewer/bim/bimSearch.d.ts +17 -0
  9. package/dist/types/react-viewer/bim/bimTree.d.ts +31 -0
  10. package/dist/types/react-viewer/bim/bimTreeData.d.ts +43 -0
  11. package/dist/types/react-viewer/bim/bimUtils.d.ts +13 -0
  12. package/dist/types/react-viewer/bim/openState.d.ts +5 -0
  13. package/dist/types/react-viewer/container.d.ts +27 -0
  14. package/dist/types/react-viewer/controlbar/controlBar.d.ts +57 -0
  15. package/dist/types/react-viewer/controlbar/controlBarButton.d.ts +17 -0
  16. package/dist/types/react-viewer/controlbar/controlBarCommands.d.ts +4 -0
  17. package/dist/types/react-viewer/controlbar/controlBarSection.d.ts +10 -0
  18. package/dist/types/react-viewer/controlbar/fullScreenState.d.ts +4 -0
  19. package/dist/types/react-viewer/controlbar/measureState.d.ts +7 -0
  20. package/dist/types/react-viewer/controlbar/pointerState.d.ts +6 -0
  21. package/dist/types/react-viewer/controlbar/restOfScreen.d.ts +5 -0
  22. package/dist/types/react-viewer/controlbar/sectionBoxState.d.ts +15 -0
  23. package/dist/types/react-viewer/errors/errorStyle.d.ts +15 -0
  24. package/dist/types/react-viewer/errors/errorUtils.d.ts +2 -0
  25. package/dist/types/react-viewer/errors/errors.d.ts +5 -0
  26. package/dist/types/react-viewer/errors/fileDownloadingError.d.ts +2 -0
  27. package/dist/types/react-viewer/errors/fileLoadingError.d.ts +2 -0
  28. package/dist/types/react-viewer/errors/fileOpeningError.d.ts +2 -0
  29. package/dist/types/react-viewer/errors/serverCompatibilityError.d.ts +2 -0
  30. package/dist/types/react-viewer/errors/serverConnectionError.d.ts +2 -0
  31. package/dist/types/react-viewer/helpers/camera.d.ts +37 -0
  32. package/dist/types/react-viewer/helpers/cameraObserver.d.ts +8 -0
  33. package/dist/types/react-viewer/helpers/cursor.d.ts +35 -0
  34. package/dist/types/react-viewer/helpers/data.d.ts +27 -0
  35. package/dist/types/react-viewer/helpers/deferredPromise.d.ts +8 -0
  36. package/dist/types/react-viewer/helpers/element.d.ts +13 -0
  37. package/dist/types/react-viewer/helpers/fullScreenObserver.d.ts +9 -0
  38. package/dist/types/react-viewer/helpers/inputs.d.ts +23 -0
  39. package/dist/types/react-viewer/helpers/isolation.d.ts +87 -0
  40. package/dist/types/react-viewer/helpers/loadRequest.d.ts +29 -0
  41. package/dist/types/react-viewer/helpers/requestResult.d.ts +13 -0
  42. package/dist/types/react-viewer/helpers/utils.d.ts +7 -0
  43. package/dist/types/react-viewer/panels/axesPanel.d.ts +20 -0
  44. package/dist/types/react-viewer/panels/contextMenu.d.ts +75 -0
  45. package/dist/types/react-viewer/panels/help.d.ts +15 -0
  46. package/dist/types/react-viewer/panels/icons.d.ts +46 -0
  47. package/dist/types/react-viewer/panels/loadingBox.d.ts +26 -0
  48. package/dist/types/react-viewer/panels/logo.d.ts +5 -0
  49. package/dist/types/react-viewer/panels/messageBox.d.ts +14 -0
  50. package/dist/types/react-viewer/panels/modal.d.ts +18 -0
  51. package/dist/types/react-viewer/panels/overlay.d.ts +10 -0
  52. package/dist/types/react-viewer/panels/performance.d.ts +7 -0
  53. package/dist/types/react-viewer/panels/toast.d.ts +22 -0
  54. package/dist/types/react-viewer/reactViewerIndex.d.ts +8 -0
  55. package/dist/types/react-viewer/settings/menuSettings.d.ts +17 -0
  56. package/dist/types/react-viewer/settings/settings.d.ts +65 -0
  57. package/dist/types/react-viewer/settings/settingsState.d.ts +18 -0
  58. package/dist/types/react-viewer/settings/settingsStorage.d.ts +6 -0
  59. package/dist/types/react-viewer/sidePanel/sidePanel.d.ts +20 -0
  60. package/dist/types/react-viewer/sidePanel/sideState.d.ts +22 -0
  61. package/dist/types/react-viewer/ultra/ultraComponent.d.ts +30 -0
  62. package/dist/types/react-viewer/ultra/ultraErrors.d.ts +3 -0
  63. package/dist/types/react-viewer/urls.d.ts +2 -0
  64. package/dist/types/react-viewer/webgl/viewerState.d.ts +11 -0
  65. package/dist/types/react-viewer/webgl/webglComponent.d.ts +41 -0
  66. package/dist/types/react-viewer/webgl/webglComponentRef.d.ts +99 -0
  67. package/dist/types/react-viewer/webgl/webglLoading.d.ts +67 -0
  68. package/dist/types/ultra-viewer/ultraViewerIndex.d.ts +8 -0
  69. package/dist/types/ultra-viewer/utils/array.d.ts +18 -0
  70. package/dist/types/ultra-viewer/utils/debounce.d.ts +1 -0
  71. package/dist/types/ultra-viewer/utils/deferredPromise.d.ts +8 -0
  72. package/dist/types/ultra-viewer/utils/math3d.d.ts +106 -0
  73. package/dist/types/ultra-viewer/utils/promise.d.ts +21 -0
  74. package/dist/types/ultra-viewer/utils/result.d.ts +11 -0
  75. package/dist/types/ultra-viewer/utils/url.d.ts +8 -0
  76. package/dist/types/ultra-viewer/utils/validation.d.ts +28 -0
  77. package/dist/types/ultra-viewer/viewer/camera.d.ts +118 -0
  78. package/dist/types/ultra-viewer/viewer/color.d.ts +57 -0
  79. package/dist/types/ultra-viewer/viewer/colorManager.d.ts +73 -0
  80. package/dist/types/ultra-viewer/viewer/decoder.d.ts +116 -0
  81. package/dist/types/ultra-viewer/viewer/decoderWithWorker.d.ts +80 -0
  82. package/dist/types/ultra-viewer/viewer/inputs/InputTouch.d.ts +25 -0
  83. package/dist/types/ultra-viewer/viewer/inputs/inputHandler.d.ts +7 -0
  84. package/dist/types/ultra-viewer/viewer/inputs/inputKeyboard.d.ts +20 -0
  85. package/dist/types/ultra-viewer/viewer/inputs/inputMouse.d.ts +21 -0
  86. package/dist/types/ultra-viewer/viewer/inputs/inputs.d.ts +27 -0
  87. package/dist/types/ultra-viewer/viewer/loadRequest.d.ts +36 -0
  88. package/dist/types/ultra-viewer/viewer/logger.d.ts +9 -0
  89. package/dist/types/ultra-viewer/viewer/marshal.d.ts +72 -0
  90. package/dist/types/ultra-viewer/viewer/protocol.d.ts +13 -0
  91. package/dist/types/ultra-viewer/viewer/renderer.d.ts +142 -0
  92. package/dist/types/ultra-viewer/viewer/rpcClient.d.ts +72 -0
  93. package/dist/types/ultra-viewer/viewer/rpcSafeClient.d.ts +382 -0
  94. package/dist/types/ultra-viewer/viewer/selection.d.ts +94 -0
  95. package/dist/types/ultra-viewer/viewer/socketClient.d.ts +141 -0
  96. package/dist/types/ultra-viewer/viewer/streamLogger.d.ts +19 -0
  97. package/dist/types/ultra-viewer/viewer/streamRenderer.d.ts +7 -0
  98. package/dist/types/ultra-viewer/viewer/viewer.d.ts +123 -0
  99. package/dist/types/ultra-viewer/viewer/viewport.d.ts +39 -0
  100. package/dist/types/ultra-viewer/viewer/vim.d.ts +111 -0
  101. package/dist/types/ultra-viewer/viewer/vimCollection.d.ts +43 -0
  102. package/dist/types/vimWebIndex.d.ts +4 -0
  103. package/dist/types/webgl-viewer/images.d.ts +4 -0
  104. package/dist/types/webgl-viewer/index.d.ts +26 -0
  105. package/dist/types/webgl-viewer/utils/boxes.d.ts +5 -0
  106. package/dist/types/webgl-viewer/utils/deferredPromise.d.ts +8 -0
  107. package/dist/types/webgl-viewer/utils/requestResult.d.ts +13 -0
  108. package/dist/types/webgl-viewer/vim-loader/averageBoundingBox.d.ts +6 -0
  109. package/dist/types/webgl-viewer/vim-loader/colorAttributes.d.ts +34 -0
  110. package/dist/types/webgl-viewer/vim-loader/elementMapping.d.ts +113 -0
  111. package/dist/types/webgl-viewer/vim-loader/geometry.d.ts +105 -0
  112. package/dist/types/webgl-viewer/vim-loader/materials/isolationMaterial.d.ts +12 -0
  113. package/dist/types/webgl-viewer/vim-loader/materials/maskMaterial.d.ts +8 -0
  114. package/dist/types/webgl-viewer/vim-loader/materials/mergeMaterial.d.ts +18 -0
  115. package/dist/types/webgl-viewer/vim-loader/materials/outlineMaterial.d.ts +36 -0
  116. package/dist/types/webgl-viewer/vim-loader/materials/simpleMaterial.d.ts +12 -0
  117. package/dist/types/webgl-viewer/vim-loader/materials/skyboxMaterial.d.ts +16 -0
  118. package/dist/types/webgl-viewer/vim-loader/materials/standardMaterial.d.ts +57 -0
  119. package/dist/types/webgl-viewer/vim-loader/materials/transferMaterial.d.ts +8 -0
  120. package/dist/types/webgl-viewer/vim-loader/materials/viewerMaterials.d.ts +158 -0
  121. package/dist/types/webgl-viewer/vim-loader/mesh.d.ts +115 -0
  122. package/dist/types/webgl-viewer/vim-loader/object3D.d.ts +105 -0
  123. package/dist/types/webgl-viewer/vim-loader/objectAttributes.d.ts +19 -0
  124. package/dist/types/webgl-viewer/vim-loader/progressive/g3dOffsets.d.ts +53 -0
  125. package/dist/types/webgl-viewer/vim-loader/progressive/g3dSubset.d.ts +115 -0
  126. package/dist/types/webgl-viewer/vim-loader/progressive/insertableGeometry.d.ts +40 -0
  127. package/dist/types/webgl-viewer/vim-loader/progressive/insertableMesh.d.ts +59 -0
  128. package/dist/types/webgl-viewer/vim-loader/progressive/insertableSubmesh.d.ts +43 -0
  129. package/dist/types/webgl-viewer/vim-loader/progressive/instancedMesh.d.ts +32 -0
  130. package/dist/types/webgl-viewer/vim-loader/progressive/instancedMeshFactory.d.ts +20 -0
  131. package/dist/types/webgl-viewer/vim-loader/progressive/instancedSubmesh.d.ts +31 -0
  132. package/dist/types/webgl-viewer/vim-loader/progressive/legacyMeshFactory.d.ts +23 -0
  133. package/dist/types/webgl-viewer/vim-loader/progressive/loadingSynchronizer.d.ts +27 -0
  134. package/dist/types/webgl-viewer/vim-loader/progressive/open.d.ts +12 -0
  135. package/dist/types/webgl-viewer/vim-loader/progressive/subsetBuilder.d.ts +73 -0
  136. package/dist/types/webgl-viewer/vim-loader/progressive/subsetRequest.d.ts +37 -0
  137. package/dist/types/webgl-viewer/vim-loader/progressive/vimRequest.d.ts +44 -0
  138. package/dist/types/webgl-viewer/vim-loader/progressive/vimx.d.ts +17 -0
  139. package/dist/types/webgl-viewer/vim-loader/scene.d.ts +92 -0
  140. package/dist/types/webgl-viewer/vim-loader/vim.d.ts +157 -0
  141. package/dist/types/webgl-viewer/vim-loader/vimSettings.d.ts +62 -0
  142. package/dist/types/webgl-viewer/vim-webgl-viewer/camera/camera.d.ts +255 -0
  143. package/dist/types/webgl-viewer/vim-webgl-viewer/camera/cameraMovement.d.ts +77 -0
  144. package/dist/types/webgl-viewer/vim-webgl-viewer/camera/cameraMovementLerp.d.ts +28 -0
  145. package/dist/types/webgl-viewer/vim-webgl-viewer/camera/cameraMovementSnap.d.ts +24 -0
  146. package/dist/types/webgl-viewer/vim-webgl-viewer/camera/orthographic.d.ts +12 -0
  147. package/dist/types/webgl-viewer/vim-webgl-viewer/camera/perspective.d.ts +12 -0
  148. package/dist/types/webgl-viewer/vim-webgl-viewer/environment/cameraLight.d.ts +43 -0
  149. package/dist/types/webgl-viewer/vim-webgl-viewer/environment/environment.d.ts +44 -0
  150. package/dist/types/webgl-viewer/vim-webgl-viewer/environment/groundPlane.d.ts +25 -0
  151. package/dist/types/webgl-viewer/vim-webgl-viewer/environment/skybox.d.ts +39 -0
  152. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/axes/axes.d.ts +14 -0
  153. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/axes/axesSettings.d.ts +19 -0
  154. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/axes/gizmoAxes.d.ts +60 -0
  155. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/gizmoLoading.d.ts +23 -0
  156. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/gizmoOrbit.d.ts +71 -0
  157. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/gizmoRectangle.d.ts +51 -0
  158. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/gizmos.d.ts +50 -0
  159. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/markers/gizmoMarker.d.ts +64 -0
  160. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/markers/gizmoMarkers.d.ts +29 -0
  161. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/measure/measure.d.ts +103 -0
  162. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/measure/measureFlow.d.ts +36 -0
  163. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/measure/measureGizmo.d.ts +44 -0
  164. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/measure/measureHtml.d.ts +26 -0
  165. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/sectionBox/sectionBox.d.ts +70 -0
  166. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/sectionBox/sectionBoxGizmo.d.ts +47 -0
  167. package/dist/types/webgl-viewer/vim-webgl-viewer/gizmos/sectionBox/sectionBoxInputs.d.ts +39 -0
  168. package/dist/types/webgl-viewer/vim-webgl-viewer/inputs/input.d.ts +128 -0
  169. package/dist/types/webgl-viewer/vim-webgl-viewer/inputs/inputHandler.d.ts +29 -0
  170. package/dist/types/webgl-viewer/vim-webgl-viewer/inputs/keyboard.d.ts +113 -0
  171. package/dist/types/webgl-viewer/vim-webgl-viewer/inputs/mouse.d.ts +66 -0
  172. package/dist/types/webgl-viewer/vim-webgl-viewer/inputs/touch.d.ts +45 -0
  173. package/dist/types/webgl-viewer/vim-webgl-viewer/raycaster.d.ts +89 -0
  174. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/mergePass.d.ts +16 -0
  175. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/outlinePass.d.ts +19 -0
  176. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/renderScene.d.ts +49 -0
  177. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/renderer.d.ts +125 -0
  178. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/renderingComposer.d.ts +46 -0
  179. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/renderingSection.d.ts +36 -0
  180. package/dist/types/webgl-viewer/vim-webgl-viewer/rendering/transferPass.d.ts +15 -0
  181. package/dist/types/webgl-viewer/vim-webgl-viewer/selection.d.ts +90 -0
  182. package/dist/types/webgl-viewer/vim-webgl-viewer/settings/defaultViewerSettings.d.ts +5 -0
  183. package/dist/types/webgl-viewer/vim-webgl-viewer/settings/viewerSettings.d.ts +342 -0
  184. package/dist/types/webgl-viewer/vim-webgl-viewer/settings/viewerSettingsParsing.d.ts +9 -0
  185. package/dist/types/webgl-viewer/vim-webgl-viewer/viewer.d.ts +100 -0
  186. package/dist/types/webgl-viewer/vim-webgl-viewer/viewport.d.ts +73 -0
  187. package/dist/vim-web.css +2029 -0
  188. package/dist/vim-web.iife.js +72763 -0
  189. package/dist/vim-web.iife.js.map +1 -0
  190. package/dist/vim-web.mjs +72746 -0
  191. package/dist/vim-web.mjs.map +1 -0
  192. package/package.json +1 -1
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @module viw-webgl-viewer/camera
3
+ */
4
+ import { CameraMovement } from './cameraMovement';
5
+ import { Object3D } from '../../vim-loader/object3D';
6
+ import * as THREE from 'three';
7
+ export declare class CameraMovementSnap extends CameraMovement {
8
+ /**
9
+ * Moves the camera closer or farther away from orbit target.
10
+ * @param amount movement size.
11
+ */
12
+ zoom(amount: number): void;
13
+ reset(): void;
14
+ setDistance(dist: number): void;
15
+ rotate(angle: THREE.Vector2): void;
16
+ applyRotation(quaternion: THREE.Quaternion): void;
17
+ target(target: Object3D | THREE.Vector3): void;
18
+ orbit(angle: THREE.Vector2): void;
19
+ move3(vector: THREE.Vector3): void;
20
+ set(position: THREE.Vector3, target?: THREE.Vector3): void;
21
+ private lockVector;
22
+ predictOrbit(angle: THREE.Vector2): THREE.Vector3;
23
+ predictRotate(angle: THREE.Vector2): THREE.Quaternion;
24
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @module viw-webgl-viewer/camera
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ViewerSettings } from '../settings/viewerSettings';
6
+ export declare class OrthographicWrapper {
7
+ camera: THREE.OrthographicCamera;
8
+ constructor(camera: THREE.OrthographicCamera);
9
+ frustrumSizeAt(point: THREE.Vector3): THREE.Vector2;
10
+ applySettings(settings: ViewerSettings): void;
11
+ updateProjection(size: THREE.Vector2, aspect: number): void;
12
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @module viw-webgl-viewer/camera
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ViewerSettings } from '../settings/viewerSettings';
6
+ export declare class PerspectiveWrapper {
7
+ camera: THREE.PerspectiveCamera;
8
+ constructor(camera: THREE.PerspectiveCamera);
9
+ applySettings(settings: ViewerSettings): void;
10
+ updateProjection(aspect: number): void;
11
+ frustrumSizeAt(point: THREE.Vector3): THREE.Vector2;
12
+ }
@@ -0,0 +1,43 @@
1
+ /**
2
+ * @module viw-webgl-viewer
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ICamera } from '../camera/camera';
6
+ export declare class CameraLight {
7
+ readonly light: THREE.DirectionalLight;
8
+ private readonly _camera;
9
+ private _unsubscribe;
10
+ /**
11
+ * The position of the light.
12
+ */
13
+ position: THREE.Vector3;
14
+ /**
15
+ * The color of the light.
16
+ */
17
+ get color(): THREE.Color;
18
+ set color(value: THREE.Color);
19
+ /**
20
+ * The intensity of the light.
21
+ */
22
+ get intensity(): number;
23
+ set intensity(value: number);
24
+ /**
25
+ * Whether the light follows the camera or not.
26
+ */
27
+ get followCamera(): boolean;
28
+ set followCamera(value: boolean);
29
+ constructor(camera: ICamera, options: {
30
+ followCamera: boolean;
31
+ position: THREE.Vector3;
32
+ color: THREE.Color;
33
+ intensity: number;
34
+ });
35
+ /**
36
+ * Updates the light's position based on the camera's quaternion.
37
+ */
38
+ private updateLightPosition;
39
+ /**
40
+ * Disposes of the camera light.
41
+ */
42
+ dispose(): void;
43
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @module viw-webgl-viewer
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ViewerSettings } from '../settings/viewerSettings';
6
+ import { ICamera } from '../camera/camera';
7
+ import { ViewerMaterials } from '../../vim-loader/materials/viewerMaterials';
8
+ import { GroundPlane } from './groundPlane';
9
+ import { Skybox } from './skybox';
10
+ import { Renderer } from '../rendering/renderer';
11
+ import { CameraLight } from './cameraLight';
12
+ /**
13
+ * Manages ground plane and lights that are part of the THREE.Scene to render but not part of the Vims.
14
+ */
15
+ export declare class Environment {
16
+ private readonly _renderer;
17
+ private readonly _camera;
18
+ /**
19
+ * The skylight in the scene.
20
+ */
21
+ readonly skyLight: THREE.HemisphereLight;
22
+ /**
23
+ * The array of directional lights in the scene.
24
+ */
25
+ readonly sunLights: ReadonlyArray<CameraLight>;
26
+ /**
27
+ * The ground plane under the model in the scene.
28
+ */
29
+ readonly groundPlane: GroundPlane;
30
+ readonly skybox: Skybox;
31
+ constructor(camera: ICamera, renderer: Renderer, viewerMaterials: ViewerMaterials, settings: ViewerSettings);
32
+ /**
33
+ * Returns all three objects composing the environment
34
+ */
35
+ private getObjects;
36
+ private createSkyLight;
37
+ private createSunLights;
38
+ private addObjectsToRenderer;
39
+ private setupRendererListeners;
40
+ /**
41
+ * Dispose of all resources.
42
+ */
43
+ dispose(): void;
44
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @module viw-webgl-viewer
3
+ */
4
+ import * as THREE from 'three';
5
+ import { TextureEncoding, ViewerSettings } from '../settings/viewerSettings';
6
+ /**
7
+ * Manages the THREE.Mesh for the ground plane under the vims
8
+ */
9
+ export declare class GroundPlane {
10
+ readonly mesh: THREE.Mesh;
11
+ private _source;
12
+ private _size;
13
+ /**
14
+ * Whether the ground plane is visible or not.
15
+ */
16
+ get visible(): boolean;
17
+ set visible(value: boolean);
18
+ private _geometry;
19
+ private _material;
20
+ private _texture;
21
+ constructor(settings: ViewerSettings);
22
+ adaptToContent(box: THREE.Box3): void;
23
+ applyTexture(encoding: TextureEncoding, source: string): void;
24
+ dispose(): void;
25
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @module viw-webgl-viewer
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ViewerSettings } from '../settings/viewerSettings';
6
+ import { ICamera } from '../camera/camera';
7
+ import { ViewerMaterials } from '../../vim-loader/materials/viewerMaterials';
8
+ import { Renderer } from '../rendering/renderer';
9
+ export declare class Skybox {
10
+ readonly mesh: THREE.Mesh;
11
+ /**
12
+ * Whether the skybox is enabled or not.
13
+ */
14
+ get enable(): boolean;
15
+ /**
16
+ * Whether the skybox is enabled or not.
17
+ */
18
+ set enable(value: boolean);
19
+ /**
20
+ * The color of the sky.
21
+ */
22
+ get skyColor(): THREE.Color;
23
+ set skyColor(value: THREE.Color);
24
+ /**
25
+ * The color of the ground.
26
+ */
27
+ get groundColor(): THREE.Color;
28
+ set groundColor(value: THREE.Color);
29
+ /**
30
+ * The sharpness of the gradient transition between the sky and the ground.
31
+ */
32
+ get sharpness(): number;
33
+ set sharpness(value: number);
34
+ private readonly _plane;
35
+ private readonly _material;
36
+ private readonly _renderer;
37
+ constructor(camera: ICamera, renderer: Renderer, materials: ViewerMaterials, settings: ViewerSettings);
38
+ dispose(): void;
39
+ }
@@ -0,0 +1,14 @@
1
+ import * as THREE from 'three';
2
+ import { AxesSettings } from './axesSettings';
3
+ export declare class Axis {
4
+ axis: string;
5
+ direction: THREE.Vector3;
6
+ size: number;
7
+ color: string;
8
+ colorSub: string;
9
+ position: THREE.Vector3;
10
+ label: string | undefined;
11
+ line: number | undefined;
12
+ constructor(init: Axis);
13
+ }
14
+ export declare function createAxes(settings: AxesSettings): Axis[];
@@ -0,0 +1,19 @@
1
+ export declare class AxesSettings {
2
+ size: number;
3
+ padding: number;
4
+ bubbleSizePrimary: number;
5
+ bubbleSizeSecondary: number;
6
+ lineWidth: number;
7
+ fontPxSize: number;
8
+ fontFamily: string;
9
+ fontWeight: string;
10
+ fontColor: string;
11
+ className: string;
12
+ colorX: string;
13
+ colorY: string;
14
+ colorZ: string;
15
+ colorXSub: string;
16
+ colorYSub: string;
17
+ colorZSub: string;
18
+ constructor(init?: Partial<AxesSettings>);
19
+ }
@@ -0,0 +1,60 @@
1
+ /**
2
+ * @module viw-webgl-viewer/gizmos
3
+ */
4
+ import { Camera } from '../../camera/camera';
5
+ import { Viewport } from '../../viewport';
6
+ import { AxesSettings } from './axesSettings';
7
+ /**
8
+ * The axis gizmos of the viewer.
9
+ */
10
+ export declare class GizmoAxes {
11
+ private _initialOptions;
12
+ private _options;
13
+ private _camera;
14
+ private _canvas;
15
+ private _context;
16
+ private _rect;
17
+ private _reparentConnection;
18
+ private _axes;
19
+ private _pointerInside;
20
+ private _isDragging;
21
+ private _isDragSignificant;
22
+ private _dragStart;
23
+ private _dragLast;
24
+ private _pointer;
25
+ private _center;
26
+ private _invRotMat;
27
+ private _selectedAxis;
28
+ /**
29
+ * The canvas on which the axes are drawn.
30
+ */
31
+ get canvas(): HTMLCanvasElement;
32
+ constructor(camera: Camera, viewport: Viewport, options?: Partial<AxesSettings>);
33
+ reparent(parent: HTMLElement): void;
34
+ resize(size: number): void;
35
+ private createCanvas;
36
+ private onTouchMove;
37
+ private onTouchEnd;
38
+ private onPointerDown;
39
+ private onPointerUp;
40
+ private onPointerEnter;
41
+ private onPointerLeave;
42
+ private onPointerMove;
43
+ private toMouseVector;
44
+ private onPointerDrag;
45
+ private initDrag;
46
+ private updateDrag;
47
+ private endDrag;
48
+ private onMouseClick;
49
+ update: () => void;
50
+ private drawLayers;
51
+ private drawCircle;
52
+ private drawLine;
53
+ private setAxisPosition;
54
+ private pickAxes;
55
+ /**
56
+ * Disposes of the gizmo, removing event listeners and cleaning up resources.
57
+ */
58
+ dispose(): void;
59
+ }
60
+ export { GizmoAxes as OrbitControlsGizmo };
@@ -0,0 +1,23 @@
1
+ /**
2
+ @module viw-webgl-viewer/gizmos/sectionBox
3
+ */
4
+ import { Viewer } from '../viewer';
5
+ /**
6
+ * The loading indicator gizmo.
7
+ */
8
+ export declare class GizmoLoading {
9
+ private _viewer;
10
+ private _spinner;
11
+ private _visible;
12
+ constructor(viewer: Viewer);
13
+ private createBar;
14
+ /**
15
+ * Indicates whether the loading gizmo will be rendered.
16
+ */
17
+ get visible(): boolean;
18
+ set visible(value: boolean);
19
+ /**
20
+ * Disposes of all resources.
21
+ */
22
+ dispose(): void;
23
+ }
@@ -0,0 +1,71 @@
1
+ /**
2
+ * @module viw-webgl-viewer/gizmos
3
+ */
4
+ import * as THREE from 'three';
5
+ import { Renderer } from '../rendering/renderer';
6
+ import { Camera } from '../camera/camera';
7
+ import { ViewerSettings } from '../settings/viewerSettings';
8
+ import { Input } from '../inputs/input';
9
+ /**
10
+ * Manages the camera target gizmo
11
+ */
12
+ export declare class GizmoOrbit {
13
+ private _renderer;
14
+ private _camera;
15
+ private _inputs;
16
+ private _size;
17
+ private _color;
18
+ private _opacity;
19
+ private _opacityAlways;
20
+ private _showDurationMs;
21
+ private _box;
22
+ private _wireframe;
23
+ private _material;
24
+ private _materialAlways;
25
+ private _gizmos;
26
+ private _disconnectCamera;
27
+ private _timeout;
28
+ private _active;
29
+ private _animation;
30
+ constructor(renderer: Renderer, camera: Camera, input: Input, settings: ViewerSettings);
31
+ private connect;
32
+ private onUpdate;
33
+ /**
34
+ * Determines whether the orbit gizmo is enabled.
35
+ */
36
+ get enabled(): boolean;
37
+ set enabled(value: boolean);
38
+ /**
39
+ * Show or hide the gizmo for a brief delay if the gizmo is active.
40
+ * @param {boolean} [show=true] - Whether to show or hide the gizmo.
41
+ */
42
+ show(show?: boolean): void;
43
+ /**
44
+ * Updates the position of the orbit gizmo.
45
+ * @param {THREE.Vector3} position - The new position of the orbit gizmo.
46
+ */
47
+ setPosition(position: THREE.Vector3): void;
48
+ /**
49
+ * Updates the size of the orbit gizmo.
50
+ * @param {number} size - The new size of the orbit gizmo.
51
+ */
52
+ setSize(size: number): void;
53
+ /**
54
+ * Updates the opacity of the orbit gizmo.
55
+ * @param {number} opacity - The opacity of the non-occluded part.
56
+ * @param {number} opacityAlways - The opacity of the occluded part.
57
+ */
58
+ setOpacity(opacity: number, opacityAlways: number): void;
59
+ /**
60
+ * Updates the color of the orbit gizmo.
61
+ * @param {THREE.Color} color - The new color for the orbit gizmo.
62
+ */
63
+ setColor(color: THREE.Color): void;
64
+ private applySettings;
65
+ private updateScale;
66
+ private createGizmo;
67
+ /**
68
+ * Disposes of all resources.
69
+ */
70
+ dispose(): void;
71
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @module viw-webgl-viewer/gizmos
3
+ */
4
+ import * as THREE from 'three';
5
+ import { Viewer } from '../viewer';
6
+ /**
7
+ * Rectangle Gizmo used for rectangle selection.
8
+ */
9
+ export declare class GizmoRectangle {
10
+ private line;
11
+ private viewer;
12
+ private points;
13
+ constructor(viewer: Viewer);
14
+ /**
15
+ * Removes the object from rendering and dispose resources from memory
16
+ */
17
+ dispose(): void;
18
+ /**
19
+ * Indicates whether the gizmo is visible.
20
+ */
21
+ get visible(): boolean;
22
+ set visible(value: boolean);
23
+ /**
24
+ * Sets the two corner points defining the rectangle.
25
+ * @param {THREE.Vector2} posA - The position of the first corner.
26
+ * @param {THREE.Vector2} posB - The position of the second corner.
27
+ */
28
+ setCorners(posA: THREE.Vector2, posB: THREE.Vector2): void;
29
+ private getIntersection;
30
+ private updateRect;
31
+ private getBoxSize;
32
+ /**
33
+ * Returns the bounding box of the selection.
34
+ * The bounding box is the projection of the selection rectangle
35
+ * onto the plane coplanar to the closest hit of 5 raycasts: one in each corner and one in the center.
36
+ * X-----X
37
+ * | X |
38
+ * X-----X
39
+ * @returns {THREE.Box3} The bounding box of the selection.
40
+ */
41
+ getBoundingBox(target?: THREE.Box3): THREE.Box3;
42
+ /**
43
+ * Performs a raycast from the camera through the five interest points and returns the closest hit position.
44
+ * @returns {THREE.Vector3} The position of the closest hit.
45
+ */
46
+ getClosestHit(): THREE.Vector3;
47
+ /**
48
+ * Projects all points on a plane the coplanar to position.
49
+ */
50
+ private projectPoints;
51
+ }
@@ -0,0 +1,50 @@
1
+ import { Viewer } from '../viewer';
2
+ import { GizmoAxes } from './axes/gizmoAxes';
3
+ import { GizmoLoading } from './gizmoLoading';
4
+ import { GizmoOrbit } from './gizmoOrbit';
5
+ import { GizmoRectangle } from './gizmoRectangle';
6
+ import { IMeasure } from './measure/measure';
7
+ import { SectionBox } from './sectionBox/sectionBox';
8
+ import { GizmoMarkers } from './markers/gizmoMarkers';
9
+ import { Camera } from '../camera/camera';
10
+ /**
11
+ * Represents a collection of gizmos used for various visualization and interaction purposes within the viewer.
12
+ */
13
+ export declare class Gizmos {
14
+ private readonly viewer;
15
+ /**
16
+ * The interface to start and manage measure tool interaction.
17
+ */
18
+ get measure(): IMeasure;
19
+ private readonly _measure;
20
+ /**
21
+ * The section box gizmo.
22
+ */
23
+ readonly section: SectionBox;
24
+ /**
25
+ * The loading indicator gizmo.
26
+ */
27
+ readonly loading: GizmoLoading;
28
+ /**
29
+ * The camera orbit target gizmo.
30
+ */
31
+ readonly orbit: GizmoOrbit;
32
+ /**
33
+ * Rectangle Gizmo used for rectangle selection.
34
+ */
35
+ readonly rectangle: GizmoRectangle;
36
+ /**
37
+ * The axis gizmos of the viewer.
38
+ */
39
+ readonly axes: GizmoAxes;
40
+ /**
41
+ * The interface for adding and managing sprite markers in the scene.
42
+ */
43
+ readonly markers: GizmoMarkers;
44
+ constructor(viewer: Viewer, camera: Camera);
45
+ updateAfterCamera(): void;
46
+ /**
47
+ * Disposes of all gizmos.
48
+ */
49
+ dispose(): void;
50
+ }
@@ -0,0 +1,64 @@
1
+ import { Vim } from '../../../vim-loader/vim';
2
+ import { Viewer } from '../../viewer';
3
+ import * as THREE from 'three';
4
+ import { SimpleInstanceSubmesh } from '../../../vim-loader/mesh';
5
+ /**
6
+ * Marker gizmo that display an interactive sphere at a 3D positions
7
+ * Marker gizmos are still under development.
8
+ */
9
+ export declare class GizmoMarker {
10
+ readonly type = "Marker";
11
+ private _viewer;
12
+ private _submesh;
13
+ /**
14
+ * The vim object from which this object came from.
15
+ */
16
+ vim: Vim | undefined;
17
+ /**
18
+ * The bim element index associated with this object.
19
+ */
20
+ element: number | undefined;
21
+ /**
22
+ * The geometry instances associated with this object.
23
+ */
24
+ instances: number[] | undefined;
25
+ private _outlineAttribute;
26
+ private _visibleAttribute;
27
+ private _coloredAttribute;
28
+ private _focusedAttribute;
29
+ private _colorAttribute;
30
+ constructor(viewer: Viewer, submesh: SimpleInstanceSubmesh);
31
+ updateMesh(mesh: SimpleInstanceSubmesh): void;
32
+ /** Sets the position of the marker in the 3d scene */
33
+ set position(value: THREE.Vector3);
34
+ get position(): THREE.Vector3;
35
+ /**
36
+ * Always false
37
+ */
38
+ get hasMesh(): boolean;
39
+ /**
40
+ * Applies a color override instead of outlines.
41
+ */
42
+ get outline(): boolean;
43
+ set outline(value: boolean);
44
+ /**
45
+ * Enlarges the gizmo to indicate focus.
46
+ */
47
+ get focused(): boolean;
48
+ set focused(value: boolean);
49
+ /**
50
+ * Determines if the gizmo will be rendered.
51
+ */
52
+ get visible(): boolean;
53
+ set visible(value: boolean);
54
+ get color(): THREE.Color;
55
+ set color(color: THREE.Color);
56
+ get size(): number;
57
+ set size(value: number);
58
+ /**
59
+ * Retrieves the bounding box of the object from cache or computes it if needed.
60
+ * Returns a unit box arount the marker position.
61
+ * @returns {THREE.Box3 | undefined} The bounding box of the object.
62
+ */
63
+ getBoundingBox(): THREE.Box3;
64
+ }
@@ -0,0 +1,29 @@
1
+ import { Viewer } from '../../viewer';
2
+ import * as THREE from 'three';
3
+ import { GizmoMarker } from './gizmoMarker';
4
+ /**
5
+ * API for adding and managing sprite markers in the scene.
6
+ */
7
+ export declare class GizmoMarkers {
8
+ private _viewer;
9
+ private _markers;
10
+ private _mesh;
11
+ constructor(viewer: Viewer);
12
+ getMarkerFromIndex(index: number): GizmoMarker;
13
+ private createMesh;
14
+ private resizeMesh;
15
+ /**
16
+ * Adds a sprite marker at the specified position.
17
+ * @param {THREE.Vector3} position - The position at which to add the marker.
18
+ */
19
+ add(position: THREE.Vector3): GizmoMarker;
20
+ /**
21
+ * Removes the specified marker from the scene.
22
+ * @param {GizmoMarker} marker - The marker to remove.
23
+ */
24
+ remove(marker: GizmoMarker): void;
25
+ /**
26
+ * Removes all markers from the scene.
27
+ */
28
+ clear(): void;
29
+ }