vim-web 0.3.44-dev.8 → 0.3.44-dev.80
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/README.md +2 -2
- package/dist/style.css +47 -33
- package/dist/types/core-viewers/index.d.ts +3 -0
- package/dist/types/core-viewers/{webgl/viewer/inputs/inputHandler.d.ts → shared/baseInputHandler.d.ts} +6 -6
- package/dist/types/core-viewers/shared/index.d.ts +9 -0
- package/dist/types/core-viewers/shared/inputHandler.d.ts +118 -0
- package/dist/types/core-viewers/shared/keyboardHandler.d.ts +96 -0
- package/dist/types/core-viewers/shared/mouseHandler.d.ts +26 -0
- package/dist/types/core-viewers/shared/raycaster.d.ts +13 -0
- package/dist/types/core-viewers/shared/selection.d.ts +105 -0
- package/dist/types/core-viewers/{webgl/viewer/inputs → shared}/touchHandler.d.ts +15 -18
- package/dist/types/core-viewers/shared/vim.d.ts +35 -0
- package/dist/types/core-viewers/ultra/{viewer/camera.d.ts → camera.d.ts} +14 -4
- package/dist/types/core-viewers/ultra/{viewer/colorManager.d.ts → colorManager.d.ts} +6 -6
- package/dist/types/core-viewers/ultra/{viewer/decoder.d.ts → decoder.d.ts} +0 -8
- package/dist/types/core-viewers/ultra/element3d.d.ts +15 -0
- package/dist/types/core-viewers/ultra/index.d.ts +28 -8
- package/dist/types/core-viewers/ultra/inputAdapter.d.ts +5 -0
- package/dist/types/core-viewers/ultra/nodeState.d.ts +113 -0
- package/dist/types/core-viewers/ultra/raycaster.d.ts +52 -0
- package/dist/types/core-viewers/ultra/{viewer/color.d.ts → remoteColor.d.ts} +3 -3
- package/dist/types/core-viewers/ultra/{viewer/renderer.d.ts → renderer.d.ts} +9 -3
- package/dist/types/core-viewers/ultra/{viewer/rpcClient.d.ts → rpcClient.d.ts} +27 -28
- package/dist/types/core-viewers/ultra/rpcMarshal.d.ts +62 -0
- package/dist/types/core-viewers/ultra/{viewer/rpcSafeClient.d.ts → rpcSafeClient.d.ts} +22 -23
- package/dist/types/core-viewers/ultra/{utils/math3d.d.ts → rpcTypes.d.ts} +22 -22
- package/dist/types/core-viewers/ultra/{viewer/sectionBox.d.ts → sectionBox.d.ts} +7 -2
- package/dist/types/core-viewers/ultra/selection.d.ts +4 -0
- package/dist/types/core-viewers/ultra/{viewer/socketClient.d.ts → socketClient.d.ts} +4 -11
- package/dist/types/core-viewers/ultra/{viewer/viewer.d.ts → viewer.d.ts} +16 -13
- package/dist/types/core-viewers/ultra/vim.d.ts +48 -0
- package/dist/types/core-viewers/webgl/index.d.ts +2 -21
- package/dist/types/core-viewers/webgl/loader/{colorAttributes.d.ts → colorAttribute.d.ts} +4 -4
- package/dist/types/core-viewers/webgl/loader/{object3D.d.ts → element3d.d.ts} +12 -9
- package/dist/types/core-viewers/webgl/loader/geometry.d.ts +76 -78
- package/dist/types/core-viewers/webgl/loader/index.d.ts +24 -0
- package/dist/types/core-viewers/webgl/loader/materials/index.d.ts +9 -0
- package/dist/types/core-viewers/webgl/loader/materials/{viewerMaterials.d.ts → materials.d.ts} +5 -5
- package/dist/types/core-viewers/webgl/loader/mesh.d.ts +7 -7
- package/dist/types/core-viewers/webgl/loader/progressive/insertableGeometry.d.ts +2 -2
- package/dist/types/core-viewers/webgl/loader/progressive/insertableMesh.d.ts +1 -1
- package/dist/types/core-viewers/webgl/loader/progressive/insertableSubmesh.d.ts +1 -1
- package/dist/types/core-viewers/webgl/loader/progressive/instancedMesh.d.ts +1 -1
- package/dist/types/core-viewers/webgl/loader/progressive/instancedSubmesh.d.ts +1 -1
- package/dist/types/core-viewers/webgl/loader/progressive/legacyMeshFactory.d.ts +2 -2
- package/dist/types/core-viewers/webgl/loader/progressive/subsetBuilder.d.ts +2 -2
- package/dist/types/core-viewers/webgl/loader/progressive/subsetRequest.d.ts +2 -2
- package/dist/types/core-viewers/webgl/loader/progressive/vimRequest.d.ts +3 -3
- package/dist/types/core-viewers/webgl/loader/scene.d.ts +11 -14
- package/dist/types/core-viewers/webgl/loader/vim.d.ts +16 -20
- package/dist/types/core-viewers/webgl/loader/vimSettings.d.ts +2 -2
- package/dist/types/core-viewers/webgl/loader/{objectAttributes.d.ts → webglAttribute.d.ts} +4 -4
- package/dist/types/core-viewers/webgl/viewer/camera/camera.d.ts +8 -113
- package/dist/types/core-viewers/webgl/viewer/camera/{ICamera.d.ts → cameraInterface.d.ts} +0 -4
- package/dist/types/core-viewers/webgl/viewer/camera/cameraMovement.d.ts +5 -5
- package/dist/types/core-viewers/webgl/viewer/camera/cameraMovementLerp.d.ts +2 -2
- package/dist/types/core-viewers/webgl/viewer/camera/cameraMovementSnap.d.ts +2 -2
- package/dist/types/core-viewers/webgl/viewer/camera/{orthographic.d.ts → cameraOrthographic.d.ts} +1 -1
- package/dist/types/core-viewers/webgl/viewer/camera/{perspective.d.ts → cameraPerspective.d.ts} +1 -1
- package/dist/types/core-viewers/webgl/viewer/camera/index.d.ts +7 -0
- package/dist/types/core-viewers/webgl/viewer/environment/environment.d.ts +5 -5
- package/dist/types/core-viewers/webgl/viewer/environment/index.d.ts +3 -0
- package/dist/types/core-viewers/webgl/viewer/environment/{cameraLight.d.ts → light.d.ts} +2 -2
- package/dist/types/core-viewers/webgl/viewer/environment/skybox.d.ts +3 -3
- package/dist/types/core-viewers/webgl/viewer/gizmos/axes/axesSettings.d.ts +3 -2
- package/dist/types/core-viewers/webgl/viewer/gizmos/axes/gizmoAxes.d.ts +3 -1
- package/dist/types/core-viewers/webgl/viewer/gizmos/axes/index.d.ts +3 -0
- package/dist/types/core-viewers/webgl/viewer/gizmos/gizmoOrbit.d.ts +2 -2
- package/dist/types/core-viewers/webgl/viewer/gizmos/gizmos.d.ts +0 -5
- package/dist/types/core-viewers/webgl/viewer/gizmos/index.d.ts +7 -0
- package/dist/types/core-viewers/webgl/viewer/gizmos/markers/gizmoMarker.d.ts +63 -15
- package/dist/types/core-viewers/webgl/viewer/gizmos/markers/gizmoMarkers.d.ts +30 -7
- package/dist/types/core-viewers/webgl/viewer/gizmos/markers/index.d.ts +2 -0
- package/dist/types/core-viewers/webgl/viewer/gizmos/measure/index.d.ts +3 -0
- package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measure.d.ts +10 -16
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/index.d.ts +7 -0
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBox.d.ts +4 -5
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxGizmo.d.ts +1 -1
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxHandle.d.ts +6 -4
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxHandles.d.ts +1 -1
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxInputs.d.ts +3 -40
- package/dist/types/core-viewers/webgl/viewer/index.d.ts +10 -0
- package/dist/types/core-viewers/webgl/viewer/inputsAdapter.d.ts +3 -0
- package/dist/types/core-viewers/webgl/viewer/raycaster.d.ts +37 -57
- package/dist/types/core-viewers/webgl/viewer/rendering/index.d.ts +4 -0
- package/dist/types/core-viewers/webgl/viewer/rendering/mergePass.d.ts +2 -2
- package/dist/types/core-viewers/webgl/viewer/rendering/renderScene.d.ts +8 -8
- package/dist/types/core-viewers/webgl/viewer/rendering/renderer.d.ts +9 -6
- package/dist/types/core-viewers/webgl/viewer/rendering/renderingComposer.d.ts +2 -2
- package/dist/types/core-viewers/webgl/viewer/rendering/renderingSection.d.ts +2 -2
- package/dist/types/core-viewers/webgl/viewer/selection.d.ts +6 -89
- package/dist/types/core-viewers/webgl/viewer/settings/index.d.ts +3 -0
- package/dist/types/core-viewers/webgl/viewer/settings/{defaultViewerSettings.d.ts → viewerDefaultSettings.d.ts} +1 -1
- package/dist/types/core-viewers/webgl/viewer/settings/viewerSettings.d.ts +2 -9
- package/dist/types/core-viewers/webgl/viewer/settings/viewerSettingsParsing.d.ts +1 -1
- package/dist/types/core-viewers/webgl/viewer/viewer.d.ts +13 -13
- package/dist/types/index.d.ts +2 -3
- package/dist/types/react-viewers/bim/bimInfoData.d.ts +2 -2
- package/dist/types/react-viewers/bim/bimInfoObject.d.ts +4 -4
- package/dist/types/react-viewers/bim/bimInfoPanel.d.ts +3 -3
- package/dist/types/react-viewers/bim/bimInfoVim.d.ts +4 -4
- package/dist/types/react-viewers/bim/bimPanel.d.ts +13 -13
- package/dist/types/react-viewers/bim/bimSearch.d.ts +2 -2
- package/dist/types/react-viewers/bim/bimTree.d.ts +10 -8
- package/dist/types/react-viewers/bim/bimTreeData.d.ts +5 -4
- package/dist/types/react-viewers/bim/index.d.ts +8 -0
- package/dist/types/react-viewers/container.d.ts +3 -3
- package/dist/types/react-viewers/controlbar/controlBar.d.ts +10 -4
- package/dist/types/react-viewers/controlbar/controlBarButton.d.ts +1 -4
- package/dist/types/react-viewers/controlbar/controlBarIds.d.ts +36 -27
- package/dist/types/react-viewers/controlbar/controlBarSection.d.ts +1 -4
- package/dist/types/react-viewers/controlbar/index.d.ts +6 -0
- package/dist/types/react-viewers/controlbar/style.d.ts +10 -0
- package/dist/types/react-viewers/errors/index.d.ts +2 -0
- package/dist/types/react-viewers/generic/genericField.d.ts +28 -0
- package/dist/types/react-viewers/generic/genericPanel.d.ts +12 -0
- package/dist/types/react-viewers/generic/index.d.ts +2 -0
- package/dist/types/react-viewers/generic/inputNumber.d.ts +5 -0
- package/dist/types/react-viewers/helpers/cameraObserver.d.ts +2 -2
- package/dist/types/react-viewers/helpers/cursor.d.ts +5 -3
- package/dist/types/react-viewers/helpers/customizer.d.ts +4 -0
- package/dist/types/react-viewers/helpers/element.d.ts +3 -2
- package/dist/types/react-viewers/helpers/index.d.ts +7 -0
- package/dist/types/react-viewers/helpers/layout.d.ts +24 -0
- package/dist/types/react-viewers/helpers/loadRequest.d.ts +6 -6
- package/dist/types/react-viewers/helpers/reactUtils.d.ts +285 -0
- package/dist/types/react-viewers/helpers/utils.d.ts +1 -1
- package/dist/types/react-viewers/{panels/icons.d.ts → icons.d.ts} +9 -0
- package/dist/types/react-viewers/index.d.ts +11 -6
- package/dist/types/react-viewers/panels/axesPanel.d.ts +4 -4
- package/dist/types/react-viewers/panels/contextMenu.d.ts +22 -14
- package/dist/types/react-viewers/panels/help.d.ts +2 -7
- package/dist/types/react-viewers/panels/index.d.ts +25 -0
- package/dist/types/react-viewers/panels/isolationPanel.d.ts +9 -0
- package/dist/types/react-viewers/panels/loadingBox.d.ts +5 -2
- package/dist/types/react-viewers/panels/messageBox.d.ts +1 -1
- package/dist/types/react-viewers/panels/modal.d.ts +9 -10
- package/dist/types/react-viewers/panels/restOfScreen.d.ts +1 -1
- package/dist/types/react-viewers/panels/sectionBoxPanel.d.ts +8 -2
- package/dist/types/react-viewers/{sidePanel → panels}/sidePanel.d.ts +3 -3
- package/dist/types/react-viewers/panels/toast.d.ts +3 -3
- package/dist/types/react-viewers/settings/index.d.ts +5 -0
- package/dist/types/react-viewers/settings/settings.d.ts +13 -52
- package/dist/types/react-viewers/settings/{menuSettings.d.ts → settingsPanel.d.ts} +3 -3
- package/dist/types/react-viewers/settings/settingsState.d.ts +8 -8
- package/dist/types/react-viewers/settings/settingsStorage.d.ts +6 -6
- package/dist/types/react-viewers/settings/userBoolean.d.ts +17 -0
- package/dist/types/react-viewers/state/cameraState.d.ts +24 -0
- package/dist/types/react-viewers/state/controlBarState.d.ts +36 -21
- package/dist/types/react-viewers/state/index.d.ts +9 -0
- package/dist/types/react-viewers/state/measureState.d.ts +2 -2
- package/dist/types/react-viewers/state/pointerState.d.ts +5 -5
- package/dist/types/react-viewers/state/sectionBoxState.d.ts +18 -18
- package/dist/types/react-viewers/state/sharedIsolation.d.ts +38 -0
- package/dist/types/react-viewers/state/viewerInputs.d.ts +3 -0
- package/dist/types/react-viewers/ultra/camera.d.ts +3 -0
- package/dist/types/react-viewers/ultra/controlBar.d.ts +6 -0
- package/dist/types/react-viewers/ultra/errors/ultraErrors.d.ts +3 -3
- package/dist/types/react-viewers/ultra/index.d.ts +2 -1
- package/dist/types/react-viewers/ultra/isolation.d.ts +3 -0
- package/dist/types/react-viewers/ultra/modal.d.ts +5 -0
- package/dist/types/react-viewers/ultra/sectionBox.d.ts +3 -0
- package/dist/types/react-viewers/ultra/viewer.d.ts +21 -0
- package/dist/types/react-viewers/ultra/viewerRef.d.ts +47 -0
- package/dist/types/react-viewers/urls.d.ts +1 -0
- package/dist/types/react-viewers/webgl/camera.d.ts +3 -0
- package/dist/types/react-viewers/webgl/index.d.ts +3 -8
- package/dist/types/react-viewers/webgl/inputsBindings.d.ts +8 -0
- package/dist/types/react-viewers/webgl/isolation.d.ts +2 -0
- package/dist/types/react-viewers/webgl/{webglLoading.d.ts → loading.d.ts} +9 -9
- package/dist/types/react-viewers/webgl/sectionBox.d.ts +3 -0
- package/dist/types/react-viewers/webgl/viewer.d.ts +28 -0
- package/dist/types/react-viewers/webgl/viewerRef.d.ts +107 -0
- package/dist/types/react-viewers/webgl/viewerState.d.ts +7 -5
- package/dist/types/utils/debounce.d.ts +30 -0
- package/dist/types/utils/index.d.ts +10 -0
- package/dist/types/utils/interfaces.d.ts +3 -0
- package/dist/types/utils/math3d.d.ts +19 -0
- package/dist/types/utils/partial.d.ts +7 -0
- package/dist/types/{core-viewers/webgl/utils/requestResult.d.ts → utils/result.d.ts} +1 -1
- package/dist/types/{core-viewers/webgl/utils → utils}/threeUtils.d.ts +1 -0
- package/dist/types/{core-viewers/ultra/utils → utils}/url.d.ts +2 -0
- package/dist/types/{core-viewers/ultra/utils → utils}/validation.d.ts +11 -10
- package/dist/vim-web.iife.js +17280 -17199
- package/dist/vim-web.iife.js.map +1 -1
- package/dist/vim-web.js +17288 -17207
- package/dist/vim-web.js.map +1 -1
- package/package.json +1 -1
- package/dist/types/core-viewers/ultra/utils/debounce.d.ts +0 -1
- package/dist/types/core-viewers/ultra/utils/deferredPromise.d.ts +0 -8
- package/dist/types/core-viewers/ultra/utils/result.d.ts +0 -11
- package/dist/types/core-viewers/ultra/viewer/inputs/InputTouch.d.ts +0 -25
- package/dist/types/core-viewers/ultra/viewer/inputs/inputHandler.d.ts +0 -7
- package/dist/types/core-viewers/ultra/viewer/inputs/inputKeyboard.d.ts +0 -20
- package/dist/types/core-viewers/ultra/viewer/inputs/inputMouse.d.ts +0 -21
- package/dist/types/core-viewers/ultra/viewer/inputs/inputs.d.ts +0 -27
- package/dist/types/core-viewers/ultra/viewer/marshal.d.ts +0 -86
- package/dist/types/core-viewers/ultra/viewer/selection.d.ts +0 -96
- package/dist/types/core-viewers/ultra/viewer/vim.d.ts +0 -111
- package/dist/types/core-viewers/webgl/utils/deferredPromise.d.ts +0 -8
- package/dist/types/core-viewers/webgl/viewer/gizmos/gizmoRectangle.d.ts +0 -51
- package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measureFlow.d.ts +0 -36
- package/dist/types/core-viewers/webgl/viewer/inputs/input.d.ts +0 -128
- package/dist/types/core-viewers/webgl/viewer/inputs/keyboardHandler.d.ts +0 -113
- package/dist/types/core-viewers/webgl/viewer/inputs/mouseHandler.d.ts +0 -66
- package/dist/types/react-viewers/errors/errorUtils.d.ts +0 -2
- package/dist/types/react-viewers/helpers/camera.d.ts +0 -37
- package/dist/types/react-viewers/helpers/inputs.d.ts +0 -22
- package/dist/types/react-viewers/helpers/isolation.d.ts +0 -128
- package/dist/types/react-viewers/ultra/ultraComponent.d.ts +0 -47
- package/dist/types/react-viewers/ultra/ultraControlBarState.d.ts +0 -6
- package/dist/types/react-viewers/ultra/ultraModal.d.ts +0 -4
- package/dist/types/react-viewers/ultra/ultraSectionBoxState.d.ts +0 -3
- package/dist/types/react-viewers/webgl/webglComponent.d.ts +0 -28
- package/dist/types/react-viewers/webgl/webglComponentRef.d.ts +0 -118
- package/dist/types/react-viewers/webgl/webglSectionBoxState.d.ts +0 -3
- /package/dist/types/core-viewers/ultra/{viewer/decoderWithWorker.d.ts → decoderWithWorker.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/loadRequest.d.ts → loadRequest.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/logger.d.ts → logger.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/protocol.d.ts → protocol.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/streamLogger.d.ts → streamLogger.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/streamRenderer.d.ts → streamRenderer.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/viewport.d.ts → viewport.d.ts} +0 -0
- /package/dist/types/core-viewers/ultra/{viewer/vimCollection.d.ts → vimCollection.d.ts} +0 -0
- /package/dist/types/react-viewers/{sidePanel → state}/sideState.d.ts +0 -0
- /package/dist/types/{core-viewers/ultra/utils → utils}/array.d.ts +0 -0
- /package/dist/types/{core-viewers/ultra/utils → utils}/promise.d.ts +0 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { THREE } from "../..";
|
|
2
|
+
export interface IVimElement {
|
|
3
|
+
vim: IVim<IVimElement>;
|
|
4
|
+
getBoundingBox(): Promise<THREE.Box3>;
|
|
5
|
+
}
|
|
6
|
+
export interface IVim<T extends IVimElement> {
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves the element associated with the specified instance index.
|
|
9
|
+
* @param instance - The instance index of the of one of the instance included in the element.
|
|
10
|
+
* @returns The object corresponding to the instance, or undefined if not found.
|
|
11
|
+
*/
|
|
12
|
+
getElementFromInstanceIndex(instance: number): T | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Retrieves the element associated with the specified id.
|
|
15
|
+
* @param id - The element ID to retrieve objects for.
|
|
16
|
+
* @returns An array of element corresponding to the given id.
|
|
17
|
+
*/
|
|
18
|
+
getElementFromId(id: number): T[];
|
|
19
|
+
/**
|
|
20
|
+
* Retrieves the element associated with the given index.
|
|
21
|
+
* @param element - The index of the element.
|
|
22
|
+
* @returns The element corresponding to the element index, or undefined if not found.
|
|
23
|
+
*/
|
|
24
|
+
getElementFromIndex(element: number): T | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Retrieves all elements within the Vim.
|
|
27
|
+
* @returns An array of all Vim objects.
|
|
28
|
+
*/
|
|
29
|
+
getAllElements(): T[];
|
|
30
|
+
/**
|
|
31
|
+
* Retrieves the bounding box of the Vim object.
|
|
32
|
+
* @returns The bounding box of the Vim object.
|
|
33
|
+
*/
|
|
34
|
+
getBoundingBox(): Promise<THREE.Box3>;
|
|
35
|
+
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { Box3, Segment } from '../utils/math3d';
|
|
2
1
|
import { RpcSafeClient } from './rpcSafeClient';
|
|
2
|
+
import { Element3D } from './element3d';
|
|
3
3
|
import { Vim } from './vim';
|
|
4
|
+
import { Segment } from './rpcTypes';
|
|
5
|
+
import * as THREE from 'three';
|
|
4
6
|
/**
|
|
5
7
|
* Interface defining camera control operations in the 3D viewer
|
|
6
8
|
* @interface
|
|
@@ -18,7 +20,7 @@ export interface ICamera {
|
|
|
18
20
|
* @param {number} [blendTime=0.5] - Animation duration in seconds
|
|
19
21
|
* @returns {Promise<Segment | undefined>} Promise resolving to the final camera position segment
|
|
20
22
|
*/
|
|
21
|
-
frameBox(box: Box3, blendTime?: number): Promise<Segment | undefined>;
|
|
23
|
+
frameBox(box: THREE.Box3, blendTime?: number): Promise<Segment | undefined>;
|
|
22
24
|
/**
|
|
23
25
|
* Frames specified nodes of a Vim model in the camera view
|
|
24
26
|
* @param {Vim} vim - The target Vim model
|
|
@@ -27,6 +29,13 @@ export interface ICamera {
|
|
|
27
29
|
* @returns {Promise<Segment | undefined>} Promise resolving to the final camera position segment
|
|
28
30
|
*/
|
|
29
31
|
frameVim(vim: Vim, nodes: number[] | 'all', blendTime?: number): Promise<Segment | undefined>;
|
|
32
|
+
/**
|
|
33
|
+
* Frames a specific object in the camera view
|
|
34
|
+
* @param {Element3D} object - The target object to frame
|
|
35
|
+
* @param {number} [blendTime=0.5] - Animation duration in seconds
|
|
36
|
+
* @returns {Promise<Segment | undefined>} Promise resolving to the final camera position segment
|
|
37
|
+
*/
|
|
38
|
+
frameObject(object: Element3D, blendTime?: number): Promise<Segment | undefined>;
|
|
30
39
|
/**
|
|
31
40
|
* Saves the current camera position for later restoration
|
|
32
41
|
* @param {Segment} [segment] - Optional specific camera position to save
|
|
@@ -51,7 +60,6 @@ export interface ICamera {
|
|
|
51
60
|
export declare class Camera implements ICamera {
|
|
52
61
|
private _rpc;
|
|
53
62
|
private _lastPosition;
|
|
54
|
-
private _interval;
|
|
55
63
|
private _defaultBlendTime;
|
|
56
64
|
private _savedPosition;
|
|
57
65
|
/**
|
|
@@ -78,6 +86,7 @@ export declare class Camera implements ICamera {
|
|
|
78
86
|
*/
|
|
79
87
|
onConnect(): void;
|
|
80
88
|
onCameraPose(pose: Segment): void;
|
|
89
|
+
set(position: THREE.Vector3, target: THREE.Vector3, blendTime?: number): void;
|
|
81
90
|
/**
|
|
82
91
|
* Pauses or resumes rendering
|
|
83
92
|
* @param value - True to pause rendering, false to resume
|
|
@@ -94,7 +103,7 @@ export declare class Camera implements ICamera {
|
|
|
94
103
|
* @param box - The 3D bounding box to frame in the camera view
|
|
95
104
|
* @param blendTime - Duration of the camera animation in seconds (defaults to 0.5)
|
|
96
105
|
*/
|
|
97
|
-
frameBox(box: Box3, blendTime?: number): Promise<Segment | undefined>;
|
|
106
|
+
frameBox(box: THREE.Box3, blendTime?: number): Promise<Segment | undefined>;
|
|
98
107
|
/**
|
|
99
108
|
* Frames specific nodes of a Vim model in the camera view
|
|
100
109
|
* @param vim - The Vim model containing the nodes to frame
|
|
@@ -103,4 +112,5 @@ export declare class Camera implements ICamera {
|
|
|
103
112
|
* @returns Promise that resolves when the framing animation is complete
|
|
104
113
|
*/
|
|
105
114
|
frameVim(vim: Vim, nodes: number[] | 'all', blendTime?: number): Promise<Segment | undefined>;
|
|
115
|
+
frameObject(object: Element3D, blendTime?: number): Promise<Segment | undefined>;
|
|
106
116
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { RpcSafeClient } from './rpcSafeClient';
|
|
2
|
-
import {
|
|
3
|
-
import { RGBA32 } from '
|
|
2
|
+
import { RemoteColor } from './remoteColor';
|
|
3
|
+
import { RGBA32 } from './rpcTypes';
|
|
4
4
|
/**
|
|
5
5
|
* Manages the creation, caching, and deletion of color instances.
|
|
6
6
|
* Handles batched deletion of colors to optimize RPC calls.
|
|
@@ -21,25 +21,25 @@ export declare class ColorManager {
|
|
|
21
21
|
* @param hex - The RGBA32 color value
|
|
22
22
|
* @returns Promise resolving to a ColorHandle, or undefined if creation fails
|
|
23
23
|
*/
|
|
24
|
-
getColor(hex: RGBA32): Promise<
|
|
24
|
+
getColor(hex: RGBA32): Promise<RemoteColor | undefined>;
|
|
25
25
|
/**
|
|
26
26
|
* Creates or retrieves cached color instances for multiple hex values.
|
|
27
27
|
* @param c - Array of RGBA32 color values
|
|
28
28
|
* @returns Promise resolving to an array of ColorHandles in the same order as input, or undefined if creation fails
|
|
29
29
|
* @remarks Duplicate hex values will be mapped to the same color instance for efficiency
|
|
30
30
|
*/
|
|
31
|
-
getColors(c: RGBA32[]): Promise<
|
|
31
|
+
getColors(c: RGBA32[]): Promise<RemoteColor[]>;
|
|
32
32
|
/**
|
|
33
33
|
* Retrieves a color instance by its unique identifier.
|
|
34
34
|
* @param id - The unique identifier of the color
|
|
35
35
|
* @returns The ColorHandle associated with the ID, or undefined if not found
|
|
36
36
|
*/
|
|
37
|
-
getFromId(id: number):
|
|
37
|
+
getFromId(id: number): RemoteColor;
|
|
38
38
|
/**
|
|
39
39
|
* Destroys a color instance and removes it from the cache.
|
|
40
40
|
* @param color - The ColorHandle to destroy
|
|
41
41
|
*/
|
|
42
|
-
destroy(color:
|
|
42
|
+
destroy(color: RemoteColor): void;
|
|
43
43
|
/**
|
|
44
44
|
* Destroys all color instances and clears the cache.
|
|
45
45
|
*/
|
|
@@ -1,13 +1,5 @@
|
|
|
1
1
|
import type { VideoFrameMessage } from './protocol';
|
|
2
2
|
import { ILogger } from './logger';
|
|
3
|
-
/**
|
|
4
|
-
* Configuration for the video decoder.
|
|
5
|
-
*/
|
|
6
|
-
export declare const videoDecoderConfig: globalThis.VideoDecoderConfig;
|
|
7
|
-
export declare enum FrameType {
|
|
8
|
-
KeyFrame = 0,
|
|
9
|
-
DeltaFrame = 1
|
|
10
|
-
}
|
|
11
3
|
/**
|
|
12
4
|
* Interface defining the basic decoder operations
|
|
13
5
|
*/
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IVimElement } from "../shared/vim";
|
|
2
|
+
import { NodeState } from "./nodeState";
|
|
3
|
+
import { Box3, RGBA32 } from "./rpcTypes";
|
|
4
|
+
import { Vim } from "./vim";
|
|
5
|
+
export declare class Element3D implements IVimElement {
|
|
6
|
+
readonly vim: Vim;
|
|
7
|
+
get vimHandle(): number;
|
|
8
|
+
constructor(vim: Vim, instance: number);
|
|
9
|
+
readonly instance: number;
|
|
10
|
+
get state(): NodeState;
|
|
11
|
+
set state(state: NodeState);
|
|
12
|
+
get color(): RGBA32 | undefined;
|
|
13
|
+
set color(color: RGBA32 | undefined);
|
|
14
|
+
getBoundingBox(): Promise<Box3>;
|
|
15
|
+
}
|
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
import "./style.css";
|
|
2
|
-
export * from './viewer
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './
|
|
7
|
-
export type
|
|
8
|
-
export type
|
|
9
|
-
export
|
|
2
|
+
export * from './viewer';
|
|
3
|
+
export { RGB, RGBA, RGBA32, Segment, type SectionBoxState, type HitCheckResult, type VimStatus } from './rpcTypes';
|
|
4
|
+
export { materialHandles, MaterialHandles, type MaterialHandle, } from './rpcClient';
|
|
5
|
+
export type * from './camera';
|
|
6
|
+
export type * from './colorManager';
|
|
7
|
+
export type * from './decoder';
|
|
8
|
+
export type * from './nodeState';
|
|
9
|
+
export { NodeState } from './nodeState';
|
|
10
|
+
export type * from './element3d';
|
|
11
|
+
export type * from './inputAdapter';
|
|
12
|
+
export type * from './loadRequest';
|
|
13
|
+
export type * from './logger';
|
|
14
|
+
export type * from './protocol';
|
|
15
|
+
export type * from './raycaster';
|
|
16
|
+
export type * from './remoteColor';
|
|
17
|
+
export type * from './renderer';
|
|
18
|
+
export type * from './rpcClient';
|
|
19
|
+
export type * from './rpcMarshal';
|
|
20
|
+
export type * from './rpcSafeClient';
|
|
21
|
+
export { InputMode, VimLoadingStatus } from './rpcSafeClient';
|
|
22
|
+
export type * from './sectionBox';
|
|
23
|
+
export type * from './selection';
|
|
24
|
+
export type * from './socketClient';
|
|
25
|
+
export type * from './streamLogger';
|
|
26
|
+
export type * from './streamRenderer';
|
|
27
|
+
export type * from './viewport';
|
|
28
|
+
export type * from './vim';
|
|
29
|
+
export type * from './vimCollection';
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { RpcSafeClient } from './rpcSafeClient';
|
|
2
|
+
/**
|
|
3
|
+
* Represents the possible states a node can have in the UltraVim system.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum NodeState {
|
|
6
|
+
VISIBLE = "visible",
|
|
7
|
+
HIDDEN = "hidden",
|
|
8
|
+
GHOSTED = "ghosted",
|
|
9
|
+
HIGHLIGHTED = "highlighted"
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A class that wraps a StateTracker and is responsible for synchronizing its state updates with the remote RPCs.
|
|
13
|
+
* It batches updates to optimize performance and handles the communication with the remote system.
|
|
14
|
+
*/
|
|
15
|
+
export declare class StateSynchronizer {
|
|
16
|
+
private _tracker;
|
|
17
|
+
private _rpc;
|
|
18
|
+
private _getHandle;
|
|
19
|
+
private _onUpdate;
|
|
20
|
+
private _isConnected;
|
|
21
|
+
private _animationFrame;
|
|
22
|
+
/**
|
|
23
|
+
* Creates a new StateSynchronizer instance.
|
|
24
|
+
*
|
|
25
|
+
* @param rpc - The RPC client used to communicate with the remote system
|
|
26
|
+
* @param getHandle - Function that returns the current handle identifier
|
|
27
|
+
* @param isConnected - Function that returns whether the connection to the remote system is active
|
|
28
|
+
* @param onUpdate - Callback function invoked when updates are sent to the remote system
|
|
29
|
+
* @param defaultState - The default state for nodes when not explicitly set (defaults to VISIBLE)
|
|
30
|
+
*/
|
|
31
|
+
constructor(rpc: RpcSafeClient, getHandle: () => number, isConnected: () => boolean, onUpdate: () => void, defaultState?: NodeState);
|
|
32
|
+
/**
|
|
33
|
+
* Checks if all nodes are in the specified state(s).
|
|
34
|
+
*
|
|
35
|
+
* @param state - A single state or array of states to check against
|
|
36
|
+
* @returns True if all nodes are in the specified state(s), false otherwise
|
|
37
|
+
*/
|
|
38
|
+
areAllInState(state: NodeState | NodeState[]): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Gets the current state of a specific node.
|
|
41
|
+
*
|
|
42
|
+
* @param node - The node identifier
|
|
43
|
+
* @returns The current state of the node
|
|
44
|
+
*/
|
|
45
|
+
getNodeState(node: number): NodeState;
|
|
46
|
+
/**
|
|
47
|
+
* Gets all nodes that are currently in the specified state.
|
|
48
|
+
*
|
|
49
|
+
* @param state - The state to query
|
|
50
|
+
* @returns Either 'all' if all nodes are in this state, or an array of node IDs
|
|
51
|
+
*/
|
|
52
|
+
getNodesInState(state: NodeState): number[] | 'all';
|
|
53
|
+
/**
|
|
54
|
+
* Gets the default state used for nodes without explicit state settings.
|
|
55
|
+
*
|
|
56
|
+
* @returns The current default state
|
|
57
|
+
*/
|
|
58
|
+
getDefaultState(): NodeState;
|
|
59
|
+
/**
|
|
60
|
+
* Sets the state of a specific node.
|
|
61
|
+
*
|
|
62
|
+
* @param nodeId - The identifier of the node
|
|
63
|
+
* @param state - The new state to apply
|
|
64
|
+
*/
|
|
65
|
+
setNodeState(nodeId: number, state: NodeState): void;
|
|
66
|
+
/**
|
|
67
|
+
* Sets the state of all nodes to the specified value.
|
|
68
|
+
*
|
|
69
|
+
* @param state - The state to apply to all nodes
|
|
70
|
+
* @param clear - If true, clears all node-specific overrides
|
|
71
|
+
*/
|
|
72
|
+
setAllNodesState(state: NodeState): void;
|
|
73
|
+
/**
|
|
74
|
+
* Replaces all nodes in one state (or states) with another state.
|
|
75
|
+
*
|
|
76
|
+
* @param fromState - The state(s) to replace
|
|
77
|
+
* @param toState - The new state to apply
|
|
78
|
+
*/
|
|
79
|
+
replaceState(fromState: NodeState | NodeState[], toState: NodeState): void;
|
|
80
|
+
/**
|
|
81
|
+
* Reapplies all current state settings, useful after a reconnection.
|
|
82
|
+
* This will remove redundant overrides and ensure consistency.
|
|
83
|
+
*/
|
|
84
|
+
reapplyStates(): void;
|
|
85
|
+
/**
|
|
86
|
+
* Schedules a synchronization on the next animation frame.
|
|
87
|
+
* This batches multiple rapid state changes to avoid excessive RPC calls.
|
|
88
|
+
*
|
|
89
|
+
* @private
|
|
90
|
+
*/
|
|
91
|
+
private scheduleUpdate;
|
|
92
|
+
/**
|
|
93
|
+
* Processes all pending updates and sends them to the remote system.
|
|
94
|
+
*
|
|
95
|
+
* @private
|
|
96
|
+
*/
|
|
97
|
+
private remoteUpdate;
|
|
98
|
+
/**
|
|
99
|
+
* Calls the appropriate RPC method to update the state of all nodes.
|
|
100
|
+
*
|
|
101
|
+
* @param state - The state to apply to all nodes
|
|
102
|
+
* @private
|
|
103
|
+
*/
|
|
104
|
+
private callRPCForStateAll;
|
|
105
|
+
/**
|
|
106
|
+
* Calls the appropriate RPC method to update the state of specific nodes.
|
|
107
|
+
*
|
|
108
|
+
* @param state - The state to apply
|
|
109
|
+
* @param nodes - Array of node IDs to update
|
|
110
|
+
* @private
|
|
111
|
+
*/
|
|
112
|
+
private callRPCForStateNodes;
|
|
113
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as THREE from "three";
|
|
2
|
+
import type { IRaycastResult, IRaycaster } from "../shared/raycaster";
|
|
3
|
+
import { Element3D } from "./element3d";
|
|
4
|
+
import { RpcSafeClient } from "./rpcSafeClient";
|
|
5
|
+
import { IReadonlyVimCollection } from "./vimCollection";
|
|
6
|
+
export type IUltraRaycastResult = IRaycastResult<Element3D>;
|
|
7
|
+
export type IUltraRaycaster = IRaycaster<Element3D>;
|
|
8
|
+
/**
|
|
9
|
+
* Represents the result of a hit test operation.
|
|
10
|
+
*/
|
|
11
|
+
export declare class UltraRaycastResult implements IRaycastResult<Element3D> {
|
|
12
|
+
/** The model Object hit */
|
|
13
|
+
object: Element3D;
|
|
14
|
+
/** The 3D world position of the hit point */
|
|
15
|
+
worldPosition: THREE.Vector3;
|
|
16
|
+
/** The surface normal at the hit point */
|
|
17
|
+
worldNormal: THREE.Vector3;
|
|
18
|
+
constructor(object: Element3D, worldPosition: THREE.Vector3, worldNormal: THREE.Vector3);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @module ultra-webgl-viewer
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* Handles raycasting operations in the Ultra system, enabling picking and
|
|
25
|
+
* interaction with 3D objects in the scene.
|
|
26
|
+
*/
|
|
27
|
+
export declare class Raycaster implements IRaycaster<Element3D> {
|
|
28
|
+
private _rpc;
|
|
29
|
+
private _vims;
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new UltraCoreRaycaster instance.
|
|
32
|
+
*
|
|
33
|
+
* @param {RpcSafeClient} rpc - RPC client for communication with the viewer.
|
|
34
|
+
* @param {IReadonlyVimCollection} vims - Collection of VIM instances to manage.
|
|
35
|
+
*/
|
|
36
|
+
constructor(rpc: RpcSafeClient, vims: IReadonlyVimCollection);
|
|
37
|
+
/**
|
|
38
|
+
* Performs a raycast from the camera using normalized screen coordinates.
|
|
39
|
+
* Coordinates must be within [0, 1] for both x and y.
|
|
40
|
+
*
|
|
41
|
+
* @param {Vector2} position - The normalized screen position for raycasting.
|
|
42
|
+
* @returns {Promise<UltraRaycastResult | undefined>} Promise resolving to hit test result or undefined if no hit.
|
|
43
|
+
*/
|
|
44
|
+
raycastFromScreen(position: THREE.Vector2): Promise<UltraRaycastResult>;
|
|
45
|
+
/**
|
|
46
|
+
* Performs a raycast from a specific world position towards a target.
|
|
47
|
+
*
|
|
48
|
+
* @param {Vector3} position - The target world position for raycasting.
|
|
49
|
+
* @returns {Promise<UltraRaycastResult | undefined>} Promise resolving to hit test result or undefined if no hit.
|
|
50
|
+
*/
|
|
51
|
+
raycastFromWorld(position: THREE.Vector3): Promise<UltraRaycastResult | undefined>;
|
|
52
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { RGBA32 } from
|
|
2
|
-
import { ColorManager } from
|
|
1
|
+
import { RGBA32 } from './rpcTypes';
|
|
2
|
+
import { ColorManager } from './colorManager';
|
|
3
3
|
/**
|
|
4
4
|
* Represents a handle to a color in the color management system.
|
|
5
5
|
* This class provides access to color components and manages the lifecycle of color instances.
|
|
6
6
|
*/
|
|
7
|
-
export declare class
|
|
7
|
+
export declare class RemoteColor {
|
|
8
8
|
private _manager;
|
|
9
9
|
/** Unique identifier for the color instance */
|
|
10
10
|
readonly id: number;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISignal } from "ste-signals";
|
|
2
|
+
import * as THREE from "three";
|
|
2
3
|
import { ILogger } from "./logger";
|
|
3
4
|
import { RpcSafeClient, SceneSettings } from "./rpcSafeClient";
|
|
5
|
+
import { RGBA } from "./rpcTypes";
|
|
4
6
|
import { ClientStreamError } from "./socketClient";
|
|
5
7
|
/**
|
|
6
8
|
* Render settings that extend SceneSettings with additional rendering-specific properties
|
|
@@ -19,6 +21,7 @@ export declare const defaultRenderSettings: RenderSettings;
|
|
|
19
21
|
* Interface defining the basic renderer capabilities
|
|
20
22
|
*/
|
|
21
23
|
export interface IRenderer {
|
|
24
|
+
onSceneUpdated: ISignal;
|
|
22
25
|
ghostColor: RGBA;
|
|
23
26
|
lockIblRotation: boolean;
|
|
24
27
|
hdrScale: number;
|
|
@@ -27,7 +30,7 @@ export interface IRenderer {
|
|
|
27
30
|
hdrBackgroundSaturation: number;
|
|
28
31
|
backgroundBlur: number;
|
|
29
32
|
backgroundColor: RGBA;
|
|
30
|
-
getBoundingBox(): Promise<Box3 | undefined>;
|
|
33
|
+
getBoundingBox(): Promise<THREE.Box3 | undefined>;
|
|
31
34
|
}
|
|
32
35
|
/**
|
|
33
36
|
* Renderer class that handles 3D scene rendering and settings management
|
|
@@ -40,6 +43,8 @@ export declare class Renderer implements IRenderer {
|
|
|
40
43
|
private _updateLighting;
|
|
41
44
|
private _updateGhostColor;
|
|
42
45
|
private _updateIblRotation;
|
|
46
|
+
private readonly _onSceneUpdated;
|
|
47
|
+
get onSceneUpdated(): ISignal;
|
|
43
48
|
/**
|
|
44
49
|
* Creates a new Renderer instance
|
|
45
50
|
* @param rpc - RPC client for communication with the rendering backend
|
|
@@ -56,6 +61,7 @@ export declare class Renderer implements IRenderer {
|
|
|
56
61
|
* Sets up initial scene settings, ghost color, and IBL rotation
|
|
57
62
|
*/
|
|
58
63
|
onConnect(): void;
|
|
64
|
+
notifySceneUpdated(): void;
|
|
59
65
|
/**
|
|
60
66
|
* Gets the ghost color used for transparent rendering
|
|
61
67
|
* @returns Current ghost color as RGBA
|
|
@@ -136,7 +142,7 @@ export declare class Renderer implements IRenderer {
|
|
|
136
142
|
* @param value - New background color as RGBA
|
|
137
143
|
*/
|
|
138
144
|
set backgroundColor(value: RGBA);
|
|
139
|
-
getBoundingBox(): Promise<Box3 | undefined>;
|
|
145
|
+
getBoundingBox(): Promise<THREE.Box3 | undefined>;
|
|
140
146
|
/**
|
|
141
147
|
* Requests an update to be performed on the next animation frame.
|
|
142
148
|
* Multiple setting changes will be batched into a single update.
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { SocketClient } from './socketClient';
|
|
2
|
-
import
|
|
3
|
-
import { Box3, RGBA, RGBA32, Segment, Vector2, Vector3, Matrix44 } from '../utils/math3d';
|
|
2
|
+
import * as RpcTypes from './rpcTypes';
|
|
4
3
|
export type MaterialHandle = 4294967295 | 6 | 2 | 0 | 1 | 3 | 4 | 5 | 7 | 8;
|
|
5
4
|
export declare class MaterialHandles {
|
|
6
5
|
static readonly Invalid: MaterialHandle;
|
|
@@ -24,24 +23,24 @@ export declare class RpcClient {
|
|
|
24
23
|
RPCAddNodeFlags(componentHandle: number, nodes: number[], flags: number): void;
|
|
25
24
|
RPCClearMaterialOverrides(componentHandle: number): void;
|
|
26
25
|
RPCClearScene(): void;
|
|
27
|
-
RPCCreateMaterialInstances(materialHandle: number, smoothness: number, colors: RGBA32[]): Promise<number>;
|
|
28
|
-
RPCCreateText(position: Vector3, color: RGBA32, text: string): Promise<number>;
|
|
26
|
+
RPCCreateMaterialInstances(materialHandle: number, smoothness: number, colors: RpcTypes.RGBA32[]): Promise<number>;
|
|
27
|
+
RPCCreateText(position: RpcTypes.Vector3, color: RpcTypes.RGBA32, text: string): Promise<number>;
|
|
29
28
|
RPCDestroyMaterialInstances(materialInstanceHandle: number[]): void;
|
|
30
29
|
RPCDestroyText(componentHandle: number): void;
|
|
31
30
|
RPCEnableSectionBox(value: boolean): void;
|
|
32
|
-
RPCFrameAll(blendTime: number): Promise<Segment>;
|
|
33
|
-
RPCFrameBox(box: Box3, blendTime: number): Promise<Segment>;
|
|
34
|
-
RPCFrameInstances(componentHandle: number, nodes: number[], blendTime: number): Promise<Segment>;
|
|
35
|
-
RPCFrameVim(componentHandle: number, blendTime: number): Promise<Segment>;
|
|
31
|
+
RPCFrameAll(blendTime: number): Promise<RpcTypes.Segment>;
|
|
32
|
+
RPCFrameBox(box: RpcTypes.Box3, blendTime: number): Promise<RpcTypes.Segment>;
|
|
33
|
+
RPCFrameInstances(componentHandle: number, nodes: number[], blendTime: number): Promise<RpcTypes.Segment>;
|
|
34
|
+
RPCFrameVim(componentHandle: number, blendTime: number): Promise<RpcTypes.Segment>;
|
|
36
35
|
RPCGetAPIVersion(): Promise<string>;
|
|
37
|
-
RPCGetBoundingBox(componentHandle: number, nodes: number[]): Promise<Box3>;
|
|
38
|
-
RPCGetBoundingBoxAll(componentHandle: number): Promise<Box3>;
|
|
39
|
-
RPCGetCameraPosition(): Promise<Segment>;
|
|
40
|
-
RPCGetIblRotation(): Promise<Matrix44>;
|
|
36
|
+
RPCGetBoundingBox(componentHandle: number, nodes: number[]): Promise<RpcTypes.Box3>;
|
|
37
|
+
RPCGetBoundingBoxAll(componentHandle: number): Promise<RpcTypes.Box3>;
|
|
38
|
+
RPCGetCameraPosition(): Promise<RpcTypes.Segment>;
|
|
39
|
+
RPCGetIblRotation(): Promise<RpcTypes.Matrix44>;
|
|
41
40
|
RPCGetLastError(): Promise<string>;
|
|
42
|
-
RPCGetSceneAABB(): Promise<Box3>;
|
|
43
|
-
RPCGetSectionBox(): Promise<SectionBoxState>;
|
|
44
|
-
RPCGetVimLoadingState(componentHandle: number): Promise<VimStatus>;
|
|
41
|
+
RPCGetSceneAABB(): Promise<RpcTypes.Box3>;
|
|
42
|
+
RPCGetSectionBox(): Promise<RpcTypes.SectionBoxState>;
|
|
43
|
+
RPCGetVimLoadingState(componentHandle: number): Promise<RpcTypes.VimStatus>;
|
|
45
44
|
RPCGhost(componentHandle: number, nodes: number[]): void;
|
|
46
45
|
RPCGhostAll(componentHandle: number): void;
|
|
47
46
|
RPCHide(componentHandle: number, nodes: number[]): void;
|
|
@@ -54,28 +53,28 @@ export declare class RpcClient {
|
|
|
54
53
|
RPCLoadVim(fileName: string): Promise<number>;
|
|
55
54
|
RPCLoadVimURL(url: string, authToken: string): Promise<number>;
|
|
56
55
|
RPCLockIblRotation(lock: boolean): void;
|
|
57
|
-
RPCMouseButtonEvent(mousePos: Vector2, mouseButton: number, down: boolean): void;
|
|
58
|
-
RPCMouseDoubleClickEvent(mousePos: Vector2, mouseButton: number): void;
|
|
59
|
-
RPCMouseMoveEvent(mousePos: Vector2): void;
|
|
56
|
+
RPCMouseButtonEvent(mousePos: RpcTypes.Vector2, mouseButton: number, down: boolean): void;
|
|
57
|
+
RPCMouseDoubleClickEvent(mousePos: RpcTypes.Vector2, mouseButton: number): void;
|
|
58
|
+
RPCMouseMoveEvent(mousePos: RpcTypes.Vector2): void;
|
|
60
59
|
RPCMouseScrollEvent(scrollValue: number): void;
|
|
61
|
-
RPCMouseSelectEvent(mousePos: Vector2, mouseButton: number): void;
|
|
62
|
-
RPCMoveCameraTo(usePosition: boolean, useTarget: boolean, position: Vector3, target: Vector3, blendTime: number): void;
|
|
60
|
+
RPCMouseSelectEvent(mousePos: RpcTypes.Vector2, mouseButton: number): void;
|
|
61
|
+
RPCMoveCameraTo(usePosition: boolean, useTarget: boolean, position: RpcTypes.Vector3, target: RpcTypes.Vector3, blendTime: number): void;
|
|
63
62
|
RPCPauseRendering(pause: boolean): void;
|
|
64
|
-
RPCPerformHitTest(pos: Vector2): Promise<HitCheckResult>;
|
|
63
|
+
RPCPerformHitTest(pos: RpcTypes.Vector2): Promise<RpcTypes.HitCheckResult>;
|
|
65
64
|
RPCRemoveNodeFlags(componentHandle: number, nodes: number[], flags: number): void;
|
|
66
65
|
RPCSetAspectRatio(width: number, height: number): void;
|
|
67
66
|
RPCSetCameraMode(orbit: boolean): void;
|
|
68
|
-
RPCSetCameraPosition(state: Segment, blendTime: number): void;
|
|
69
|
-
RPCSetGhostColor(ghostColor: RGBA): void;
|
|
70
|
-
RPCSetIblRotation(transform: Matrix44): void;
|
|
71
|
-
RPCSetLighting(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RGBA): void;
|
|
67
|
+
RPCSetCameraPosition(state: RpcTypes.Segment, blendTime: number): void;
|
|
68
|
+
RPCSetGhostColor(ghostColor: RpcTypes.RGBA): void;
|
|
69
|
+
RPCSetIblRotation(transform: RpcTypes.Matrix44): void;
|
|
70
|
+
RPCSetLighting(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RpcTypes.RGBA): void;
|
|
72
71
|
RPCSetMaterialOverrides(componentHandle: number, nodes: number[], materialInstanceHandles: number[]): void;
|
|
73
72
|
RPCSetMoveSpeed(speed: number): void;
|
|
74
|
-
RPCSetSectionBox(state: SectionBoxState): void;
|
|
73
|
+
RPCSetSectionBox(state: RpcTypes.SectionBoxState): void;
|
|
75
74
|
RPCShow(componentHandle: number, nodes: number[]): void;
|
|
76
|
-
RPCShowAABBs(componentHandle: number, nodes: number[], colors: RGBA32[]): void;
|
|
75
|
+
RPCShowAABBs(componentHandle: number, nodes: number[], colors: RpcTypes.RGBA32[]): void;
|
|
77
76
|
RPCShowAll(componentHandle: number): void;
|
|
78
|
-
RPCStartScene(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RGBA): Promise<boolean>;
|
|
77
|
+
RPCStartScene(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RpcTypes.RGBA): Promise<boolean>;
|
|
79
78
|
RPCTriggerRenderDocCapture(): void;
|
|
80
79
|
RPCUnloadVim(componentHandle: number): void;
|
|
81
80
|
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Don't modify this file, the RPC generated code depends on its interface.
|
|
3
|
+
*/
|
|
4
|
+
import * as RpcTypes from "./rpcTypes";
|
|
5
|
+
export declare class Marshal {
|
|
6
|
+
private buffer;
|
|
7
|
+
private _dataView;
|
|
8
|
+
private _offset;
|
|
9
|
+
constructor(initialSize?: number);
|
|
10
|
+
getBuffer(): ArrayBuffer;
|
|
11
|
+
private ensureCapacity;
|
|
12
|
+
writeData(data: ArrayBuffer): void;
|
|
13
|
+
writeMatrix44(data: RpcTypes.Matrix44): void;
|
|
14
|
+
writeBoolean(value: boolean): void;
|
|
15
|
+
writeInt(value: number): void;
|
|
16
|
+
writeUInt(value: number): void;
|
|
17
|
+
writeFloat(value: number): void;
|
|
18
|
+
writeString(value: string): void;
|
|
19
|
+
writeHitCheckResult(data: RpcTypes.HitCheckResult): void;
|
|
20
|
+
writeVimStatus(data: RpcTypes.VimStatus): void;
|
|
21
|
+
writeVector2(data: RpcTypes.Vector2): void;
|
|
22
|
+
writeVector3(data: RpcTypes.Vector3): void;
|
|
23
|
+
writeRGBA(color: RpcTypes.RGBA): void;
|
|
24
|
+
writeRGB(color: RpcTypes.RGB): void;
|
|
25
|
+
writeRGBA32(color: RpcTypes.RGBA32): void;
|
|
26
|
+
writeSegment(segment: RpcTypes.Segment): void;
|
|
27
|
+
writeBox3(data: RpcTypes.Box3): void;
|
|
28
|
+
writeSectionBoxState(data: RpcTypes.SectionBoxState): void;
|
|
29
|
+
writeArrayOfInt(values: number[]): void;
|
|
30
|
+
writeArrayOfUInt(values: number[]): void;
|
|
31
|
+
writeArrayOfFloat(values: number[]): void;
|
|
32
|
+
writeArrayOfBool(values: boolean[]): void;
|
|
33
|
+
writeArrayOfRGBA32(values: RpcTypes.RGBA32[]): void;
|
|
34
|
+
writeArray<T>(data: T[], sizeT: number, write: (data: T) => void): void;
|
|
35
|
+
}
|
|
36
|
+
export declare class ReadMarshal {
|
|
37
|
+
private _dataView;
|
|
38
|
+
private _offset;
|
|
39
|
+
constructor(buffer: ArrayBuffer);
|
|
40
|
+
readMatrix44(): RpcTypes.Matrix44;
|
|
41
|
+
readInt(): number;
|
|
42
|
+
readUInt(): number;
|
|
43
|
+
readFloat(): number;
|
|
44
|
+
readBoolean(): boolean;
|
|
45
|
+
readString(): string;
|
|
46
|
+
readHitCheckResult(): RpcTypes.HitCheckResult;
|
|
47
|
+
readVimStatus(): RpcTypes.VimStatus;
|
|
48
|
+
readVector2(): RpcTypes.Vector2;
|
|
49
|
+
readVector3(): RpcTypes.Vector3;
|
|
50
|
+
readRGBA(): RpcTypes.RGBA;
|
|
51
|
+
readRGB(): RpcTypes.RGB;
|
|
52
|
+
readRGBA32(): RpcTypes.RGBA32;
|
|
53
|
+
readBox3(): RpcTypes.Box3;
|
|
54
|
+
readSegment(): RpcTypes.Segment;
|
|
55
|
+
readSectionBoxState(): RpcTypes.SectionBoxState;
|
|
56
|
+
readArrayOfInt(): number[];
|
|
57
|
+
readArrayOfUInt(): number[];
|
|
58
|
+
readArrayOfFloat(): number[];
|
|
59
|
+
readArrayOfBool(): boolean[];
|
|
60
|
+
readArrayOfRGBA32(): RpcTypes.RGBA32[];
|
|
61
|
+
readArray<T>(read: () => T): T[];
|
|
62
|
+
}
|