vim-web 0.4.1 → 0.5.0-dev.1
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 +12 -18
- package/dist/style.css +0 -25
- package/dist/types/main.d.ts +1 -0
- package/dist/types/{core-viewers → vim-web/core-viewers}/shared/vim.d.ts +1 -1
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/element3d.d.ts +6 -6
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/index.d.ts +2 -2
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/renderer.d.ts +0 -14
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/rpcClient.d.ts +32 -30
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/rpcMarshal.d.ts +2 -0
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/rpcSafeClient.d.ts +46 -87
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/rpcTypes.d.ts +1 -0
- package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/vim.d.ts +3 -3
- package/dist/types/vim-web/core-viewers/ultra/visibility.d.ts +100 -0
- package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/vim.d.ts +1 -1
- package/dist/vim-web.iife.js +350 -537
- package/dist/vim-web.iife.js.map +1 -1
- package/dist/vim-web.js +350 -537
- package/dist/vim-web.js.map +1 -1
- package/package.json +10 -15
- package/dist/types/core-viewers/ultra/nodeState.d.ts +0 -113
- /package/dist/types/{core-viewers → vim-web/core-viewers}/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/baseInputHandler.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/inputAdapter.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/inputHandler.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/keyboardHandler.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/mouseHandler.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/raycaster.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/selection.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/shared/touchHandler.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/camera.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/colorManager.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/decoder.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/decoderWithWorker.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/inputAdapter.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/loadRequest.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/logger.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/protocol.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/raycaster.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/remoteColor.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/sectionBox.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/selection.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/socketClient.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/streamLogger.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/streamRenderer.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/viewer.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/viewport.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/ultra/vimCollection.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/averageBoundingBox.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/colorAttribute.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/element3d.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/elementMapping.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/geometry.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/ghostMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/maskMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/materials.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/mergeMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/outlineMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/simpleMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/skyboxMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/standardMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/materials/transferMaterial.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/mesh.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/g3dOffsets.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/g3dSubset.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/insertableGeometry.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/insertableMesh.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/insertableSubmesh.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/instancedMesh.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/instancedMeshFactory.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/instancedSubmesh.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/legacyMeshFactory.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/loadingSynchronizer.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/open.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/subsetBuilder.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/subsetRequest.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/vimRequest.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/progressive/vimx.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/scene.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/vimSettings.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/loader/webglAttribute.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/utils/boxes.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/camera.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/cameraInterface.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/cameraMovement.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/cameraMovementLerp.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/cameraMovementSnap.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/cameraOrthographic.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/cameraPerspective.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/camera/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/environment/environment.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/environment/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/environment/light.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/environment/skybox.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/axes/axes.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/axes/axesSettings.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/axes/gizmoAxes.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/axes/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/gizmoLoading.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/gizmoOrbit.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/gizmos.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/markers/gizmoMarker.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/markers/gizmoMarkers.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/markers/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/measure/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/measure/measure.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/measure/measureGizmo.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/measure/measureHtml.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/SectionBoxMesh.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/sectionBox.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/sectionBoxGizmo.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/sectionBoxHandle.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/sectionBoxHandles.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/sectionBoxInputs.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/gizmos/sectionBox/sectionBoxOutline.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/inputAdapter.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/raycaster.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/mergePass.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/outlinePass.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/renderScene.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/renderer.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/renderingComposer.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/renderingSection.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/rendering/transferPass.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/selection.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/settings/index.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/settings/viewerDefaultSettings.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/settings/viewerSettings.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/settings/viewerSettingsParsing.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/viewer.d.ts +0 -0
- /package/dist/types/{core-viewers → vim-web/core-viewers}/webgl/viewer/viewport.d.ts +0 -0
- /package/dist/types/{index.d.ts → vim-web/index.d.ts} +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimInfoBody.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimInfoData.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimInfoHeader.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimInfoObject.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimInfoPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimInfoVim.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimSearch.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimTree.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimTreeData.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/bimUtils.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/bim/openState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/container.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/controlbar/controlBar.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/controlbar/controlBarButton.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/controlbar/controlBarIds.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/controlbar/controlBarSection.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/controlbar/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/controlbar/style.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/errors/errorStyle.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/errors/errors.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/errors/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/generic/genericField.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/generic/genericPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/generic/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/generic/inputNumber.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/cameraObserver.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/cursor.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/customizer.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/data.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/element.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/fullScreenObserver.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/layout.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/loadRequest.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/reactUtils.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/requestResult.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/helpers/utils.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/icons.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/axesPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/contextMenu.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/help.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/isolationPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/loadingBox.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/logo.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/messageBox.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/modal.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/overlay.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/performance.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/restOfScreen.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/sectionBoxPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/sidePanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/panels/toast.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/settings/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/settings/settings.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/settings/settingsPanel.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/settings/settingsState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/settings/settingsStorage.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/settings/userBoolean.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/cameraState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/controlBarState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/fullScreenState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/measureState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/pointerState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/sectionBoxState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/sharedIsolation.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/sideState.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/state/viewerInputs.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/camera.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/controlBar.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/fileLoadingError.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/fileOpeningError.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/serverCompatibilityError.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/serverConnectionError.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/serverFileDownloadingError.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/serverStreamError.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/errors/ultraErrors.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/isolation.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/modal.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/sectionBox.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/viewer.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/ultra/viewerRef.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/urls.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/camera.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/index.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/inputsBindings.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/isolation.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/loading.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/sectionBox.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/viewer.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/viewerRef.d.ts +0 -0
- /package/dist/types/{react-viewers → vim-web/react-viewers}/webgl/viewerState.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/array.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/debounce.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/index.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/interfaces.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/math3d.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/partial.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/promise.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/result.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/threeUtils.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/url.d.ts +0 -0
- /package/dist/types/{utils → vim-web/utils}/validation.d.ts +0 -0
package/README.md
CHANGED
|
@@ -1,41 +1,35 @@
|
|
|
1
|
-
# VIM
|
|
1
|
+
# VIM Web
|
|
2
|
+
|
|
3
|
+
## Live Demo
|
|
4
|
+
|
|
5
|
+
Visit our [Demo page](https://vimaec.github.io/vim-web-demo)
|
|
2
6
|
|
|
3
7
|
### Documentation
|
|
4
8
|
|
|
5
|
-
Explore the full [API Documentation](https://vimaec.github.io/vim-web
|
|
9
|
+
Explore the full [API Documentation](https://vimaec.github.io/vim-web).
|
|
6
10
|
|
|
7
11
|
### Package
|
|
8
12
|
https://www.npmjs.com/package/vim-web
|
|
9
13
|
|
|
10
|
-
## Live Demo
|
|
11
|
-
|
|
12
|
-
### WebGL Viewer
|
|
13
|
-
- **[Small - Residence](https://vimaec.github.io/vim-web/webgl)**
|
|
14
|
-
- **[Medium - Medical Tower](https://vimaec.github.io/vim-web/webgl?vim=https://storage.cdn.vimaec.com/samples/Medical_Tower.vim)**
|
|
15
|
-
|
|
16
|
-
### Ultra Viewer
|
|
17
|
-
- **[Small - Residence](https://vimaec.github.io/vim-web/ultra)**
|
|
18
|
-
- **[Medium - Medical Tower](https://vimaec.github.io/vim-web/ultra?vim=https://storage.cdn.vimaec.com/samples/Medical_Tower.vim)**
|
|
19
|
-
|
|
20
|
-
Find detailed camera controls here: [Camera Controls](https://docs.vimaec.com/docs/vim-cloud/webgl-navigation-and-controls-guide).
|
|
21
14
|
|
|
22
15
|
## Overview
|
|
23
16
|
|
|
24
17
|
The **VIM-Web** repository consists of four primary components, divided into two layers:
|
|
25
18
|
|
|
26
19
|
### Core Viewers
|
|
27
|
-
- **WebGL Viewer:** A WebGL-based viewer for the VIM format. Includes features like outlines, ghosting, and sectioning, but without UI components.
|
|
28
|
-
- **Ultra Viewer:** A high-performance viewer for the VIM Ultra Render Server, optimized for scale and speed.
|
|
20
|
+
- **WebGL Core Viewer:** A WebGL-based viewer for the VIM format. Includes features like outlines, ghosting, and sectioning, but without UI components.
|
|
21
|
+
- **Ultra Core Viewer:** A high-performance viewer for the VIM Ultra Render Server, optimized for scale and speed.
|
|
29
22
|
|
|
30
23
|
### React Viewers
|
|
31
|
-
- **WebGL
|
|
32
|
-
- **Ultra
|
|
24
|
+
- **WebGL Viewer:** A React-based wrapper for the WebGL viewer, providing interactive UI elements and a BIM explorer.
|
|
25
|
+
- **Ultra Viewer:** A React-based wrapper for the Ultra viewer, featuring a UI for real-time interactions.
|
|
33
26
|
|
|
34
27
|
## VIM Format
|
|
35
28
|
|
|
36
29
|
The **VIM** file format is a high-performance 3D scene format that supports rich BIM data. It can also be extended to accommodate other relational and non-relational datasets. Unlike **IFC**, the VIM format is pre-tessellated, allowing for rapid loading and rendering.
|
|
37
30
|
|
|
38
|
-
Learn more about the VIM format here: [VIM
|
|
31
|
+
Learn more about the VIM format here: [VIM Format Repository](https://github.com/vimaec/vim-format)
|
|
32
|
+
).
|
|
39
33
|
|
|
40
34
|
### Built With
|
|
41
35
|
- [VIM WebGL Viewer](https://github.com/vimaec/vim-webgl-viewer)
|
package/dist/style.css
CHANGED
|
@@ -709,9 +709,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
709
709
|
.vc-left-0 {
|
|
710
710
|
left: 0px;
|
|
711
711
|
}
|
|
712
|
-
.vc-left-1\/2 {
|
|
713
|
-
left: 50%;
|
|
714
|
-
}
|
|
715
712
|
.vc-left-4 {
|
|
716
713
|
left: 1rem;
|
|
717
714
|
}
|
|
@@ -733,9 +730,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
733
730
|
.vc-top-1 {
|
|
734
731
|
top: 0.25rem;
|
|
735
732
|
}
|
|
736
|
-
.vc-top-10 {
|
|
737
|
-
top: 2.5rem;
|
|
738
|
-
}
|
|
739
733
|
.vc-top-4 {
|
|
740
734
|
top: 1rem;
|
|
741
735
|
}
|
|
@@ -745,9 +739,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
745
739
|
.vc-top-\[10\%\] {
|
|
746
740
|
top: 10%;
|
|
747
741
|
}
|
|
748
|
-
.vc-top-\[150px\] {
|
|
749
|
-
top: 150px;
|
|
750
|
-
}
|
|
751
742
|
.vc-top-\[20px\] {
|
|
752
743
|
top: 20px;
|
|
753
744
|
}
|
|
@@ -855,9 +846,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
855
846
|
.vc-hidden {
|
|
856
847
|
display: none;
|
|
857
848
|
}
|
|
858
|
-
.vc-h-1\/2 {
|
|
859
|
-
height: 50%;
|
|
860
|
-
}
|
|
861
849
|
.vc-h-2 {
|
|
862
850
|
height: 0.5rem;
|
|
863
851
|
}
|
|
@@ -945,10 +933,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
945
933
|
.vc-shrink-0 {
|
|
946
934
|
flex-shrink: 0;
|
|
947
935
|
}
|
|
948
|
-
.vc--translate-x-1\/2 {
|
|
949
|
-
--tw-translate-x: -50%;
|
|
950
|
-
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
951
|
-
}
|
|
952
936
|
.vc-rotate-0 {
|
|
953
937
|
--tw-rotate: 0deg;
|
|
954
938
|
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
@@ -992,9 +976,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
992
976
|
.vc-justify-evenly {
|
|
993
977
|
justify-content: space-evenly;
|
|
994
978
|
}
|
|
995
|
-
.vc-gap-1 {
|
|
996
|
-
gap: 0.25rem;
|
|
997
|
-
}
|
|
998
979
|
.vc-gap-2 {
|
|
999
980
|
gap: 0.5rem;
|
|
1000
981
|
}
|
|
@@ -1139,9 +1120,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
1139
1120
|
.vc-p-1 {
|
|
1140
1121
|
padding: 0.25rem;
|
|
1141
1122
|
}
|
|
1142
|
-
.vc-p-4 {
|
|
1143
|
-
padding: 1rem;
|
|
1144
|
-
}
|
|
1145
1123
|
.vc-p-5 {
|
|
1146
1124
|
padding: 1.25rem;
|
|
1147
1125
|
}
|
|
@@ -1215,9 +1193,6 @@ video:where(.vim-component,.vim-component *) {
|
|
|
1215
1193
|
.vc-font-bold {
|
|
1216
1194
|
font-weight: 700;
|
|
1217
1195
|
}
|
|
1218
|
-
.vc-font-medium {
|
|
1219
|
-
font-weight: 500;
|
|
1220
|
-
}
|
|
1221
1196
|
.vc-font-normal {
|
|
1222
1197
|
font-weight: 400;
|
|
1223
1198
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -22,7 +22,7 @@ export interface IVim<T extends IVimElement> {
|
|
|
22
22
|
* @param instance - The instance index of the of one of the instance included in the element.
|
|
23
23
|
* @returns The object corresponding to the instance, or undefined if not found.
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
getElement(instance: number): T | undefined;
|
|
26
26
|
/**
|
|
27
27
|
* Retrieves the element associated with the specified id.
|
|
28
28
|
* @param id - The element ID to retrieve objects for.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IVimElement } from "../shared/vim";
|
|
2
|
-
import {
|
|
2
|
+
import { VisibilityState } from "./visibility";
|
|
3
3
|
import { Box3, RGBA32 } from "./rpcTypes";
|
|
4
4
|
import { Vim } from "./vim";
|
|
5
5
|
/**
|
|
@@ -14,7 +14,7 @@ export declare class Element3D implements IVimElement {
|
|
|
14
14
|
/**
|
|
15
15
|
* The internal instance index within the `Vim` model.
|
|
16
16
|
*/
|
|
17
|
-
readonly
|
|
17
|
+
readonly element: number;
|
|
18
18
|
/**
|
|
19
19
|
* The unique handle of the parent `Vim` model.
|
|
20
20
|
*/
|
|
@@ -22,14 +22,14 @@ export declare class Element3D implements IVimElement {
|
|
|
22
22
|
/**
|
|
23
23
|
* Creates a new `Element3D` instance.
|
|
24
24
|
* @param vim - The parent `Vim` model.
|
|
25
|
-
* @param
|
|
25
|
+
* @param element - The internal instance index.
|
|
26
26
|
*/
|
|
27
|
-
constructor(vim: Vim,
|
|
27
|
+
constructor(vim: Vim, element: number);
|
|
28
28
|
/**
|
|
29
29
|
* Gets or sets the display state of the element (e.g., visible, hidden).
|
|
30
30
|
*/
|
|
31
|
-
get state():
|
|
32
|
-
set state(state:
|
|
31
|
+
get state(): VisibilityState;
|
|
32
|
+
set state(state: VisibilityState);
|
|
33
33
|
/**
|
|
34
34
|
* Gets or sets the color override of the element.
|
|
35
35
|
*/
|
|
@@ -2,12 +2,12 @@ import "./style.css";
|
|
|
2
2
|
export * from './viewer';
|
|
3
3
|
export { RGB, RGBA, RGBA32, Segment, type SectionBoxState, type HitCheckResult, type VimStatus } from './rpcTypes';
|
|
4
4
|
export { materialHandles, MaterialHandles, type MaterialHandle, } from './rpcClient';
|
|
5
|
-
export { NodeState } from './nodeState';
|
|
6
5
|
export { InputMode, VimLoadingStatus } from './rpcSafeClient';
|
|
6
|
+
export { VisibilityState } from './visibility';
|
|
7
7
|
export type * from './camera';
|
|
8
8
|
export type * from './colorManager';
|
|
9
9
|
export type * from './decoder';
|
|
10
|
-
export type * from './
|
|
10
|
+
export type * from './visibility';
|
|
11
11
|
export type * from './element3d';
|
|
12
12
|
export type * from './inputAdapter';
|
|
13
13
|
export type * from './loadRequest';
|
|
@@ -8,8 +8,6 @@ import { ClientStreamError } from "./socketClient";
|
|
|
8
8
|
* Render settings that extend SceneSettings with additional rendering-specific properties
|
|
9
9
|
*/
|
|
10
10
|
export type RenderSettings = SceneSettings & {
|
|
11
|
-
/** Whether to lock the Image-Based Lighting rotation */
|
|
12
|
-
lockIblRotation: boolean;
|
|
13
11
|
/** Color used for ghost/transparent rendering */
|
|
14
12
|
ghostColor: RGBA;
|
|
15
13
|
};
|
|
@@ -23,7 +21,6 @@ export declare const defaultRenderSettings: RenderSettings;
|
|
|
23
21
|
export interface IRenderer {
|
|
24
22
|
onSceneUpdated: ISignal;
|
|
25
23
|
ghostColor: RGBA;
|
|
26
|
-
lockIblRotation: boolean;
|
|
27
24
|
hdrScale: number;
|
|
28
25
|
toneMappingWhitePoint: number;
|
|
29
26
|
hdrBackgroundScale: number;
|
|
@@ -42,7 +39,6 @@ export declare class Renderer implements IRenderer {
|
|
|
42
39
|
private _animationFrame;
|
|
43
40
|
private _updateLighting;
|
|
44
41
|
private _updateGhostColor;
|
|
45
|
-
private _updateIblRotation;
|
|
46
42
|
private readonly _onSceneUpdated;
|
|
47
43
|
get onSceneUpdated(): ISignal;
|
|
48
44
|
/**
|
|
@@ -67,11 +63,6 @@ export declare class Renderer implements IRenderer {
|
|
|
67
63
|
* @returns Current ghost color as RGBA
|
|
68
64
|
*/
|
|
69
65
|
get ghostColor(): RGBA;
|
|
70
|
-
/**
|
|
71
|
-
* Gets the IBL rotation lock setting
|
|
72
|
-
* @returns Whether IBL rotation is locked
|
|
73
|
-
*/
|
|
74
|
-
get lockIblRotation(): boolean;
|
|
75
66
|
/**
|
|
76
67
|
* Gets the tone mapping white point value
|
|
77
68
|
* @returns Current tone mapping white point
|
|
@@ -107,11 +98,6 @@ export declare class Renderer implements IRenderer {
|
|
|
107
98
|
* @param value - New ghost color as RGBA
|
|
108
99
|
*/
|
|
109
100
|
set ghostColor(value: RGBA);
|
|
110
|
-
/**
|
|
111
|
-
* Updates the IBL rotation lock setting
|
|
112
|
-
* @param value - Whether to lock IBL rotation
|
|
113
|
-
*/
|
|
114
|
-
set lockIblRotation(value: boolean);
|
|
115
101
|
/**
|
|
116
102
|
* Sets the tone mapping white point value
|
|
117
103
|
* @param value - New tone mapping white point value
|
|
@@ -13,69 +13,71 @@ export declare class MaterialHandles {
|
|
|
13
13
|
static readonly Highlight: MaterialHandle;
|
|
14
14
|
static readonly Invisible: MaterialHandle;
|
|
15
15
|
}
|
|
16
|
+
export type VisibilityState = 0 | 1 | 2 | 3 | 16;
|
|
17
|
+
export declare class VisibilityStates {
|
|
18
|
+
static readonly Visible: VisibilityState;
|
|
19
|
+
static readonly Hidden: VisibilityState;
|
|
20
|
+
static readonly Ghosted: VisibilityState;
|
|
21
|
+
static readonly Highlighted: VisibilityState;
|
|
22
|
+
}
|
|
23
|
+
export type RenderingMode = 0 | 1;
|
|
24
|
+
export declare class RenderingModes {
|
|
25
|
+
static readonly Standard: RenderingMode;
|
|
26
|
+
static readonly FlatShaded: RenderingMode;
|
|
27
|
+
}
|
|
16
28
|
export declare const materialHandles: MaterialHandle[];
|
|
17
29
|
export declare class RpcClient {
|
|
18
30
|
private readonly _socket;
|
|
19
31
|
get connected(): boolean;
|
|
20
32
|
get url(): string;
|
|
21
33
|
constructor(_socket: SocketClient);
|
|
22
|
-
readonly API_VERSION = "
|
|
23
|
-
RPCAddNodeFlags(componentHandle: number, nodes: number[], flags: number): void;
|
|
34
|
+
readonly API_VERSION = "6.0.0";
|
|
24
35
|
RPCClearMaterialOverrides(componentHandle: number): void;
|
|
25
|
-
RPCClearScene(): void;
|
|
26
36
|
RPCCreateMaterialInstances(materialHandle: number, smoothness: number, colors: RpcTypes.RGBA32[]): Promise<number>;
|
|
27
37
|
RPCCreateText(position: RpcTypes.Vector3, color: RpcTypes.RGBA32, text: string): Promise<number>;
|
|
28
38
|
RPCDestroyMaterialInstances(materialInstanceHandle: number[]): void;
|
|
29
39
|
RPCDestroyText(componentHandle: number): void;
|
|
30
40
|
RPCEnableSectionBox(value: boolean): void;
|
|
41
|
+
RPCFrameAABB(box: RpcTypes.Box3, blendTime: number): Promise<RpcTypes.Segment>;
|
|
31
42
|
RPCFrameAll(blendTime: number): Promise<RpcTypes.Segment>;
|
|
32
|
-
|
|
33
|
-
RPCFrameInstances(componentHandle: number, nodes: number[], blendTime: number): Promise<RpcTypes.Segment>;
|
|
43
|
+
RPCFrameElements(componentHandle: number, elementIndices: number[], blendTime: number): Promise<RpcTypes.Segment>;
|
|
34
44
|
RPCFrameVim(componentHandle: number, blendTime: number): Promise<RpcTypes.Segment>;
|
|
45
|
+
RPCGetAABBForAll(): Promise<RpcTypes.Box3>;
|
|
46
|
+
RPCGetAABBForElements(componentHandle: number, elementIndices: number[]): Promise<RpcTypes.Box3>;
|
|
47
|
+
RPCGetAABBForVim(componentHandle: number): Promise<RpcTypes.Box3>;
|
|
35
48
|
RPCGetAPIVersion(): Promise<string>;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
RPCGetIblRotation(): Promise<RpcTypes.Matrix44>;
|
|
49
|
+
RPCGetCameraView(): Promise<RpcTypes.Segment>;
|
|
50
|
+
RPCGetElementCount(componentHandle: number): Promise<number>;
|
|
51
|
+
RPCGetElementIds(componentHandle: number): Promise<bigint[]>;
|
|
40
52
|
RPCGetLastError(): Promise<string>;
|
|
41
|
-
|
|
53
|
+
RPCGetRoomElements(componentHandle: number): Promise<number[]>;
|
|
42
54
|
RPCGetSectionBox(): Promise<RpcTypes.SectionBoxState>;
|
|
43
55
|
RPCGetVimLoadingState(componentHandle: number): Promise<RpcTypes.VimStatus>;
|
|
44
|
-
RPCGhost(componentHandle: number, nodes: number[]): void;
|
|
45
|
-
RPCGhostAll(componentHandle: number): void;
|
|
46
|
-
RPCHide(componentHandle: number, nodes: number[]): void;
|
|
47
|
-
RPCHideAABBs(componentHandle: number, nodes: number[]): void;
|
|
48
|
-
RPCHideAll(componentHandle: number): void;
|
|
49
|
-
RPCHideAllAABBs(componentHandle: number): void;
|
|
50
|
-
RPCHighlight(componentHandle: number, nodes: number[]): void;
|
|
51
|
-
RPCHighlightAll(componentHandle: number): void;
|
|
52
56
|
RPCKeyEvent(keyCode: number, down: boolean): void;
|
|
53
57
|
RPCLoadVim(fileName: string): Promise<number>;
|
|
54
58
|
RPCLoadVimURL(url: string, authToken: string): Promise<number>;
|
|
55
|
-
RPCLockIblRotation(lock: boolean): void;
|
|
56
59
|
RPCMouseButtonEvent(mousePos: RpcTypes.Vector2, mouseButton: number, down: boolean): void;
|
|
57
60
|
RPCMouseDoubleClickEvent(mousePos: RpcTypes.Vector2, mouseButton: number): void;
|
|
58
61
|
RPCMouseMoveEvent(mousePos: RpcTypes.Vector2): void;
|
|
59
62
|
RPCMouseScrollEvent(scrollValue: number): void;
|
|
60
63
|
RPCMouseSelectEvent(mousePos: RpcTypes.Vector2, mouseButton: number): void;
|
|
61
|
-
RPCMoveCameraTo(usePosition: boolean, useTarget: boolean, position: RpcTypes.Vector3, target: RpcTypes.Vector3, blendTime: number): void;
|
|
62
64
|
RPCPauseRendering(pause: boolean): void;
|
|
63
65
|
RPCPerformHitTest(pos: RpcTypes.Vector2): Promise<RpcTypes.HitCheckResult>;
|
|
64
|
-
|
|
65
|
-
RPCSetAspectRatio(width: number, height: number): void;
|
|
66
|
+
RPCSetCameraAspectRatio(width: number, height: number): void;
|
|
66
67
|
RPCSetCameraMode(orbit: boolean): void;
|
|
67
|
-
RPCSetCameraPosition(
|
|
68
|
+
RPCSetCameraPosition(position: RpcTypes.Vector3, blendTime: number): void;
|
|
69
|
+
RPCSetCameraSpeed(speed: number): void;
|
|
70
|
+
RPCSetCameraTarget(target: RpcTypes.Vector3, blendTime: number): void;
|
|
71
|
+
RPCSetCameraView(state: RpcTypes.Segment, blendTime: number): void;
|
|
68
72
|
RPCSetGhostColor(ghostColor: RpcTypes.RGBA): void;
|
|
69
|
-
RPCSetGhostColor2(ghostColor: RpcTypes.RGBA): void;
|
|
70
|
-
RPCSetIblRotation(transform: RpcTypes.Matrix44): void;
|
|
71
73
|
RPCSetLighting(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RpcTypes.RGBA): void;
|
|
72
|
-
RPCSetMaterialOverrides(componentHandle: number,
|
|
73
|
-
RPCSetMoveSpeed(speed: number): void;
|
|
74
|
+
RPCSetMaterialOverrides(componentHandle: number, elementIndices: number[], materialInstanceHandles: number[]): void;
|
|
74
75
|
RPCSetSectionBox(state: RpcTypes.SectionBoxState): void;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
RPCSetStateVim(componentHandle: number, state: number): void;
|
|
77
|
+
RPCSetStateElements(componentHandle: number, elementIndices: number[], state: number): void;
|
|
78
|
+
RPCSetStatesElements(componentHandle: number, elementIndices: number[], states: number[]): void;
|
|
78
79
|
RPCStartScene(toneMappingWhitePoint: number, hdrScale: number, hdrBackgroundScale: number, hdrBackgroundSaturation: number, backgroundBlur: number, backgroundColor: RpcTypes.RGBA): Promise<boolean>;
|
|
79
80
|
RPCTriggerRenderDocCapture(): void;
|
|
81
|
+
RPCUnloadAll(): void;
|
|
80
82
|
RPCUnloadVim(componentHandle: number): void;
|
|
81
83
|
}
|
|
@@ -40,6 +40,7 @@ export declare class ReadMarshal {
|
|
|
40
40
|
readMatrix44(): RpcTypes.Matrix44;
|
|
41
41
|
readInt(): number;
|
|
42
42
|
readUInt(): number;
|
|
43
|
+
readUInt64(): bigint;
|
|
43
44
|
readFloat(): number;
|
|
44
45
|
readBoolean(): boolean;
|
|
45
46
|
readString(): string;
|
|
@@ -55,6 +56,7 @@ export declare class ReadMarshal {
|
|
|
55
56
|
readSectionBoxState(): RpcTypes.SectionBoxState;
|
|
56
57
|
readArrayOfInt(): number[];
|
|
57
58
|
readArrayOfUInt(): number[];
|
|
59
|
+
readArrayOfUInt64(): bigint[];
|
|
58
60
|
readArrayOfFloat(): number[];
|
|
59
61
|
readArrayOfBool(): boolean[];
|
|
60
62
|
readArrayOfRGBA32(): RpcTypes.RGBA32[];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as RpcTypes from "./rpcTypes";
|
|
2
2
|
import { MaterialHandle, RpcClient } from "./rpcClient";
|
|
3
|
+
import { VisibilityState } from "./visibility";
|
|
3
4
|
export type VimSource = {
|
|
4
5
|
url: string;
|
|
5
6
|
authToken?: string;
|
|
@@ -55,61 +56,11 @@ export declare class RpcSafeClient {
|
|
|
55
56
|
* @param settings - The lighting settings to apply
|
|
56
57
|
*/
|
|
57
58
|
RPCSetLighting(settings: SceneSettings): void;
|
|
58
|
-
RPCLockIblRotation(lock: boolean): void;
|
|
59
|
-
RPCGetSceneAABB(): Promise<RpcTypes.Box3 | undefined>;
|
|
60
59
|
/*******************************************************************************
|
|
61
60
|
* NODE VISIBILITY METHODS
|
|
62
61
|
* Methods for controlling node visibility, including show/hide, ghosting,
|
|
63
62
|
* and highlighting functionality.
|
|
64
63
|
******************************************************************************/
|
|
65
|
-
/**
|
|
66
|
-
* Hides all nodes in a component, making the entire component invisible.
|
|
67
|
-
* @param componentHandle - The component to hide entirely
|
|
68
|
-
* @throws {Error} If the component handle is invalid
|
|
69
|
-
*/
|
|
70
|
-
RPCHideAll(componentHandle: number): void;
|
|
71
|
-
/**
|
|
72
|
-
* Shows all nodes in a component, making the entire component visible.
|
|
73
|
-
* @param componentHandle - The component to show entirely
|
|
74
|
-
* @throws {Error} If the component handle is invalid
|
|
75
|
-
*/
|
|
76
|
-
RPCShowAll(componentHandle: number): void;
|
|
77
|
-
/**
|
|
78
|
-
* Makes all nodes in a component semi-transparent (ghosted).
|
|
79
|
-
* @param componentHandle - The component to ghost entirely
|
|
80
|
-
* @throws {Error} If the component handle is invalid
|
|
81
|
-
*/
|
|
82
|
-
RPCGhostAll(componentHandle: number): void;
|
|
83
|
-
/**
|
|
84
|
-
* Highlights all nodes in a component.
|
|
85
|
-
* @param componentHandle - The component to highlight entirely
|
|
86
|
-
* @throws {Error} If the component handle is invalid
|
|
87
|
-
*/
|
|
88
|
-
RPCHighlightAll(componentHandle: number): void;
|
|
89
|
-
/**
|
|
90
|
-
* Hides specified nodes in a component, making them invisible.
|
|
91
|
-
* Large node arrays are automatically processed in batches.
|
|
92
|
-
* @param componentHandle - The component containing the nodes
|
|
93
|
-
* @param nodes - Array of node indices to hide
|
|
94
|
-
* @throws {Error} If the component handle is invalid or nodes array is invalid
|
|
95
|
-
*/
|
|
96
|
-
RPCHide(componentHandle: number, nodes: number[]): void;
|
|
97
|
-
/**
|
|
98
|
-
* Shows specified nodes in a component, making them visible.
|
|
99
|
-
* Large node arrays are automatically processed in batches.
|
|
100
|
-
* @param componentHandle - The component containing the nodes
|
|
101
|
-
* @param nodes - Array of node indices to show
|
|
102
|
-
* @throws {Error} If the component handle is invalid or nodes array is invalid
|
|
103
|
-
*/
|
|
104
|
-
RPCShow(componentHandle: number, nodes: number[]): void;
|
|
105
|
-
/**
|
|
106
|
-
* Makes specified nodes semi-transparent (ghosted) in a component.
|
|
107
|
-
* Large node arrays are automatically processed in batches.
|
|
108
|
-
* @param componentHandle - The component containing the nodes
|
|
109
|
-
* @param nodes - Array of node indices to ghost
|
|
110
|
-
* @throws {Error} If the component handle is invalid or nodes array is invalid
|
|
111
|
-
*/
|
|
112
|
-
RPCGhost(componentHandle: number, nodes: number[]): void;
|
|
113
64
|
/**
|
|
114
65
|
* Highlights specified nodes in a component.
|
|
115
66
|
* Large node arrays are automatically processed in batches.
|
|
@@ -117,7 +68,9 @@ export declare class RpcSafeClient {
|
|
|
117
68
|
* @param nodes - Array of node indices to highlight
|
|
118
69
|
* @throws {Error} If the component handle is invalid or nodes array is invalid
|
|
119
70
|
*/
|
|
120
|
-
|
|
71
|
+
RPCSetStateElements(componentHandle: number, elements: number[], state: VisibilityState): void;
|
|
72
|
+
RPCSetStatesElements(componentHandle: number, elements: number[], states: VisibilityState[]): void;
|
|
73
|
+
RPCSetStateVim(componentHandle: number, state: VisibilityState): void;
|
|
121
74
|
/*******************************************************************************
|
|
122
75
|
* TEXT AND UI METHODS
|
|
123
76
|
* Methods for creating and managing 3D text elements in the scene.
|
|
@@ -152,25 +105,54 @@ export declare class RpcSafeClient {
|
|
|
152
105
|
* Retrieves the current camera position and orientation.
|
|
153
106
|
* @returns Promise resolving to a segment representing the camera's current position and target
|
|
154
107
|
*/
|
|
155
|
-
|
|
108
|
+
RPCGetCameraView(): Promise<RpcTypes.Segment | undefined>;
|
|
156
109
|
/**
|
|
157
110
|
* Sets the camera position and orientation.
|
|
158
111
|
* @param segment - The desired camera position and target
|
|
159
112
|
* @param blendTime - Duration of the camera transition in seconds (non-negative)
|
|
160
|
-
* @throws {Error} If segment is invalid or blendTime is negative
|
|
161
113
|
*/
|
|
162
|
-
|
|
163
|
-
|
|
114
|
+
RPCSetCameraView(segment: RpcTypes.Segment, blendTime: number): void;
|
|
115
|
+
/**
|
|
116
|
+
* Sets the camera's position without changing its target.
|
|
117
|
+
* The camera will move to the specified position while maintaining its current look-at direction.
|
|
118
|
+
*
|
|
119
|
+
* @param position - The new position of the camera in world space
|
|
120
|
+
* @param blendTime - Duration of the camera transition in seconds (non-negative)
|
|
121
|
+
*/
|
|
122
|
+
RPCSetCameraPosition(position: RpcTypes.Vector3, blendTime: number): void;
|
|
123
|
+
/**
|
|
124
|
+
* Sets the camera's look-at target without changing its position.
|
|
125
|
+
* The camera will rotate to face the specified target while remaining at its current position.
|
|
126
|
+
*
|
|
127
|
+
* @param target - The new look-at target of the camera in world space
|
|
128
|
+
* @param blendTime - Duration of the camera transition in seconds (non-negative)
|
|
129
|
+
*/
|
|
130
|
+
RPCSetCameraTarget(target: RpcTypes.Vector3, blendTime: number): void;
|
|
131
|
+
/**
|
|
132
|
+
* Retrieves the axis-aligned bounding box (AABB) that encompasses the entire scene.
|
|
133
|
+
* This includes all loaded geometry across all VIM components.
|
|
134
|
+
*
|
|
135
|
+
* @returns Promise resolving to the global AABB of the scene, or undefined on failure
|
|
136
|
+
*/
|
|
137
|
+
RPCGetAABBForAll(): Promise<RpcTypes.Box3 | undefined>;
|
|
138
|
+
/**
|
|
139
|
+
* Retrieves the axis-aligned bounding box (AABB) for a specific VIM component.
|
|
140
|
+
* This bounding box represents the spatial bounds of all geometry within the given component.
|
|
141
|
+
*
|
|
142
|
+
* @param componentHandle - The handle of the VIM component to query
|
|
143
|
+
* @returns Promise resolving to the component’s bounding box, or undefined on failure
|
|
144
|
+
*/
|
|
145
|
+
RPCGetAABBForVim(componentHandle: number): Promise<RpcTypes.Box3 | undefined>;
|
|
164
146
|
/**
|
|
165
147
|
* Calculates the bounding box for specified nodes in a component.
|
|
166
148
|
* Large node arrays are automatically processed in batches for better performance.
|
|
167
149
|
* @param componentHandle - The component containing the nodes
|
|
168
|
-
* @param
|
|
150
|
+
* @param elements - Array of node indices to calculate bounds for
|
|
169
151
|
* @returns Promise resolving to the combined bounding box
|
|
170
152
|
* @throws {Error} If the component handle is invalid or nodes array is invalid
|
|
171
153
|
*/
|
|
172
|
-
|
|
173
|
-
private
|
|
154
|
+
RPCGetAABBForElements(componentHandle: number, elements: number[]): Promise<RpcTypes.Box3 | undefined>;
|
|
155
|
+
private RPCGetAABBForElementsBatched;
|
|
174
156
|
/**
|
|
175
157
|
* Frames the camera to show all components in the scene.
|
|
176
158
|
* @param blendTime - Duration of the camera transition in seconds (non-negative)
|
|
@@ -189,19 +171,19 @@ export declare class RpcSafeClient {
|
|
|
189
171
|
* Frames specific instances within a component. For large numbers of instances,
|
|
190
172
|
* automatically switches to bounding box framing for better performance.
|
|
191
173
|
* @param componentHandle - The component containing the instances
|
|
192
|
-
* @param
|
|
174
|
+
* @param elements - Array of node indices to frame
|
|
193
175
|
* @param blendTime - Duration of the camera transition in seconds (non-negative)
|
|
194
176
|
* @returns Promise resolving to camera segment representing the final position
|
|
195
177
|
* @throws {Error} If the component handle is invalid or nodes array is empty
|
|
196
178
|
*/
|
|
197
|
-
|
|
179
|
+
RPCFrameElements(componentHandle: number, elements: number[], blendTime: number): Promise<RpcTypes.Segment | undefined>;
|
|
198
180
|
/**
|
|
199
181
|
* Frames the camera to show a specific bounding box.
|
|
200
182
|
* @param box - The bounding box to frame
|
|
201
183
|
* @param blendTime - Duration of the camera transition in seconds (non-negative)
|
|
202
184
|
* @throws {Error} If the box is invalid (min values must be less than max values)
|
|
203
185
|
*/
|
|
204
|
-
|
|
186
|
+
RPCFrameAABB(box: RpcTypes.Box3, blendTime: number): Promise<RpcTypes.Segment | undefined>;
|
|
205
187
|
/*******************************************************************************
|
|
206
188
|
* INPUT HANDLING METHODS
|
|
207
189
|
* Methods for handling user input including mouse, keyboard, and camera controls.
|
|
@@ -211,7 +193,7 @@ export declare class RpcSafeClient {
|
|
|
211
193
|
* @param speed - The desired movement speed (must be positive)
|
|
212
194
|
* @throws {Error} If speed is not positive
|
|
213
195
|
*/
|
|
214
|
-
|
|
196
|
+
RPCSetCameraSpeed(speed: number): void;
|
|
215
197
|
RPCSetCameraMode(mode: InputMode): void;
|
|
216
198
|
/**
|
|
217
199
|
* Sets the viewer's aspect ratio.
|
|
@@ -219,7 +201,7 @@ export declare class RpcSafeClient {
|
|
|
219
201
|
* @param height - The height component of the aspect ratio
|
|
220
202
|
* @throws {Error} If width or height are not positive integers
|
|
221
203
|
*/
|
|
222
|
-
|
|
204
|
+
RPCSetCameraAspectRatio(width: number, height: number): void;
|
|
223
205
|
/*******************************************************************************
|
|
224
206
|
* VIM FILE MANAGEMENT METHODS
|
|
225
207
|
* Methods for loading, unloading, and managing VIM files and components.
|
|
@@ -254,7 +236,7 @@ export declare class RpcSafeClient {
|
|
|
254
236
|
/**
|
|
255
237
|
* Clears the entire scene, removing all components and resetting to initial state.
|
|
256
238
|
*/
|
|
257
|
-
|
|
239
|
+
RPCUnloadAll(): void;
|
|
258
240
|
/**
|
|
259
241
|
* Sets the color used for ghosted geometry.
|
|
260
242
|
* @param ghostColor - The RGBA color to use for ghosted elements
|
|
@@ -369,28 +351,5 @@ export declare class RpcSafeClient {
|
|
|
369
351
|
* Triggers a RenderDoc frame capture if RenderDoc is attached.
|
|
370
352
|
*/
|
|
371
353
|
RPCTriggerRenderDocCapture(): void;
|
|
372
|
-
/**
|
|
373
|
-
* Shows axis-aligned bounding boxes (AABBs) for specified nodes with custom colors.
|
|
374
|
-
* Large arrays are automatically processed in batches for better performance.
|
|
375
|
-
* @param componentHandle - The component containing the nodes
|
|
376
|
-
* @param nodes - Array of node indices to show AABBs for
|
|
377
|
-
* @param colors - Array of colors for each AABB (must match nodes length)
|
|
378
|
-
* @throws {Error} If arrays have different lengths or component handle is invalid
|
|
379
|
-
*/
|
|
380
|
-
RPCShowAABBs(componentHandle: number, nodes: number[], colors: RpcTypes.RGBA32[]): void;
|
|
381
|
-
/**
|
|
382
|
-
* Hides the axis-aligned bounding boxes (AABBs) for specified nodes.
|
|
383
|
-
* Large node arrays are automatically processed in batches.
|
|
384
|
-
* @param componentHandle - The component containing the nodes
|
|
385
|
-
* @param nodes - Array of node indices whose AABBs should be hidden
|
|
386
|
-
* @throws {Error} If the component handle is invalid or nodes array is invalid
|
|
387
|
-
*/
|
|
388
|
-
RPCHideAABBs(componentHandle: number, nodes: number[]): void;
|
|
389
|
-
/**
|
|
390
|
-
* Hides all axis-aligned bounding boxes (AABBs) in a component.
|
|
391
|
-
* @param componentHandle - The component whose AABBs should be hidden
|
|
392
|
-
* @throws {Error} If the component handle is invalid
|
|
393
|
-
*/
|
|
394
|
-
RPCHideAllAABBs(componentHandle: number): void;
|
|
395
354
|
private safeCall;
|
|
396
355
|
}
|
|
@@ -3,7 +3,7 @@ import type { ILogger } from './logger';
|
|
|
3
3
|
import { ColorManager } from './colorManager';
|
|
4
4
|
import { Element3D } from './element3d';
|
|
5
5
|
import { LoadRequest } from './loadRequest';
|
|
6
|
-
import { StateSynchronizer } from './
|
|
6
|
+
import { StateSynchronizer } from './visibility';
|
|
7
7
|
import { Renderer } from './renderer';
|
|
8
8
|
import { RpcSafeClient, VimSource } from './rpcSafeClient';
|
|
9
9
|
import * as THREE from 'three';
|
|
@@ -16,13 +16,13 @@ export declare class Vim implements IVim<Element3D> {
|
|
|
16
16
|
private _colors;
|
|
17
17
|
private _renderer;
|
|
18
18
|
private _logger;
|
|
19
|
-
readonly
|
|
19
|
+
readonly visibility: StateSynchronizer;
|
|
20
20
|
private _nodeColors;
|
|
21
21
|
private _updatedColors;
|
|
22
22
|
private _updateScheduled;
|
|
23
23
|
private _objects;
|
|
24
24
|
constructor(rpc: RpcSafeClient, color: ColorManager, renderer: Renderer, source: VimSource, logger: ILogger);
|
|
25
|
-
|
|
25
|
+
getElement(elementIndex: number): Element3D;
|
|
26
26
|
getElementsFromId(id: number): Element3D[];
|
|
27
27
|
getElementFromIndex(element: number): Element3D;
|
|
28
28
|
getObjectsInBox(box: THREE.Box3): Element3D[];
|