@itwin/core-frontend 4.1.0-dev.8 → 4.1.0-dev.81
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/CHANGELOG.md +105 -1
- package/lib/cjs/AccuDraw.d.ts +3 -4
- package/lib/cjs/AccuDraw.d.ts.map +1 -1
- package/lib/cjs/AccuDraw.js +6 -7
- package/lib/cjs/AccuDraw.js.map +1 -1
- package/lib/cjs/AccuSnap.d.ts +17 -2
- package/lib/cjs/AccuSnap.d.ts.map +1 -1
- package/lib/cjs/AccuSnap.js +35 -8
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.d.ts +3 -2
- package/lib/cjs/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js +47 -7
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.d.ts +3 -3
- package/lib/cjs/BriefcaseConnection.js +3 -3
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/ChangeFlags.d.ts +25 -12
- package/lib/cjs/ChangeFlags.d.ts.map +1 -1
- package/lib/cjs/ChangeFlags.js +24 -11
- package/lib/cjs/ChangeFlags.js.map +1 -1
- package/lib/cjs/CheckpointConnection.js +1 -1
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
- package/lib/cjs/DisplayStyleState.js +2 -1
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/DrawingViewState.d.ts +2 -2
- package/lib/cjs/DrawingViewState.d.ts.map +1 -1
- package/lib/cjs/DrawingViewState.js +3 -3
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/ElementLocateManager.d.ts +0 -1
- package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
- package/lib/cjs/ElementLocateManager.js +11 -19
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js +1 -1
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/FrustumAnimator.js.map +1 -1
- package/lib/cjs/GeoServices.d.ts +37 -7
- package/lib/cjs/GeoServices.d.ts.map +1 -1
- package/lib/cjs/GeoServices.js +75 -25
- package/lib/cjs/GeoServices.js.map +1 -1
- package/lib/cjs/HitDetail.d.ts +100 -29
- package/lib/cjs/HitDetail.d.ts.map +1 -1
- package/lib/cjs/HitDetail.js +89 -36
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.d.ts +19 -14
- package/lib/cjs/IModelApp.d.ts.map +1 -1
- package/lib/cjs/IModelApp.js +22 -19
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.d.ts +64 -19
- package/lib/cjs/IModelConnection.d.ts.map +1 -1
- package/lib/cjs/IModelConnection.js +131 -20
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IpcApp.d.ts +1 -1
- package/lib/cjs/IpcApp.js +1 -1
- package/lib/cjs/IpcApp.js.map +1 -1
- package/lib/cjs/Marker.d.ts +1 -1
- package/lib/cjs/Marker.d.ts.map +1 -1
- package/lib/cjs/Marker.js +3 -3
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/NativeApp.js +1 -1
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NoRenderApp.d.ts +1 -1
- package/lib/cjs/NoRenderApp.d.ts.map +1 -1
- package/lib/cjs/NoRenderApp.js +1 -1
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/RealityDataSource.js +1 -1
- package/lib/cjs/RealityDataSource.js.map +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/cjs/SheetViewState.d.ts +9 -7
- package/lib/cjs/SheetViewState.d.ts.map +1 -1
- package/lib/cjs/SheetViewState.js +22 -7
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts +20 -5
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +13 -5
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/Sprites.js +2 -2
- package/lib/cjs/Sprites.js.map +1 -1
- package/lib/cjs/TentativePoint.d.ts.map +1 -1
- package/lib/cjs/TentativePoint.js +10 -1
- package/lib/cjs/TentativePoint.js.map +1 -1
- package/lib/cjs/ViewContext.d.ts +19 -0
- package/lib/cjs/ViewContext.d.ts.map +1 -1
- package/lib/cjs/ViewContext.js +9 -0
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator3d.d.ts +3 -6
- package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
- package/lib/cjs/ViewCreator3d.js +12 -33
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewGlobalLocation.d.ts.map +1 -1
- package/lib/cjs/ViewGlobalLocation.js +4 -3
- package/lib/cjs/ViewGlobalLocation.js.map +1 -1
- package/lib/cjs/ViewManager.d.ts +4 -2
- package/lib/cjs/ViewManager.d.ts.map +1 -1
- package/lib/cjs/ViewManager.js +4 -2
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/ViewPose.d.ts +11 -11
- package/lib/cjs/ViewPose.d.ts.map +1 -1
- package/lib/cjs/ViewPose.js +17 -11
- package/lib/cjs/ViewPose.js.map +1 -1
- package/lib/cjs/ViewState.d.ts +44 -26
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +52 -25
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewingSpace.js +1 -1
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.d.ts +59 -21
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +68 -25
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/ViewportSync.d.ts +2 -2
- package/lib/cjs/ViewportSync.d.ts.map +1 -1
- package/lib/cjs/ViewportSync.js +2 -2
- package/lib/cjs/ViewportSync.js.map +1 -1
- package/lib/cjs/common/FrontendLoggerCategory.d.ts.map +1 -0
- package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -0
- package/lib/cjs/common/ImageUtil.d.ts.map +1 -0
- package/lib/cjs/{ImageUtil.js → common/ImageUtil.js} +2 -0
- package/lib/cjs/common/ImageUtil.js.map +1 -0
- package/lib/cjs/common/ViewRect.d.ts.map +1 -0
- package/lib/cjs/common/ViewRect.js.map +1 -0
- package/lib/cjs/common/WorkerProxy.d.ts +73 -0
- package/lib/cjs/common/WorkerProxy.d.ts.map +1 -0
- package/lib/cjs/common/WorkerProxy.js +54 -0
- package/lib/cjs/common/WorkerProxy.js.map +1 -0
- package/lib/{esm → cjs/common}/gltf/GltfModel.d.ts +1 -1
- package/lib/cjs/common/gltf/GltfModel.d.ts.map +1 -0
- package/lib/cjs/common/gltf/GltfModel.js.map +1 -0
- package/lib/cjs/common/gltf/GltfParser.d.ts.map +1 -0
- package/lib/cjs/common/gltf/GltfParser.js.map +1 -0
- package/lib/cjs/common/gltf/GltfSchema.d.ts.map +1 -0
- package/lib/cjs/common/gltf/GltfSchema.js.map +1 -0
- package/lib/cjs/common/imdl/CompactEdges.d.ts +27 -0
- package/lib/cjs/common/imdl/CompactEdges.d.ts.map +1 -0
- package/lib/cjs/common/imdl/CompactEdges.js +96 -0
- package/lib/cjs/common/imdl/CompactEdges.js.map +1 -0
- package/lib/cjs/{imdl → common/imdl}/ImdlModel.d.ts +5 -0
- package/lib/cjs/common/imdl/ImdlModel.d.ts.map +1 -0
- package/lib/cjs/common/imdl/ImdlModel.js +71 -0
- package/lib/cjs/common/imdl/ImdlModel.js.map +1 -0
- package/lib/{esm → cjs/common}/imdl/ImdlSchema.d.ts +68 -36
- package/lib/cjs/common/imdl/ImdlSchema.d.ts.map +1 -0
- package/lib/cjs/common/imdl/ImdlSchema.js +23 -0
- package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -0
- package/lib/cjs/{imdl/ImdlParser.d.ts → common/imdl/ParseImdlDocument.d.ts} +13 -8
- package/lib/cjs/common/imdl/ParseImdlDocument.d.ts.map +1 -0
- package/lib/cjs/{imdl/ImdlParser.js → common/imdl/ParseImdlDocument.js} +52 -37
- package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -0
- package/lib/cjs/common/render/AnimationNodeId.d.ts +11 -0
- package/lib/cjs/common/render/AnimationNodeId.d.ts.map +1 -0
- package/lib/cjs/common/render/AnimationNodeId.js +19 -0
- package/lib/cjs/common/render/AnimationNodeId.js.map +1 -0
- package/lib/{esm/render/RenderMaterial.d.ts → cjs/common/render/MaterialParams.d.ts} +7 -20
- package/lib/cjs/common/render/MaterialParams.d.ts.map +1 -0
- package/lib/cjs/{render/RenderMaterial.js → common/render/MaterialParams.js} +1 -1
- package/lib/cjs/common/render/MaterialParams.js.map +1 -0
- package/lib/cjs/common/render/TextureParams.d.ts +30 -0
- package/lib/cjs/common/render/TextureParams.d.ts.map +1 -0
- package/lib/cjs/{render/RenderTexture.js → common/render/TextureParams.js} +1 -1
- package/lib/cjs/common/render/TextureParams.js.map +1 -0
- package/lib/{esm → cjs/common}/render/primitives/AuxChannelTable.d.ts +8 -8
- package/lib/cjs/common/render/primitives/AuxChannelTable.d.ts.map +1 -0
- package/lib/cjs/{render → common/render}/primitives/AuxChannelTable.js +9 -9
- package/lib/cjs/common/render/primitives/AuxChannelTable.js.map +1 -0
- package/lib/cjs/common/render/primitives/DisplayParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/DisplayParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/EdgeParams.d.ts +94 -0
- package/lib/cjs/common/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/EdgeParams.js +46 -0
- package/lib/cjs/common/render/primitives/EdgeParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/MeshParams.d.ts +20 -0
- package/lib/cjs/common/render/primitives/MeshParams.d.ts.map +1 -0
- package/lib/cjs/{imdl/ImdlModel.js → common/render/primitives/MeshParams.js} +2 -2
- package/lib/cjs/common/render/primitives/MeshParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.d.ts +29 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.js +18 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.js.map +1 -0
- package/lib/cjs/common/render/primitives/PointStringParams.d.ts +14 -0
- package/lib/cjs/common/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/PointStringParams.js +10 -0
- package/lib/cjs/common/render/primitives/PointStringParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/PolylineParams.d.ts +29 -0
- package/lib/cjs/common/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/PolylineParams.js +10 -0
- package/lib/cjs/common/render/primitives/PolylineParams.js.map +1 -0
- package/lib/{esm → cjs/common}/render/primitives/SurfaceParams.d.ts +1 -1
- package/lib/cjs/common/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/VertexIndices.d.ts +26 -0
- package/lib/cjs/common/render/primitives/VertexIndices.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/VertexIndices.js +64 -0
- package/lib/cjs/common/render/primitives/VertexIndices.js.map +1 -0
- package/lib/cjs/common/render/primitives/VertexTable.d.ts +45 -0
- package/lib/cjs/common/render/primitives/VertexTable.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/VertexTable.js +38 -0
- package/lib/cjs/common/render/primitives/VertexTable.js.map +1 -0
- package/lib/{esm → cjs/common}/render/primitives/VertexTableSplitter.d.ts +20 -3
- package/lib/cjs/common/render/primitives/VertexTableSplitter.d.ts.map +1 -0
- package/lib/cjs/{render → common/render}/primitives/VertexTableSplitter.js +33 -23
- package/lib/cjs/common/render/primitives/VertexTableSplitter.js.map +1 -0
- package/lib/cjs/core-frontend.d.ts +45 -11
- package/lib/cjs/core-frontend.d.ts.map +1 -1
- package/lib/cjs/core-frontend.js +45 -11
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
- package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/render/CanvasDecoration.d.ts +6 -2
- package/lib/cjs/render/CanvasDecoration.d.ts.map +1 -1
- package/lib/cjs/render/CanvasDecoration.js.map +1 -1
- package/lib/cjs/render/CreateRenderMaterialArgs.d.ts +24 -0
- package/lib/cjs/render/CreateRenderMaterialArgs.d.ts.map +1 -0
- package/lib/cjs/render/CreateRenderMaterialArgs.js +10 -0
- package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -0
- package/lib/{esm/render/RenderTexture.d.ts → cjs/render/CreateTextureArgs.d.ts} +4 -28
- package/lib/cjs/render/CreateTextureArgs.d.ts.map +1 -0
- package/lib/cjs/render/CreateTextureArgs.js +10 -0
- package/lib/cjs/render/CreateTextureArgs.js.map +1 -0
- package/lib/cjs/render/GraphicBranch.d.ts +5 -7
- package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.js +1 -9
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/InstancedGraphicParams.d.ts +3 -4
- package/lib/cjs/render/InstancedGraphicParams.d.ts.map +1 -1
- package/lib/cjs/render/InstancedGraphicParams.js.map +1 -1
- package/lib/cjs/render/MockRender.d.ts +4 -4
- package/lib/cjs/render/MockRender.d.ts.map +1 -1
- package/lib/cjs/render/MockRender.js +1 -1
- package/lib/cjs/render/MockRender.js.map +1 -1
- package/lib/cjs/render/ParticleCollectionBuilder.d.ts.map +1 -1
- package/lib/cjs/render/ParticleCollectionBuilder.js +5 -5
- package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/cjs/render/Pixel.d.ts +57 -0
- package/lib/cjs/render/Pixel.d.ts.map +1 -1
- package/lib/cjs/render/Pixel.js +41 -0
- package/lib/cjs/render/Pixel.js.map +1 -1
- package/lib/cjs/render/RealityMeshParams.js +2 -2
- package/lib/cjs/render/RealityMeshParams.js.map +1 -1
- package/lib/cjs/render/RenderSystem.d.ts +24 -10
- package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
- package/lib/cjs/render/RenderSystem.js +7 -8
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/RenderTarget.d.ts +1 -1
- package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/cjs/render/VisibleFeature.d.ts +1 -1
- package/lib/cjs/render/VisibleFeature.d.ts.map +1 -1
- package/lib/cjs/render/VisibleFeature.js.map +1 -1
- package/lib/cjs/render/primitives/EdgeParams.d.ts +2 -89
- package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -1
- package/lib/cjs/render/primitives/EdgeParams.js +44 -80
- package/lib/cjs/render/primitives/EdgeParams.js.map +1 -1
- package/lib/cjs/render/primitives/PointCloudPrimitive.d.ts +1 -0
- package/lib/cjs/render/primitives/PointCloudPrimitive.d.ts.map +1 -1
- package/lib/cjs/render/primitives/PointCloudPrimitive.js.map +1 -1
- package/lib/cjs/render/primitives/PointStringParams.d.ts +3 -11
- package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -1
- package/lib/cjs/render/primitives/PointStringParams.js +27 -30
- package/lib/cjs/render/primitives/PointStringParams.js.map +1 -1
- package/lib/cjs/render/primitives/Polyface.d.ts +1 -1
- package/lib/cjs/render/primitives/Polyface.d.ts.map +1 -1
- package/lib/cjs/render/primitives/Polyface.js.map +1 -1
- package/lib/cjs/render/primitives/PolylineParams.d.ts +8 -37
- package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -1
- package/lib/cjs/render/primitives/PolylineParams.js +40 -48
- package/lib/cjs/render/primitives/PolylineParams.js.map +1 -1
- package/lib/cjs/render/primitives/Strokes.d.ts +1 -1
- package/lib/cjs/render/primitives/Strokes.d.ts.map +1 -1
- package/lib/cjs/render/primitives/Strokes.js.map +1 -1
- package/lib/cjs/render/primitives/VertexTableBuilder.d.ts +31 -0
- package/lib/cjs/render/primitives/VertexTableBuilder.d.ts.map +1 -0
- package/lib/cjs/render/primitives/{VertexTable.js → VertexTableBuilder.js} +62 -173
- package/lib/cjs/render/primitives/VertexTableBuilder.js.map +1 -0
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts +2 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilder.js +5 -2
- package/lib/cjs/render/primitives/mesh/MeshBuilder.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts +6 -5
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js +7 -4
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +58 -31
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +25 -29
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/cjs/render/webgl/BatchState.js +1 -1
- package/lib/cjs/render/webgl/BatchState.js.map +1 -1
- package/lib/cjs/render/webgl/BranchState.d.ts +3 -0
- package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchState.js +2 -0
- package/lib/cjs/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/ColorInfo.d.ts +1 -1
- package/lib/cjs/render/webgl/ColorInfo.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ColorInfo.js.map +1 -1
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts +2 -2
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/render/webgl/Graphic.d.ts +7 -1
- package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Graphic.js +7 -2
- package/lib/cjs/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/Material.d.ts +1 -1
- package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Material.js.map +1 -1
- package/lib/cjs/render/webgl/Mesh.d.ts +2 -2
- package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Mesh.js +1 -1
- package/lib/cjs/render/webgl/Mesh.js.map +1 -1
- package/lib/cjs/render/webgl/MeshData.d.ts +2 -2
- package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -1
- package/lib/cjs/render/webgl/MeshData.js.map +1 -1
- package/lib/cjs/render/webgl/MeshGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointString.d.ts +1 -1
- package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/Polyline.d.ts +1 -1
- package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts +2 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.js +5 -2
- package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.js +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/System.d.ts +7 -6
- package/lib/cjs/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/render/webgl/System.js +2 -2
- package/lib/cjs/render/webgl/System.js.map +1 -1
- package/lib/cjs/render/webgl/Target.d.ts +1 -1
- package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Target.js +14 -12
- package/lib/cjs/render/webgl/Target.js.map +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Texture.js +1 -1
- package/lib/cjs/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/render/webgl/UniformHandle.js +1 -1
- package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
- package/lib/cjs/render/webgl/VertexLUT.d.ts +2 -2
- package/lib/cjs/render/webgl/VertexLUT.d.ts.map +1 -1
- package/lib/cjs/render/webgl/VertexLUT.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.js +32 -19
- package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/tile/B3dmReader.d.ts +1 -1
- package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
- package/lib/cjs/tile/B3dmReader.js +1 -1
- package/lib/cjs/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/tile/FetchCloudStorage.d.ts +15 -0
- package/lib/cjs/tile/FetchCloudStorage.d.ts.map +1 -0
- package/lib/cjs/tile/FetchCloudStorage.js +35 -0
- package/lib/cjs/tile/FetchCloudStorage.js.map +1 -0
- package/lib/cjs/tile/GltfReader.d.ts +13 -4
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +80 -28
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTile.js +4 -9
- package/lib/cjs/tile/IModelTile.js.map +1 -1
- package/lib/cjs/tile/IModelTileTree.d.ts +4 -1
- package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTileTree.js +15 -0
- package/lib/cjs/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/tile/ImdlDecoder.d.ts +52 -0
- package/lib/cjs/tile/ImdlDecoder.d.ts.map +1 -0
- package/lib/cjs/tile/ImdlDecoder.js +35 -0
- package/lib/cjs/tile/ImdlDecoder.js.map +1 -0
- package/lib/{esm/imdl → cjs/tile}/ImdlGraphicsCreator.d.ts +1 -1
- package/lib/cjs/tile/ImdlGraphicsCreator.d.ts.map +1 -0
- package/lib/cjs/{imdl → tile}/ImdlGraphicsCreator.js +13 -13
- package/lib/cjs/tile/ImdlGraphicsCreator.js.map +1 -0
- package/lib/cjs/tile/ImdlParser.d.ts +26 -0
- package/lib/cjs/tile/ImdlParser.d.ts.map +1 -0
- package/lib/cjs/tile/ImdlParser.js +72 -0
- package/lib/cjs/tile/ImdlParser.js.map +1 -0
- package/lib/cjs/tile/ImdlReader.d.ts +6 -1
- package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
- package/lib/cjs/tile/ImdlReader.js +16 -11
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/OPCFormatInterpreter.js +1 -1
- package/lib/cjs/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/cjs/tile/PntsReader.js +1 -1
- package/lib/cjs/tile/PntsReader.js.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.js +2 -1
- package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTile.d.ts +8 -3
- package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTile.js +4 -1
- package/lib/cjs/tile/RealityTile.js.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +10 -5
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.js +1 -1
- package/lib/cjs/tile/RealityTileTree.js.map +1 -1
- package/lib/cjs/tile/ThreeDTileFormatInterpreter.js +1 -1
- package/lib/cjs/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.d.ts +14 -11
- package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
- package/lib/cjs/tile/TileAdmin.js +9 -52
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileContent.d.ts +6 -0
- package/lib/cjs/tile/TileContent.d.ts.map +1 -1
- package/lib/cjs/tile/TileContent.js.map +1 -1
- package/lib/cjs/tile/TileStorage.js.map +1 -1
- package/lib/cjs/tile/internal.d.ts +9 -0
- package/lib/cjs/tile/internal.d.ts.map +1 -1
- package/lib/cjs/tile/internal.js +9 -0
- package/lib/cjs/tile/internal.js.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts +8 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.js +21 -0
- package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts +6 -4
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.js +6 -4
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts +2 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +55 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +96 -23
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts +11 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts.map +1 -0
- package/lib/cjs/{imdl/ImdlSchema.js → tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js} +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts +15 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js +59 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts +47 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.js +126 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts +27 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js +135 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.d.ts +6 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.js +22 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.js.map +1 -0
- package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -1
- package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +27 -11
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapFeatureInfo.d.ts +67 -7
- package/lib/cjs/tile/map/MapFeatureInfo.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapFeatureInfo.js +16 -2
- package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.js +3 -0
- package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +4 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js +3 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.d.ts +5 -3
- package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js +3 -0
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +9 -1
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js +1 -15
- package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts +12 -3
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +33 -20
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +2 -3
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +3 -4
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.d.ts +4 -4
- package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js +4 -4
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/QuadId.js.map +1 -1
- package/lib/cjs/tools/ElementSetTool.js +1 -1
- package/lib/cjs/tools/ElementSetTool.js.map +1 -1
- package/lib/cjs/tools/SelectTool.js +1 -1
- package/lib/cjs/tools/SelectTool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.d.ts +8 -6
- package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js +11 -8
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ToolAssistance.d.ts +18 -0
- package/lib/cjs/tools/ToolAssistance.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAssistance.js +8 -0
- package/lib/cjs/tools/ToolAssistance.js.map +1 -1
- package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
- package/lib/cjs/tools/ViewTool.js +3 -2
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/workers/ImdlParser/Worker.d.ts +20 -0
- package/lib/cjs/workers/ImdlParser/Worker.d.ts.map +1 -0
- package/lib/cjs/workers/ImdlParser/Worker.js +32 -0
- package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -0
- package/lib/cjs/workers/ImdlParser/webpack.config.js +40 -0
- package/lib/cjs/workers/RegisterWorker.d.ts +9 -0
- package/lib/cjs/workers/RegisterWorker.d.ts.map +1 -0
- package/lib/cjs/workers/RegisterWorker.js +36 -0
- package/lib/cjs/workers/RegisterWorker.js.map +1 -0
- package/lib/esm/AccuDraw.d.ts +3 -4
- package/lib/esm/AccuDraw.d.ts.map +1 -1
- package/lib/esm/AccuDraw.js +6 -7
- package/lib/esm/AccuDraw.js.map +1 -1
- package/lib/esm/AccuSnap.d.ts +17 -2
- package/lib/esm/AccuSnap.d.ts.map +1 -1
- package/lib/esm/AccuSnap.js +35 -8
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/BackgroundMapGeometry.d.ts +3 -2
- package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/esm/BackgroundMapGeometry.js +47 -7
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BriefcaseConnection.d.ts +3 -3
- package/lib/esm/BriefcaseConnection.js +3 -3
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/ChangeFlags.d.ts +25 -12
- package/lib/esm/ChangeFlags.d.ts.map +1 -1
- package/lib/esm/ChangeFlags.js +24 -11
- package/lib/esm/ChangeFlags.js.map +1 -1
- package/lib/esm/CheckpointConnection.js +1 -1
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/DisplayStyleState.d.ts.map +1 -1
- package/lib/esm/DisplayStyleState.js +2 -1
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/DrawingViewState.d.ts +2 -2
- package/lib/esm/DrawingViewState.d.ts.map +1 -1
- package/lib/esm/DrawingViewState.js +3 -3
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/ElementLocateManager.d.ts +0 -1
- package/lib/esm/ElementLocateManager.d.ts.map +1 -1
- package/lib/esm/ElementLocateManager.js +12 -20
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.js +1 -1
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/FrustumAnimator.js.map +1 -1
- package/lib/esm/GeoServices.d.ts +37 -7
- package/lib/esm/GeoServices.d.ts.map +1 -1
- package/lib/esm/GeoServices.js +75 -25
- package/lib/esm/GeoServices.js.map +1 -1
- package/lib/esm/HitDetail.d.ts +100 -29
- package/lib/esm/HitDetail.d.ts.map +1 -1
- package/lib/esm/HitDetail.js +90 -37
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.d.ts +19 -14
- package/lib/esm/IModelApp.d.ts.map +1 -1
- package/lib/esm/IModelApp.js +23 -20
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.d.ts +64 -19
- package/lib/esm/IModelConnection.d.ts.map +1 -1
- package/lib/esm/IModelConnection.js +132 -21
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IpcApp.d.ts +1 -1
- package/lib/esm/IpcApp.js +1 -1
- package/lib/esm/IpcApp.js.map +1 -1
- package/lib/esm/Marker.d.ts +1 -1
- package/lib/esm/Marker.d.ts.map +1 -1
- package/lib/esm/Marker.js +3 -3
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/NativeApp.js +1 -1
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NoRenderApp.d.ts +1 -1
- package/lib/esm/NoRenderApp.d.ts.map +1 -1
- package/lib/esm/NoRenderApp.js +1 -1
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/RealityDataSource.js +1 -1
- package/lib/esm/RealityDataSource.js.map +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/esm/SheetViewState.d.ts +9 -7
- package/lib/esm/SheetViewState.d.ts.map +1 -1
- package/lib/esm/SheetViewState.js +22 -7
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts +20 -5
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +13 -5
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/Sprites.js +2 -2
- package/lib/esm/Sprites.js.map +1 -1
- package/lib/esm/TentativePoint.d.ts.map +1 -1
- package/lib/esm/TentativePoint.js +10 -1
- package/lib/esm/TentativePoint.js.map +1 -1
- package/lib/esm/ViewContext.d.ts +19 -0
- package/lib/esm/ViewContext.d.ts.map +1 -1
- package/lib/esm/ViewContext.js +9 -0
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator3d.d.ts +3 -6
- package/lib/esm/ViewCreator3d.d.ts.map +1 -1
- package/lib/esm/ViewCreator3d.js +14 -35
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewGlobalLocation.d.ts.map +1 -1
- package/lib/esm/ViewGlobalLocation.js +4 -3
- package/lib/esm/ViewGlobalLocation.js.map +1 -1
- package/lib/esm/ViewManager.d.ts +4 -2
- package/lib/esm/ViewManager.d.ts.map +1 -1
- package/lib/esm/ViewManager.js +4 -2
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/ViewPose.d.ts +11 -11
- package/lib/esm/ViewPose.d.ts.map +1 -1
- package/lib/esm/ViewPose.js +17 -11
- package/lib/esm/ViewPose.js.map +1 -1
- package/lib/esm/ViewState.d.ts +44 -26
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +52 -25
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewingSpace.js +1 -1
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.d.ts +59 -21
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +68 -25
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/ViewportSync.d.ts +2 -2
- package/lib/esm/ViewportSync.d.ts.map +1 -1
- package/lib/esm/ViewportSync.js +2 -2
- package/lib/esm/ViewportSync.js.map +1 -1
- package/lib/esm/common/FrontendLoggerCategory.d.ts.map +1 -0
- package/lib/esm/common/FrontendLoggerCategory.js.map +1 -0
- package/lib/esm/common/ImageUtil.d.ts.map +1 -0
- package/lib/esm/{ImageUtil.js → common/ImageUtil.js} +2 -0
- package/lib/esm/common/ImageUtil.js.map +1 -0
- package/lib/esm/common/ViewRect.d.ts.map +1 -0
- package/lib/esm/common/ViewRect.js.map +1 -0
- package/lib/esm/common/WorkerProxy.d.ts +73 -0
- package/lib/esm/common/WorkerProxy.d.ts.map +1 -0
- package/lib/esm/common/WorkerProxy.js +50 -0
- package/lib/esm/common/WorkerProxy.js.map +1 -0
- package/lib/{cjs → esm/common}/gltf/GltfModel.d.ts +1 -1
- package/lib/esm/common/gltf/GltfModel.d.ts.map +1 -0
- package/lib/esm/common/gltf/GltfModel.js.map +1 -0
- package/lib/esm/common/gltf/GltfParser.d.ts.map +1 -0
- package/lib/esm/common/gltf/GltfParser.js.map +1 -0
- package/lib/esm/common/gltf/GltfSchema.d.ts.map +1 -0
- package/lib/esm/common/gltf/GltfSchema.js.map +1 -0
- package/lib/esm/common/imdl/CompactEdges.d.ts +27 -0
- package/lib/esm/common/imdl/CompactEdges.d.ts.map +1 -0
- package/lib/esm/common/imdl/CompactEdges.js +92 -0
- package/lib/esm/common/imdl/CompactEdges.js.map +1 -0
- package/lib/esm/{imdl → common/imdl}/ImdlModel.d.ts +5 -0
- package/lib/esm/common/imdl/ImdlModel.d.ts.map +1 -0
- package/lib/esm/common/imdl/ImdlModel.js +67 -0
- package/lib/esm/common/imdl/ImdlModel.js.map +1 -0
- package/lib/{cjs → esm/common}/imdl/ImdlSchema.d.ts +68 -36
- package/lib/esm/common/imdl/ImdlSchema.d.ts.map +1 -0
- package/lib/esm/common/imdl/ImdlSchema.js +20 -0
- package/lib/esm/common/imdl/ImdlSchema.js.map +1 -0
- package/lib/esm/{imdl/ImdlParser.d.ts → common/imdl/ParseImdlDocument.d.ts} +13 -8
- package/lib/esm/common/imdl/ParseImdlDocument.d.ts.map +1 -0
- package/lib/esm/{imdl/ImdlParser.js → common/imdl/ParseImdlDocument.js} +40 -25
- package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -0
- package/lib/esm/common/render/AnimationNodeId.d.ts +11 -0
- package/lib/esm/common/render/AnimationNodeId.d.ts.map +1 -0
- package/lib/esm/common/render/AnimationNodeId.js +16 -0
- package/lib/esm/common/render/AnimationNodeId.js.map +1 -0
- package/lib/{cjs/render/RenderMaterial.d.ts → esm/common/render/MaterialParams.d.ts} +7 -20
- package/lib/esm/common/render/MaterialParams.d.ts.map +1 -0
- package/lib/esm/{render/RenderMaterial.js → common/render/MaterialParams.js} +1 -1
- package/lib/esm/common/render/MaterialParams.js.map +1 -0
- package/lib/esm/common/render/TextureParams.d.ts +30 -0
- package/lib/esm/common/render/TextureParams.d.ts.map +1 -0
- package/lib/esm/{render/RenderTexture.js → common/render/TextureParams.js} +1 -1
- package/lib/esm/common/render/TextureParams.js.map +1 -0
- package/lib/{cjs → esm/common}/render/primitives/AuxChannelTable.d.ts +8 -8
- package/lib/esm/common/render/primitives/AuxChannelTable.d.ts.map +1 -0
- package/lib/esm/{render → common/render}/primitives/AuxChannelTable.js +9 -9
- package/lib/esm/common/render/primitives/AuxChannelTable.js.map +1 -0
- package/lib/esm/common/render/primitives/DisplayParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/DisplayParams.js.map +1 -0
- package/lib/esm/common/render/primitives/EdgeParams.d.ts +94 -0
- package/lib/esm/common/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/EdgeParams.js +42 -0
- package/lib/esm/common/render/primitives/EdgeParams.js.map +1 -0
- package/lib/esm/common/render/primitives/MeshParams.d.ts +20 -0
- package/lib/esm/common/render/primitives/MeshParams.d.ts.map +1 -0
- package/lib/esm/{imdl/ImdlSchema.js → common/render/primitives/MeshParams.js} +2 -2
- package/lib/esm/common/render/primitives/MeshParams.js.map +1 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.d.ts +29 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.js +15 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.js.map +1 -0
- package/lib/esm/common/render/primitives/PointStringParams.d.ts +14 -0
- package/lib/esm/common/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/PointStringParams.js +9 -0
- package/lib/esm/common/render/primitives/PointStringParams.js.map +1 -0
- package/lib/esm/common/render/primitives/PolylineParams.d.ts +29 -0
- package/lib/esm/common/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/PolylineParams.js +9 -0
- package/lib/esm/common/render/primitives/PolylineParams.js.map +1 -0
- package/lib/{cjs → esm/common}/render/primitives/SurfaceParams.d.ts +1 -1
- package/lib/esm/common/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/esm/common/render/primitives/VertexIndices.d.ts +26 -0
- package/lib/esm/common/render/primitives/VertexIndices.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/VertexIndices.js +60 -0
- package/lib/esm/common/render/primitives/VertexIndices.js.map +1 -0
- package/lib/esm/common/render/primitives/VertexTable.d.ts +45 -0
- package/lib/esm/common/render/primitives/VertexTable.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/VertexTable.js +34 -0
- package/lib/esm/common/render/primitives/VertexTable.js.map +1 -0
- package/lib/{cjs → esm/common}/render/primitives/VertexTableSplitter.d.ts +20 -3
- package/lib/esm/common/render/primitives/VertexTableSplitter.d.ts.map +1 -0
- package/lib/esm/{render → common/render}/primitives/VertexTableSplitter.js +31 -21
- package/lib/esm/common/render/primitives/VertexTableSplitter.js.map +1 -0
- package/lib/esm/core-frontend.d.ts +45 -11
- package/lib/esm/core-frontend.d.ts.map +1 -1
- package/lib/esm/core-frontend.js +45 -11
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/extension/ExtensionAdmin.js +1 -1
- package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
- package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/render/CanvasDecoration.d.ts +6 -2
- package/lib/esm/render/CanvasDecoration.d.ts.map +1 -1
- package/lib/esm/render/CanvasDecoration.js.map +1 -1
- package/lib/esm/render/CreateRenderMaterialArgs.d.ts +24 -0
- package/lib/esm/render/CreateRenderMaterialArgs.d.ts.map +1 -0
- package/lib/esm/render/CreateRenderMaterialArgs.js +9 -0
- package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -0
- package/lib/{cjs/render/RenderTexture.d.ts → esm/render/CreateTextureArgs.d.ts} +4 -28
- package/lib/esm/render/CreateTextureArgs.d.ts.map +1 -0
- package/lib/esm/render/CreateTextureArgs.js +9 -0
- package/lib/esm/render/CreateTextureArgs.js.map +1 -0
- package/lib/esm/render/GraphicBranch.d.ts +5 -7
- package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.js +0 -8
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/InstancedGraphicParams.d.ts +3 -4
- package/lib/esm/render/InstancedGraphicParams.d.ts.map +1 -1
- package/lib/esm/render/InstancedGraphicParams.js.map +1 -1
- package/lib/esm/render/MockRender.d.ts +4 -4
- package/lib/esm/render/MockRender.d.ts.map +1 -1
- package/lib/esm/render/MockRender.js +1 -1
- package/lib/esm/render/MockRender.js.map +1 -1
- package/lib/esm/render/ParticleCollectionBuilder.d.ts.map +1 -1
- package/lib/esm/render/ParticleCollectionBuilder.js +5 -5
- package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/esm/render/Pixel.d.ts +57 -0
- package/lib/esm/render/Pixel.d.ts.map +1 -1
- package/lib/esm/render/Pixel.js +41 -0
- package/lib/esm/render/Pixel.js.map +1 -1
- package/lib/esm/render/RealityMeshParams.js +2 -2
- package/lib/esm/render/RealityMeshParams.js.map +1 -1
- package/lib/esm/render/RenderSystem.d.ts +24 -10
- package/lib/esm/render/RenderSystem.d.ts.map +1 -1
- package/lib/esm/render/RenderSystem.js +8 -9
- package/lib/esm/render/RenderSystem.js.map +1 -1
- package/lib/esm/render/RenderTarget.d.ts +1 -1
- package/lib/esm/render/RenderTarget.d.ts.map +1 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/esm/render/VisibleFeature.d.ts +1 -1
- package/lib/esm/render/VisibleFeature.d.ts.map +1 -1
- package/lib/esm/render/VisibleFeature.js.map +1 -1
- package/lib/esm/render/primitives/EdgeParams.d.ts +2 -89
- package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -1
- package/lib/esm/render/primitives/EdgeParams.js +38 -74
- package/lib/esm/render/primitives/EdgeParams.js.map +1 -1
- package/lib/esm/render/primitives/PointCloudPrimitive.d.ts +1 -0
- package/lib/esm/render/primitives/PointCloudPrimitive.d.ts.map +1 -1
- package/lib/esm/render/primitives/PointCloudPrimitive.js.map +1 -1
- package/lib/esm/render/primitives/PointStringParams.d.ts +3 -11
- package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -1
- package/lib/esm/render/primitives/PointStringParams.js +25 -28
- package/lib/esm/render/primitives/PointStringParams.js.map +1 -1
- package/lib/esm/render/primitives/Polyface.d.ts +1 -1
- package/lib/esm/render/primitives/Polyface.d.ts.map +1 -1
- package/lib/esm/render/primitives/Polyface.js.map +1 -1
- package/lib/esm/render/primitives/PolylineParams.d.ts +8 -37
- package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -1
- package/lib/esm/render/primitives/PolylineParams.js +34 -43
- package/lib/esm/render/primitives/PolylineParams.js.map +1 -1
- package/lib/esm/render/primitives/Strokes.d.ts +1 -1
- package/lib/esm/render/primitives/Strokes.d.ts.map +1 -1
- package/lib/esm/render/primitives/Strokes.js.map +1 -1
- package/lib/esm/render/primitives/VertexTableBuilder.d.ts +31 -0
- package/lib/esm/render/primitives/VertexTableBuilder.d.ts.map +1 -0
- package/lib/esm/render/primitives/{VertexTable.js → VertexTableBuilder.js} +62 -170
- package/lib/esm/render/primitives/VertexTableBuilder.js.map +1 -0
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.js +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts +2 -1
- package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilder.js +5 -2
- package/lib/esm/render/primitives/mesh/MeshBuilder.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts +6 -5
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.js +8 -5
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +58 -31
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js +26 -30
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/esm/render/webgl/BatchState.js +1 -1
- package/lib/esm/render/webgl/BatchState.js.map +1 -1
- package/lib/esm/render/webgl/BranchState.d.ts +3 -0
- package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchState.js +2 -0
- package/lib/esm/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/ColorInfo.d.ts +1 -1
- package/lib/esm/render/webgl/ColorInfo.d.ts.map +1 -1
- package/lib/esm/render/webgl/ColorInfo.js.map +1 -1
- package/lib/esm/render/webgl/EdgeGeometry.d.ts +2 -2
- package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/render/webgl/Graphic.d.ts +7 -1
- package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/esm/render/webgl/Graphic.js +7 -2
- package/lib/esm/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/Material.d.ts +1 -1
- package/lib/esm/render/webgl/Material.d.ts.map +1 -1
- package/lib/esm/render/webgl/Material.js.map +1 -1
- package/lib/esm/render/webgl/Mesh.d.ts +2 -2
- package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/Mesh.js +1 -1
- package/lib/esm/render/webgl/Mesh.js.map +1 -1
- package/lib/esm/render/webgl/MeshData.d.ts +2 -2
- package/lib/esm/render/webgl/MeshData.d.ts.map +1 -1
- package/lib/esm/render/webgl/MeshData.js.map +1 -1
- package/lib/esm/render/webgl/MeshGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointString.d.ts +1 -1
- package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointString.js.map +1 -1
- package/lib/esm/render/webgl/Polyline.d.ts +1 -1
- package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/esm/render/webgl/Polyline.js.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.js +1 -1
- package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts +2 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.js +5 -2
- package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.js +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/esm/render/webgl/System.d.ts +7 -6
- package/lib/esm/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/render/webgl/System.js +2 -2
- package/lib/esm/render/webgl/System.js.map +1 -1
- package/lib/esm/render/webgl/Target.d.ts +1 -1
- package/lib/esm/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/render/webgl/Target.js +13 -11
- package/lib/esm/render/webgl/Target.js.map +1 -1
- package/lib/esm/render/webgl/Texture.d.ts +1 -1
- package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
- package/lib/esm/render/webgl/Texture.js +1 -1
- package/lib/esm/render/webgl/Texture.js.map +1 -1
- package/lib/esm/render/webgl/UniformHandle.js +1 -1
- package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
- package/lib/esm/render/webgl/VertexLUT.d.ts +2 -2
- package/lib/esm/render/webgl/VertexLUT.d.ts.map +1 -1
- package/lib/esm/render/webgl/VertexLUT.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.js +32 -19
- package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/tile/B3dmReader.d.ts +1 -1
- package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
- package/lib/esm/tile/B3dmReader.js +1 -1
- package/lib/esm/tile/B3dmReader.js.map +1 -1
- package/lib/esm/tile/DynamicIModelTile.js +1 -1
- package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/tile/FetchCloudStorage.d.ts +15 -0
- package/lib/esm/tile/FetchCloudStorage.d.ts.map +1 -0
- package/lib/esm/tile/FetchCloudStorage.js +31 -0
- package/lib/esm/tile/FetchCloudStorage.js.map +1 -0
- package/lib/esm/tile/GltfReader.d.ts +13 -4
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +81 -29
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/IModelTile.d.ts.map +1 -1
- package/lib/esm/tile/IModelTile.js +5 -10
- package/lib/esm/tile/IModelTile.js.map +1 -1
- package/lib/esm/tile/IModelTileTree.d.ts +4 -1
- package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/IModelTileTree.js +16 -1
- package/lib/esm/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/tile/ImdlDecoder.d.ts +52 -0
- package/lib/esm/tile/ImdlDecoder.d.ts.map +1 -0
- package/lib/esm/tile/ImdlDecoder.js +31 -0
- package/lib/esm/tile/ImdlDecoder.js.map +1 -0
- package/lib/{cjs/imdl → esm/tile}/ImdlGraphicsCreator.d.ts +1 -1
- package/lib/esm/tile/ImdlGraphicsCreator.d.ts.map +1 -0
- package/lib/esm/{imdl → tile}/ImdlGraphicsCreator.js +5 -5
- package/lib/esm/tile/ImdlGraphicsCreator.js.map +1 -0
- package/lib/esm/tile/ImdlParser.d.ts +26 -0
- package/lib/esm/tile/ImdlParser.d.ts.map +1 -0
- package/lib/esm/tile/ImdlParser.js +68 -0
- package/lib/esm/tile/ImdlParser.js.map +1 -0
- package/lib/esm/tile/ImdlReader.d.ts +6 -1
- package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
- package/lib/esm/tile/ImdlReader.js +13 -9
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/OPCFormatInterpreter.js +1 -1
- package/lib/esm/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/esm/tile/PntsReader.js +1 -1
- package/lib/esm/tile/PntsReader.js.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.js +2 -1
- package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTile.d.ts +8 -3
- package/lib/esm/tile/RealityTile.d.ts.map +1 -1
- package/lib/esm/tile/RealityTile.js +4 -1
- package/lib/esm/tile/RealityTile.js.map +1 -1
- package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +10 -5
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.js +1 -1
- package/lib/esm/tile/RealityTileTree.js.map +1 -1
- package/lib/esm/tile/ThreeDTileFormatInterpreter.js +1 -1
- package/lib/esm/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/esm/tile/TileAdmin.d.ts +14 -11
- package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
- package/lib/esm/tile/TileAdmin.js +10 -30
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileContent.d.ts +6 -0
- package/lib/esm/tile/TileContent.d.ts.map +1 -1
- package/lib/esm/tile/TileContent.js.map +1 -1
- package/lib/esm/tile/TileStorage.js.map +1 -1
- package/lib/esm/tile/internal.d.ts +9 -0
- package/lib/esm/tile/internal.d.ts.map +1 -1
- package/lib/esm/tile/internal.js +9 -0
- package/lib/esm/tile/internal.js.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts +8 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.js +21 -0
- package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts +6 -4
- package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/EllipsoidTerrainProvider.js +6 -4
- package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts +2 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +55 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +96 -24
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts +11 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts.map +1 -0
- package/lib/esm/{imdl/ImdlModel.js → tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js} +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts +15 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js +55 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts +47 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.js +122 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts +27 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js +131 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.d.ts +6 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.js +18 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.js.map +1 -0
- package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -1
- package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +28 -12
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapFeatureInfo.d.ts +67 -7
- package/lib/esm/tile/map/MapFeatureInfo.d.ts.map +1 -1
- package/lib/esm/tile/map/MapFeatureInfo.js +14 -1
- package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.js +3 -0
- package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +4 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js +3 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.d.ts +5 -3
- package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js +3 -0
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTile.js +9 -1
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.js +1 -15
- package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts +12 -3
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +34 -21
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +2 -3
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js +3 -4
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.d.ts +4 -4
- package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js +4 -4
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/QuadId.js.map +1 -1
- package/lib/esm/tools/ElementSetTool.js +1 -1
- package/lib/esm/tools/ElementSetTool.js.map +1 -1
- package/lib/esm/tools/SelectTool.js +1 -1
- package/lib/esm/tools/SelectTool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.d.ts +8 -6
- package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/esm/tools/ToolAdmin.js +11 -8
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ToolAssistance.d.ts +18 -0
- package/lib/esm/tools/ToolAssistance.d.ts.map +1 -1
- package/lib/esm/tools/ToolAssistance.js +8 -0
- package/lib/esm/tools/ToolAssistance.js.map +1 -1
- package/lib/esm/tools/ViewTool.d.ts.map +1 -1
- package/lib/esm/tools/ViewTool.js +3 -2
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/esm/workers/ImdlParser/Worker.d.ts +20 -0
- package/lib/esm/workers/ImdlParser/Worker.d.ts.map +1 -0
- package/lib/esm/workers/ImdlParser/Worker.js +30 -0
- package/lib/esm/workers/ImdlParser/Worker.js.map +1 -0
- package/lib/esm/workers/ImdlParser/webpack.config.js +40 -0
- package/lib/esm/workers/RegisterWorker.d.ts +9 -0
- package/lib/esm/workers/RegisterWorker.d.ts.map +1 -0
- package/lib/esm/workers/RegisterWorker.js +32 -0
- package/lib/esm/workers/RegisterWorker.js.map +1 -0
- package/lib/public/scripts/parse-imdl-worker.js +1 -0
- package/lib/workers/webpack/parse-imdl-worker.js +1 -0
- package/package.json +32 -69
- package/lib/cjs/FrontendLoggerCategory.d.ts.map +0 -1
- package/lib/cjs/FrontendLoggerCategory.js.map +0 -1
- package/lib/cjs/ImageUtil.d.ts.map +0 -1
- package/lib/cjs/ImageUtil.js.map +0 -1
- package/lib/cjs/ViewRect.d.ts.map +0 -1
- package/lib/cjs/ViewRect.js.map +0 -1
- package/lib/cjs/WebWorkerManager.d.ts +0 -49
- package/lib/cjs/WebWorkerManager.d.ts.map +0 -1
- package/lib/cjs/WebWorkerManager.js +0 -155
- package/lib/cjs/WebWorkerManager.js.map +0 -1
- package/lib/cjs/gltf/GltfModel.d.ts.map +0 -1
- package/lib/cjs/gltf/GltfModel.js.map +0 -1
- package/lib/cjs/gltf/GltfParser.d.ts.map +0 -1
- package/lib/cjs/gltf/GltfParser.js.map +0 -1
- package/lib/cjs/gltf/GltfSchema.d.ts.map +0 -1
- package/lib/cjs/gltf/GltfSchema.js.map +0 -1
- package/lib/cjs/imdl/ImdlGraphicsCreator.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlGraphicsCreator.js.map +0 -1
- package/lib/cjs/imdl/ImdlModel.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlModel.js.map +0 -1
- package/lib/cjs/imdl/ImdlParser.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlParser.js.map +0 -1
- package/lib/cjs/imdl/ImdlSchema.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlSchema.js.map +0 -1
- package/lib/cjs/render/RenderMaterial.d.ts.map +0 -1
- package/lib/cjs/render/RenderMaterial.js.map +0 -1
- package/lib/cjs/render/RenderTexture.d.ts.map +0 -1
- package/lib/cjs/render/RenderTexture.js.map +0 -1
- package/lib/cjs/render/primitives/AuxChannelTable.d.ts.map +0 -1
- package/lib/cjs/render/primitives/AuxChannelTable.js.map +0 -1
- package/lib/cjs/render/primitives/DisplayParams.d.ts.map +0 -1
- package/lib/cjs/render/primitives/DisplayParams.js.map +0 -1
- package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +0 -1
- package/lib/cjs/render/primitives/SurfaceParams.js.map +0 -1
- package/lib/cjs/render/primitives/VertexTable.d.ts +0 -152
- package/lib/cjs/render/primitives/VertexTable.d.ts.map +0 -1
- package/lib/cjs/render/primitives/VertexTable.js.map +0 -1
- package/lib/cjs/render/primitives/VertexTableSplitter.d.ts.map +0 -1
- package/lib/cjs/render/primitives/VertexTableSplitter.js.map +0 -1
- package/lib/cjs/render-primitives.d.ts +0 -21
- package/lib/cjs/render-primitives.d.ts.map +0 -1
- package/lib/cjs/render-primitives.js +0 -41
- package/lib/cjs/render-primitives.js.map +0 -1
- package/lib/esm/FrontendLoggerCategory.d.ts.map +0 -1
- package/lib/esm/FrontendLoggerCategory.js.map +0 -1
- package/lib/esm/ImageUtil.d.ts.map +0 -1
- package/lib/esm/ImageUtil.js.map +0 -1
- package/lib/esm/ViewRect.d.ts.map +0 -1
- package/lib/esm/ViewRect.js.map +0 -1
- package/lib/esm/WebWorkerManager.d.ts +0 -49
- package/lib/esm/WebWorkerManager.d.ts.map +0 -1
- package/lib/esm/WebWorkerManager.js +0 -150
- package/lib/esm/WebWorkerManager.js.map +0 -1
- package/lib/esm/gltf/GltfModel.d.ts.map +0 -1
- package/lib/esm/gltf/GltfModel.js.map +0 -1
- package/lib/esm/gltf/GltfParser.d.ts.map +0 -1
- package/lib/esm/gltf/GltfParser.js.map +0 -1
- package/lib/esm/gltf/GltfSchema.d.ts.map +0 -1
- package/lib/esm/gltf/GltfSchema.js.map +0 -1
- package/lib/esm/imdl/ImdlGraphicsCreator.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlGraphicsCreator.js.map +0 -1
- package/lib/esm/imdl/ImdlModel.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlModel.js.map +0 -1
- package/lib/esm/imdl/ImdlParser.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlParser.js.map +0 -1
- package/lib/esm/imdl/ImdlSchema.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlSchema.js.map +0 -1
- package/lib/esm/render/RenderMaterial.d.ts.map +0 -1
- package/lib/esm/render/RenderMaterial.js.map +0 -1
- package/lib/esm/render/RenderTexture.d.ts.map +0 -1
- package/lib/esm/render/RenderTexture.js.map +0 -1
- package/lib/esm/render/primitives/AuxChannelTable.d.ts.map +0 -1
- package/lib/esm/render/primitives/AuxChannelTable.js.map +0 -1
- package/lib/esm/render/primitives/DisplayParams.d.ts.map +0 -1
- package/lib/esm/render/primitives/DisplayParams.js.map +0 -1
- package/lib/esm/render/primitives/SurfaceParams.d.ts.map +0 -1
- package/lib/esm/render/primitives/SurfaceParams.js.map +0 -1
- package/lib/esm/render/primitives/VertexTable.d.ts +0 -152
- package/lib/esm/render/primitives/VertexTable.d.ts.map +0 -1
- package/lib/esm/render/primitives/VertexTable.js.map +0 -1
- package/lib/esm/render/primitives/VertexTableSplitter.d.ts.map +0 -1
- package/lib/esm/render/primitives/VertexTableSplitter.js.map +0 -1
- package/lib/esm/render-primitives.d.ts +0 -21
- package/lib/esm/render-primitives.d.ts.map +0 -1
- package/lib/esm/render-primitives.js +0 -25
- package/lib/esm/render-primitives.js.map +0 -1
- /package/lib/cjs/{FrontendLoggerCategory.d.ts → common/FrontendLoggerCategory.d.ts} +0 -0
- /package/lib/cjs/{FrontendLoggerCategory.js → common/FrontendLoggerCategory.js} +0 -0
- /package/lib/cjs/{ImageUtil.d.ts → common/ImageUtil.d.ts} +0 -0
- /package/lib/cjs/{ViewRect.d.ts → common/ViewRect.d.ts} +0 -0
- /package/lib/cjs/{ViewRect.js → common/ViewRect.js} +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfModel.js +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfParser.d.ts +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfParser.js +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfSchema.d.ts +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfSchema.js +0 -0
- /package/lib/cjs/{render → common/render}/primitives/DisplayParams.d.ts +0 -0
- /package/lib/cjs/{render → common/render}/primitives/DisplayParams.js +0 -0
- /package/lib/cjs/{render → common/render}/primitives/SurfaceParams.js +0 -0
- /package/lib/esm/{FrontendLoggerCategory.d.ts → common/FrontendLoggerCategory.d.ts} +0 -0
- /package/lib/esm/{FrontendLoggerCategory.js → common/FrontendLoggerCategory.js} +0 -0
- /package/lib/esm/{ImageUtil.d.ts → common/ImageUtil.d.ts} +0 -0
- /package/lib/esm/{ViewRect.d.ts → common/ViewRect.d.ts} +0 -0
- /package/lib/esm/{ViewRect.js → common/ViewRect.js} +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfModel.js +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfParser.d.ts +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfParser.js +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfSchema.d.ts +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfSchema.js +0 -0
- /package/lib/esm/{render → common/render}/primitives/DisplayParams.d.ts +0 -0
- /package/lib/esm/{render → common/render}/primitives/DisplayParams.js +0 -0
- /package/lib/esm/{render → common/render}/primitives/SurfaceParams.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamicIModelTile.js","sourceRoot":"","sources":["../../../src/tile/DynamicIModelTile.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tiles\r\n */\r\n\r\nimport {\r\n assert, BeTimePoint, ByteStream, compareStrings, DbOpcode, Id64, Id64Array, Id64String, partitionArray, SortedArray,\r\n} from \"@itwin/core-bentley\";\r\nimport { Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport {\r\n BatchType, ElementGeometryChange, ElementGraphicsRequestProps, FeatureAppearance, FeatureAppearanceProvider, FeatureAppearanceSource, GeometryClass, TileFormat,\r\n} from \"@itwin/core-common\";\r\nimport { RenderSystem } from \"../render/RenderSystem\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport {\r\n ImdlReader, IModelTileTree, RootIModelTile, Tile, TileContent, TileDrawArgs, TileParams, TileRequest, TileRequestChannel, TileTree,\r\n} from \"./internal\";\r\n\r\n/** The root tile for the branch of an [[IModelTileTree]] containing graphics for elements that have been modified during the current\r\n * Not intended for direct consumption - exported for use by [[IModelTileTree]].\r\n * [[GraphicalEditingScope]].\r\n * @internal\r\n */\r\nexport abstract class DynamicIModelTile extends Tile {\r\n protected constructor(params: TileParams, tree: TileTree) {\r\n super(params, tree);\r\n }\r\n\r\n public static create(root: RootIModelTile, elements: Iterable<ElementGeometryChange>): DynamicIModelTile {\r\n return new RootTile(root, elements);\r\n }\r\n\r\n /** Updates the tiles when elements are modified during the editing scope. */\r\n public abstract handleGeometryChanges(changes: Iterable<ElementGeometryChange>): void;\r\n\r\n /** Overrides symbology of the *static* [[IModelTile]]s to hide elements that have been deleted or modified. */\r\n public abstract get appearanceProvider(): FeatureAppearanceProvider;\r\n\r\n /** Exposed strictly for tests. */\r\n public abstract get hiddenElements(): Id64Array;\r\n\r\n /** Select tiles for display, requesting content for tiles as necessary. */\r\n public abstract selectTiles(selected: Tile[], args: TileDrawArgs): void;\r\n\r\n /** Discard tiles that have not been used since the specified time point. */\r\n public abstract pruneChildren(olderThan: BeTimePoint): void;\r\n}\r\n\r\n/** The child tiles of the root tile, representing inserted or modified elements and sorted by element Id. */\r\nclass ElementTiles extends SortedArray<ElementTile> {\r\n public constructor() {\r\n super((lhs, rhs) => compareStrings(lhs.contentId, rhs.contentId));\r\n }\r\n\r\n public get array(): ElementTile[] {\r\n return this._array;\r\n }\r\n}\r\n\r\n/** The root tile. Each of its children represent a newly-inserted or modified element. */\r\nclass RootTile extends DynamicIModelTile implements FeatureAppearanceProvider {\r\n private readonly _hiddenElements: Id64.Uint32Set;\r\n public readonly transformToTree: Transform;\r\n private readonly _elements: ElementTiles;\r\n\r\n private get _imodelRoot() { return this.parent as RootIModelTile; }\r\n\r\n private get _elementChildren(): ElementTile[] {\r\n assert(undefined !== this.children);\r\n assert(this.children === this._elements.array);\r\n return this._elements.array;\r\n }\r\n\r\n public constructor(parent: RootIModelTile, elements: Iterable<ElementGeometryChange>) {\r\n const params: TileParams = {\r\n parent,\r\n isLeaf: false,\r\n contentId: \"dynamic\",\r\n range: Range3d.createNull(),\r\n maximumSize: parent.tileScreenSize,\r\n };\r\n\r\n super(params, parent.tree);\r\n\r\n this._hiddenElements = new Id64.Uint32Set();\r\n\r\n const inverseTransform = parent.tree.iModelTransform.inverse();\r\n assert(undefined !== inverseTransform);\r\n this.transformToTree = inverseTransform;\r\n\r\n this._elements = new ElementTiles();\r\n this.loadChildren(); // initially empty.\r\n assert(undefined !== this.children);\r\n\r\n this.setIsReady();\r\n this.handleGeometryChanges(elements);\r\n }\r\n\r\n public get hiddenElements(): Id64Array {\r\n return this._hiddenElements.toId64Array();\r\n }\r\n\r\n public get appearanceProvider(): FeatureAppearanceProvider {\r\n return this;\r\n }\r\n\r\n public getFeatureAppearance(source: FeatureAppearanceSource, elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined {\r\n if (this._hiddenElements.has(elemLo, elemHi))\r\n return undefined;\r\n\r\n return source.getAppearance(elemLo, elemHi, subcatLo, subcatHi, geomClass, modelLo, modelHi, type, animationNodeId);\r\n }\r\n\r\n public handleGeometryChanges(changes: Iterable<ElementGeometryChange>): void {\r\n assert(undefined !== this.children);\r\n\r\n for (const change of changes) {\r\n if (change.type !== DbOpcode.Insert)\r\n this._hiddenElements.addId(change.id);\r\n\r\n let tile = this._elements.findEquivalent((t: ElementTile) => compareStrings(t.contentId, change.id));\r\n if (change.type === DbOpcode.Delete) {\r\n if (tile) {\r\n tile.dispose();\r\n this._elements.remove(tile);\r\n }\r\n } else {\r\n const range = change.range.isNull ? change.range.clone() : this.transformToTree.multiplyRange(change.range);\r\n if (tile)\r\n tile.update(range);\r\n else\r\n this._elements.insert(tile = new ElementTile(this, change.id, range));\r\n }\r\n }\r\n\r\n // Recompute range.\r\n this.range.setNull();\r\n for (const element of this._elements)\r\n this.range.extendRange(element.range);\r\n\r\n this._imodelRoot.updateDynamicRange(this);\r\n }\r\n\r\n protected _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (errpr: Error) => void): void {\r\n // This is invoked from constructor. We will add a child per element later - for now just mark the children as having been loaded.\r\n resolve(this._elements.array);\r\n }\r\n\r\n public get channel(): TileRequestChannel {\r\n throw new Error(\"Root dynamic tile has no content\");\r\n }\r\n\r\n public async requestContent(): Promise<TileRequest.Response> {\r\n assert(false, \"Root dynamic tile has no content\");\r\n return undefined;\r\n }\r\n\r\n public async readContent(_data: TileRequest.ResponseData, _system: RenderSystem, _isCanceled: () => boolean): Promise<TileContent> {\r\n throw new Error(\"Root dynamic tile has no content\");\r\n }\r\n\r\n public selectTiles(selected: Tile[], args: TileDrawArgs): void {\r\n for (const child of this._elementChildren)\r\n child.selectTiles(selected, args);\r\n }\r\n\r\n public pruneChildren(olderThan: BeTimePoint): void {\r\n // Never discard ElementTiles - do discard not-recently-used graphics.\r\n for (const child of this._elementChildren)\r\n child.pruneChildren(olderThan);\r\n }\r\n}\r\n\r\n/** Represents a single element that has been inserted or had its geometric properties modified during the current [[GraphicalEditingScope]].\r\n * It has no graphics of its own; it has any number of child tiles, each of which have graphics of a different level of detail.\r\n * Its contentId is the element's Id.\r\n */\r\nclass ElementTile extends Tile {\r\n public constructor(parent: RootTile, elementId: Id64String, range: Range3d) {\r\n super({\r\n parent,\r\n isLeaf: false,\r\n contentId: elementId,\r\n range,\r\n maximumSize: parent.maximumSize,\r\n }, parent.tree);\r\n\r\n this.loadChildren();\r\n this.setIsReady();\r\n }\r\n\r\n protected _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (error: Error) => void): void {\r\n // Invoked from constructor. We'll add child tiles later as needed.\r\n resolve([]);\r\n }\r\n\r\n public get channel(): TileRequestChannel {\r\n throw new Error(\"ElementTile has no content\");\r\n }\r\n\r\n public async requestContent(_isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n assert(false, \"ElementTile has no content\");\r\n return undefined;\r\n }\r\n\r\n public async readContent(_data: TileRequest.ResponseData, _system: RenderSystem, _isCanceled: () => boolean): Promise<TileContent> {\r\n throw new Error(\"ElementTile has no content\");\r\n }\r\n\r\n public pruneChildren(olderThan: BeTimePoint): void {\r\n const children = this.children as GraphicsTile[];\r\n assert(undefined !== children);\r\n\r\n const partitionIndex = partitionArray(children, (child) => !child.usageMarker.isExpired(olderThan));\r\n\r\n // Remove expired children.\r\n if (partitionIndex < children.length) {\r\n const expired = children.splice(partitionIndex);\r\n for (const child of expired)\r\n child.dispose();\r\n }\r\n\r\n // Restore ordering.\r\n children.sort((x, y) => y.toleranceLog10 - x.toleranceLog10);\r\n }\r\n\r\n public selectTiles(selected: Tile[], args: TileDrawArgs): void {\r\n assert(undefined !== this.children);\r\n if (this.isRegionCulled(args))\r\n return;\r\n\r\n args.markUsed(this);\r\n\r\n // ###TODO: Test content range culled.\r\n\r\n // Compute the ideal chord tolerance.\r\n assert(this.maximumSize > 0);\r\n const pixelSize = args.getPixelSizeInMetersAtClosestPoint(this);\r\n assert(pixelSize > 0);\r\n\r\n // Round down to the nearest power of ten.\r\n const toleranceLog10 = Math.floor(Math.log10(pixelSize));\r\n\r\n // Find (or create) a child tile of desired tolerance. Also find a child tile that can be substituted for the desired tile if that tile's content is not yet loaded.\r\n // NB: Children are sorted in descending order by log10(tolerance)\r\n const children = this.children as GraphicsTile[];\r\n let closestMatch: GraphicsTile | undefined;\r\n let exactMatch: GraphicsTile | undefined;\r\n for (let i = 0; i < children.length; i++) {\r\n const child = children[i];\r\n const tol = child.toleranceLog10;\r\n if (tol > toleranceLog10) {\r\n assert(undefined === exactMatch);\r\n if (child.hasGraphics)\r\n closestMatch = child;\r\n } else if (tol === toleranceLog10) {\r\n exactMatch = child;\r\n } else if (tol < toleranceLog10) {\r\n if (!exactMatch)\r\n children.splice(i++, 0, exactMatch = new GraphicsTile(this, toleranceLog10));\r\n\r\n if (child.hasGraphics && (!closestMatch || closestMatch.toleranceLog10 > toleranceLog10))\r\n closestMatch = child;\r\n }\r\n }\r\n\r\n if (!exactMatch) {\r\n assert(children.length === 0 || children[children.length - 1].toleranceLog10 > toleranceLog10);\r\n children.push(exactMatch = new GraphicsTile(this, toleranceLog10));\r\n }\r\n\r\n if (!exactMatch.isReady) {\r\n args.insertMissing(exactMatch);\r\n if (closestMatch) {\r\n selected.push(closestMatch);\r\n args.markUsed(closestMatch);\r\n }\r\n } else if (exactMatch.hasGraphics) {\r\n selected.push(exactMatch);\r\n args.markUsed(exactMatch);\r\n }\r\n }\r\n\r\n public update(range: Range3d): void {\r\n range.clone(this.range);\r\n\r\n // Discard out-dated graphics.\r\n assert(undefined !== this.children);\r\n for (const child of this.children)\r\n child.dispose();\r\n\r\n this.children.length = 0;\r\n }\r\n}\r\n\r\nfunction* makeIdSequence() {\r\n let current = 0;\r\n while (true) {\r\n if (current >= Number.MAX_SAFE_INTEGER)\r\n current = 0;\r\n\r\n yield ++current;\r\n }\r\n}\r\n\r\nconst requestIdSequence = makeIdSequence();\r\n\r\n/** Supplies graphics of a specific LOD for a single element. */\r\nclass GraphicsTile extends Tile {\r\n public readonly toleranceLog10: number;\r\n public readonly tolerance: number;\r\n\r\n public constructor(parent: ElementTile, toleranceLog10: number) {\r\n assert(Math.round(toleranceLog10) === toleranceLog10);\r\n super({\r\n parent,\r\n isLeaf: true,\r\n contentId: `${parent.contentId}_${toleranceLog10}`,\r\n range: parent.range,\r\n maximumSize: parent.maximumSize,\r\n }, parent.tree);\r\n\r\n this.toleranceLog10 = toleranceLog10;\r\n this.tolerance = 10 ** toleranceLog10;\r\n }\r\n\r\n public override computeLoadPriority(): number {\r\n // We want the element's graphics to be updated as soon as possible\r\n return 0;\r\n }\r\n\r\n protected _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (error: Error) => void): void {\r\n resolve(undefined);\r\n }\r\n\r\n public get channel(): TileRequestChannel {\r\n return IModelApp.tileAdmin.channels.elementGraphicsRpc;\r\n }\r\n\r\n public async requestContent(_isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n // ###TODO tree flags (enforce display priority)\r\n // ###TODO classifiers, animation\r\n\r\n assert(undefined !== this.parent);\r\n\r\n const requestId = requestIdSequence.next();\r\n assert(!requestId.done);\r\n\r\n assert(this.tree instanceof IModelTileTree);\r\n const idProvider = this.tree.contentIdProvider;\r\n\r\n const props: ElementGraphicsRequestProps = {\r\n id: requestId.value.toString(16),\r\n elementId: this.parent.contentId,\r\n toleranceLog10: this.toleranceLog10,\r\n formatVersion: idProvider.majorFormatVersion,\r\n location: this.tree.iModelTransform.toJSON(),\r\n contentFlags: idProvider.contentFlags,\r\n omitEdges: !this.tree.edgeOptions,\r\n edgeType: this.tree.edgeOptions && this.tree.edgeOptions.indexed ? 2 : 1,\r\n smoothPolyfaceEdges: this.tree.edgeOptions && this.tree.edgeOptions.smooth,\r\n clipToProjectExtents: true,\r\n sectionCut: this.tree.stringifiedSectionClip,\r\n };\r\n\r\n return IModelApp.tileAdmin.requestElementGraphics(this.tree.iModel, props);\r\n }\r\n\r\n public async readContent(data: TileRequest.ResponseData, system: RenderSystem, isCanceled: () => boolean): Promise<TileContent> {\r\n if (undefined === isCanceled)\r\n isCanceled = () => !this.isLoading;\r\n\r\n assert(data instanceof Uint8Array);\r\n const stream = ByteStream.fromUint8Array(data);\r\n\r\n const position = stream.curPos;\r\n const format = stream.readUint32();\r\n stream.curPos = position;\r\n\r\n // ###TODO: IModelGraphics format wraps IModel format.\r\n assert(TileFormat.IModel === format);\r\n\r\n const tree = this.tree;\r\n assert(tree instanceof IModelTileTree);\r\n const { iModel, modelId, is3d, containsTransformNodes } = tree;\r\n const reader = ImdlReader.create({\r\n stream, iModel, modelId, is3d, system, isCanceled, containsTransformNodes,\r\n type: tree.batchType,\r\n loadEdges: false !== tree.edgeOptions,\r\n options: { tileId: this.contentId },\r\n });\r\n\r\n let content: TileContent = { isLeaf: true };\r\n if (reader) {\r\n try {\r\n content = await reader.read();\r\n } catch {\r\n //\r\n }\r\n }\r\n\r\n return content;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"DynamicIModelTile.js","sourceRoot":"","sources":["../../../src/tile/DynamicIModelTile.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tiles\r\n */\r\n\r\nimport {\r\n assert, BeTimePoint, ByteStream, compareStrings, DbOpcode, Id64, Id64Array, Id64String, partitionArray, SortedArray,\r\n} from \"@itwin/core-bentley\";\r\nimport { Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport {\r\n BatchType, ElementGeometryChange, ElementGraphicsRequestProps, FeatureAppearance, FeatureAppearanceProvider, FeatureAppearanceSource, GeometryClass, TileFormat,\r\n} from \"@itwin/core-common\";\r\nimport { RenderSystem } from \"../render/RenderSystem\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport {\r\n ImdlReader, IModelTileTree, RootIModelTile, Tile, TileContent, TileDrawArgs, TileParams, TileRequest, TileRequestChannel, TileTree,\r\n} from \"./internal\";\r\n\r\n/** The root tile for the branch of an [[IModelTileTree]] containing graphics for elements that have been modified during the current\r\n * Not intended for direct consumption - exported for use by [[IModelTileTree]].\r\n * [[GraphicalEditingScope]].\r\n * @internal\r\n */\r\nexport abstract class DynamicIModelTile extends Tile {\r\n protected constructor(params: TileParams, tree: TileTree) {\r\n super(params, tree);\r\n }\r\n\r\n public static create(root: RootIModelTile, elements: Iterable<ElementGeometryChange>): DynamicIModelTile {\r\n return new RootTile(root, elements);\r\n }\r\n\r\n /** Updates the tiles when elements are modified during the editing scope. */\r\n public abstract handleGeometryChanges(changes: Iterable<ElementGeometryChange>): void;\r\n\r\n /** Overrides symbology of the *static* [[IModelTile]]s to hide elements that have been deleted or modified. */\r\n public abstract get appearanceProvider(): FeatureAppearanceProvider;\r\n\r\n /** Exposed strictly for tests. */\r\n public abstract get hiddenElements(): Id64Array;\r\n\r\n /** Select tiles for display, requesting content for tiles as necessary. */\r\n public abstract selectTiles(selected: Tile[], args: TileDrawArgs): void;\r\n\r\n /** Discard tiles that have not been used since the specified time point. */\r\n public abstract pruneChildren(olderThan: BeTimePoint): void;\r\n}\r\n\r\n/** The child tiles of the root tile, representing inserted or modified elements and sorted by element Id. */\r\nclass ElementTiles extends SortedArray<ElementTile> {\r\n public constructor() {\r\n super((lhs, rhs) => compareStrings(lhs.contentId, rhs.contentId));\r\n }\r\n\r\n public get array(): ElementTile[] {\r\n return this._array;\r\n }\r\n}\r\n\r\n/** The root tile. Each of its children represent a newly-inserted or modified element. */\r\nclass RootTile extends DynamicIModelTile implements FeatureAppearanceProvider {\r\n private readonly _hiddenElements: Id64.Uint32Set;\r\n public readonly transformToTree: Transform;\r\n private readonly _elements: ElementTiles;\r\n\r\n private get _imodelRoot() { return this.parent as RootIModelTile; }\r\n\r\n private get _elementChildren(): ElementTile[] {\r\n assert(undefined !== this.children);\r\n assert(this.children === this._elements.array);\r\n return this._elements.array;\r\n }\r\n\r\n public constructor(parent: RootIModelTile, elements: Iterable<ElementGeometryChange>) {\r\n const params: TileParams = {\r\n parent,\r\n isLeaf: false,\r\n contentId: \"dynamic\",\r\n range: Range3d.createNull(),\r\n maximumSize: parent.tileScreenSize,\r\n };\r\n\r\n super(params, parent.tree);\r\n\r\n this._hiddenElements = new Id64.Uint32Set();\r\n\r\n const inverseTransform = parent.tree.iModelTransform.inverse();\r\n assert(undefined !== inverseTransform);\r\n this.transformToTree = inverseTransform;\r\n\r\n this._elements = new ElementTiles();\r\n this.loadChildren(); // initially empty.\r\n assert(undefined !== this.children);\r\n\r\n this.setIsReady();\r\n this.handleGeometryChanges(elements);\r\n }\r\n\r\n public get hiddenElements(): Id64Array {\r\n return this._hiddenElements.toId64Array();\r\n }\r\n\r\n public get appearanceProvider(): FeatureAppearanceProvider {\r\n return this;\r\n }\r\n\r\n public getFeatureAppearance(source: FeatureAppearanceSource, elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined {\r\n if (this._hiddenElements.has(elemLo, elemHi))\r\n return undefined;\r\n\r\n return source.getAppearance(elemLo, elemHi, subcatLo, subcatHi, geomClass, modelLo, modelHi, type, animationNodeId);\r\n }\r\n\r\n public handleGeometryChanges(changes: Iterable<ElementGeometryChange>): void {\r\n assert(undefined !== this.children);\r\n\r\n for (const change of changes) {\r\n if (change.type !== DbOpcode.Insert)\r\n this._hiddenElements.addId(change.id);\r\n\r\n let tile = this._elements.findEquivalent((t: ElementTile) => compareStrings(t.contentId, change.id));\r\n if (change.type === DbOpcode.Delete) {\r\n if (tile) {\r\n tile.dispose();\r\n this._elements.remove(tile);\r\n }\r\n } else {\r\n const range = change.range.isNull ? change.range.clone() : this.transformToTree.multiplyRange(change.range);\r\n if (tile)\r\n tile.update(range);\r\n else\r\n this._elements.insert(tile = new ElementTile(this, change.id, range));\r\n }\r\n }\r\n\r\n // Recompute range.\r\n this.range.setNull();\r\n for (const element of this._elements)\r\n this.range.extendRange(element.range);\r\n\r\n this._imodelRoot.updateDynamicRange(this);\r\n }\r\n\r\n protected _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (errpr: Error) => void): void {\r\n // This is invoked from constructor. We will add a child per element later - for now just mark the children as having been loaded.\r\n resolve(this._elements.array);\r\n }\r\n\r\n public get channel(): TileRequestChannel {\r\n throw new Error(\"Root dynamic tile has no content\");\r\n }\r\n\r\n public async requestContent(): Promise<TileRequest.Response> {\r\n assert(false, \"Root dynamic tile has no content\");\r\n return undefined;\r\n }\r\n\r\n public async readContent(_data: TileRequest.ResponseData, _system: RenderSystem, _isCanceled: () => boolean): Promise<TileContent> {\r\n throw new Error(\"Root dynamic tile has no content\");\r\n }\r\n\r\n public selectTiles(selected: Tile[], args: TileDrawArgs): void {\r\n for (const child of this._elementChildren)\r\n child.selectTiles(selected, args);\r\n }\r\n\r\n public pruneChildren(olderThan: BeTimePoint): void {\r\n // Never discard ElementTiles - do discard not-recently-used graphics.\r\n for (const child of this._elementChildren)\r\n child.pruneChildren(olderThan);\r\n }\r\n}\r\n\r\n/** Represents a single element that has been inserted or had its geometric properties modified during the current [[GraphicalEditingScope]].\r\n * It has no graphics of its own; it has any number of child tiles, each of which have graphics of a different level of detail.\r\n * Its contentId is the element's Id.\r\n */\r\nclass ElementTile extends Tile {\r\n public constructor(parent: RootTile, elementId: Id64String, range: Range3d) {\r\n super({\r\n parent,\r\n isLeaf: false,\r\n contentId: elementId,\r\n range,\r\n maximumSize: parent.maximumSize,\r\n }, parent.tree);\r\n\r\n this.loadChildren();\r\n this.setIsReady();\r\n }\r\n\r\n protected _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (error: Error) => void): void {\r\n // Invoked from constructor. We'll add child tiles later as needed.\r\n resolve([]);\r\n }\r\n\r\n public get channel(): TileRequestChannel {\r\n throw new Error(\"ElementTile has no content\");\r\n }\r\n\r\n public async requestContent(_isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n assert(false, \"ElementTile has no content\");\r\n return undefined;\r\n }\r\n\r\n public async readContent(_data: TileRequest.ResponseData, _system: RenderSystem, _isCanceled: () => boolean): Promise<TileContent> {\r\n throw new Error(\"ElementTile has no content\");\r\n }\r\n\r\n public pruneChildren(olderThan: BeTimePoint): void {\r\n const children = this.children as GraphicsTile[];\r\n assert(undefined !== children);\r\n\r\n const partitionIndex = partitionArray(children, (child) => !child.usageMarker.isExpired(olderThan));\r\n\r\n // Remove expired children.\r\n if (partitionIndex < children.length) {\r\n const expired = children.splice(partitionIndex);\r\n for (const child of expired)\r\n child.dispose();\r\n }\r\n\r\n // Restore ordering.\r\n children.sort((x, y) => y.toleranceLog10 - x.toleranceLog10);\r\n }\r\n\r\n public selectTiles(selected: Tile[], args: TileDrawArgs): void {\r\n assert(undefined !== this.children);\r\n if (this.isRegionCulled(args))\r\n return;\r\n\r\n args.markUsed(this);\r\n\r\n // ###TODO: Test content range culled.\r\n\r\n // Compute the ideal chord tolerance.\r\n assert(this.maximumSize > 0);\r\n const pixelSize = args.getPixelSizeInMetersAtClosestPoint(this);\r\n assert(pixelSize > 0);\r\n\r\n // Round down to the nearest power of ten.\r\n const toleranceLog10 = Math.floor(Math.log10(pixelSize));\r\n\r\n // Find (or create) a child tile of desired tolerance. Also find a child tile that can be substituted for the desired tile if that tile's content is not yet loaded.\r\n // NB: Children are sorted in descending order by log10(tolerance)\r\n const children = this.children as GraphicsTile[];\r\n let closestMatch: GraphicsTile | undefined;\r\n let exactMatch: GraphicsTile | undefined;\r\n for (let i = 0; i < children.length; i++) {\r\n const child = children[i];\r\n const tol = child.toleranceLog10;\r\n if (tol > toleranceLog10) {\r\n assert(undefined === exactMatch);\r\n if (child.hasGraphics)\r\n closestMatch = child;\r\n } else if (tol === toleranceLog10) {\r\n exactMatch = child;\r\n } else if (tol < toleranceLog10) {\r\n if (!exactMatch)\r\n children.splice(i++, 0, exactMatch = new GraphicsTile(this, toleranceLog10));\r\n\r\n if (child.hasGraphics && (!closestMatch || closestMatch.toleranceLog10 > toleranceLog10))\r\n closestMatch = child;\r\n }\r\n }\r\n\r\n if (!exactMatch) {\r\n assert(children.length === 0 || children[children.length - 1].toleranceLog10 > toleranceLog10);\r\n children.push(exactMatch = new GraphicsTile(this, toleranceLog10));\r\n }\r\n\r\n if (!exactMatch.isReady) {\r\n args.insertMissing(exactMatch);\r\n if (closestMatch) {\r\n selected.push(closestMatch);\r\n args.markUsed(closestMatch);\r\n }\r\n } else if (exactMatch.hasGraphics) {\r\n selected.push(exactMatch);\r\n args.markUsed(exactMatch);\r\n }\r\n }\r\n\r\n public update(range: Range3d): void {\r\n range.clone(this.range);\r\n\r\n // Discard out-dated graphics.\r\n assert(undefined !== this.children);\r\n for (const child of this.children)\r\n child.dispose();\r\n\r\n this.children.length = 0;\r\n }\r\n}\r\n\r\nfunction* makeIdSequence() {\r\n let current = 0;\r\n while (true) {\r\n if (current >= Number.MAX_SAFE_INTEGER)\r\n current = 0;\r\n\r\n yield ++current;\r\n }\r\n}\r\n\r\nconst requestIdSequence = makeIdSequence();\r\n\r\n/** Supplies graphics of a specific LOD for a single element. */\r\nclass GraphicsTile extends Tile {\r\n public readonly toleranceLog10: number;\r\n public readonly tolerance: number;\r\n\r\n public constructor(parent: ElementTile, toleranceLog10: number) {\r\n assert(Math.round(toleranceLog10) === toleranceLog10);\r\n super({\r\n parent,\r\n isLeaf: true,\r\n contentId: `${parent.contentId}_${toleranceLog10}`,\r\n range: parent.range,\r\n maximumSize: parent.maximumSize,\r\n }, parent.tree);\r\n\r\n this.toleranceLog10 = toleranceLog10;\r\n this.tolerance = 10 ** toleranceLog10;\r\n }\r\n\r\n public override computeLoadPriority(): number {\r\n // We want the element's graphics to be updated as soon as possible\r\n return 0;\r\n }\r\n\r\n protected _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (error: Error) => void): void {\r\n resolve(undefined);\r\n }\r\n\r\n public get channel(): TileRequestChannel {\r\n return IModelApp.tileAdmin.channels.elementGraphicsRpc;\r\n }\r\n\r\n public async requestContent(_isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n // ###TODO tree flags (enforce display priority)\r\n // ###TODO classifiers, animation\r\n\r\n assert(undefined !== this.parent);\r\n\r\n const requestId = requestIdSequence.next();\r\n assert(!requestId.done);\r\n\r\n assert(this.tree instanceof IModelTileTree);\r\n const idProvider = this.tree.contentIdProvider;\r\n\r\n const props: ElementGraphicsRequestProps = {\r\n id: requestId.value.toString(16),\r\n elementId: this.parent.contentId,\r\n toleranceLog10: this.toleranceLog10,\r\n formatVersion: idProvider.majorFormatVersion,\r\n location: this.tree.iModelTransform.toJSON(),\r\n contentFlags: idProvider.contentFlags,\r\n omitEdges: !this.tree.edgeOptions,\r\n edgeType: this.tree.edgeOptions && \"non-indexed\" !== this.tree.edgeOptions.type ? 2 : 1,\r\n smoothPolyfaceEdges: this.tree.edgeOptions && this.tree.edgeOptions.smooth,\r\n clipToProjectExtents: true,\r\n sectionCut: this.tree.stringifiedSectionClip,\r\n };\r\n\r\n return IModelApp.tileAdmin.requestElementGraphics(this.tree.iModel, props);\r\n }\r\n\r\n public async readContent(data: TileRequest.ResponseData, system: RenderSystem, isCanceled: () => boolean): Promise<TileContent> {\r\n if (undefined === isCanceled)\r\n isCanceled = () => !this.isLoading;\r\n\r\n assert(data instanceof Uint8Array);\r\n const stream = ByteStream.fromUint8Array(data);\r\n\r\n const position = stream.curPos;\r\n const format = stream.readUint32();\r\n stream.curPos = position;\r\n\r\n // ###TODO: IModelGraphics format wraps IModel format.\r\n assert(TileFormat.IModel === format);\r\n\r\n const tree = this.tree;\r\n assert(tree instanceof IModelTileTree);\r\n const { iModel, modelId, is3d, containsTransformNodes } = tree;\r\n const reader = ImdlReader.create({\r\n stream, iModel, modelId, is3d, system, isCanceled, containsTransformNodes,\r\n type: tree.batchType,\r\n loadEdges: false !== tree.edgeOptions,\r\n options: { tileId: this.contentId },\r\n });\r\n\r\n let content: TileContent = { isLeaf: true };\r\n if (reader) {\r\n try {\r\n content = await reader.read();\r\n } catch {\r\n //\r\n }\r\n }\r\n\r\n return content;\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { FrontendConfigDownloadInput, FrontendConfigUploadInput, FrontendStorage, FrontendUploadInMultiplePartsInput, FrontendUrlDownloadInput, FrontendUrlUploadInput } from "@itwin/object-storage-core/lib/frontend";
|
|
2
|
+
/** @internal */
|
|
3
|
+
export declare class FetchCloudStorage implements FrontendStorage {
|
|
4
|
+
download(input: (FrontendUrlDownloadInput | FrontendConfigDownloadInput) & {
|
|
5
|
+
transferType: "buffer";
|
|
6
|
+
}): Promise<ArrayBuffer>;
|
|
7
|
+
download(input: (FrontendUrlDownloadInput | FrontendConfigDownloadInput) & {
|
|
8
|
+
transferType: "stream";
|
|
9
|
+
}): Promise<ReadableStream<any>>;
|
|
10
|
+
private buildObjectKey;
|
|
11
|
+
private isUrlInput;
|
|
12
|
+
upload(_input: FrontendUrlUploadInput | FrontendConfigUploadInput): Promise<void>;
|
|
13
|
+
uploadInMultipleParts(_input: FrontendUploadInMultiplePartsInput): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=FetchCloudStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FetchCloudStorage.d.ts","sourceRoot":"","sources":["../../../src/tile/FetchCloudStorage.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,eAAe,EAAE,kCAAkC,EAAE,wBAAwB,EAAE,sBAAsB,EAAmB,MAAM,yCAAyC,CAAC;AAE9O,gBAAgB;AAChB,qBAAa,iBAAkB,YAAW,eAAe;IAChD,QAAQ,CAAC,KAAK,EAAE,CAAC,wBAAwB,GAAG,2BAA2B,CAAC,GAAG;QAAE,YAAY,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAC5H,QAAQ,CAAC,KAAK,EAAE,CAAC,wBAAwB,GAAG,2BAA2B,CAAC,GAAG;QAAE,YAAY,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAe3I,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,UAAU;IAGL,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAGjF,qBAAqB,CAAC,MAAM,EAAE,kCAAkC,GAAG,OAAO,CAAC,IAAI,CAAC;CAG9F"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FetchCloudStorage = void 0;
|
|
4
|
+
/** @internal */
|
|
5
|
+
class FetchCloudStorage {
|
|
6
|
+
async download(input) {
|
|
7
|
+
if (input.transferType === "stream")
|
|
8
|
+
throw new Error("Method not implemented.");
|
|
9
|
+
if (this.isUrlInput(input)) {
|
|
10
|
+
return (await fetch(input.url)).arrayBuffer();
|
|
11
|
+
}
|
|
12
|
+
if (!("authentication" in input.transferConfig))
|
|
13
|
+
throw new Error("authentication missing in transferConfig");
|
|
14
|
+
const url = `${input.transferConfig.baseUrl}/${this.buildObjectKey(input.reference)}?${input.transferConfig.authentication}`;
|
|
15
|
+
const resp = await fetch(url);
|
|
16
|
+
if (!resp.ok)
|
|
17
|
+
throw new Error(resp.statusText);
|
|
18
|
+
return resp.arrayBuffer();
|
|
19
|
+
}
|
|
20
|
+
buildObjectKey(ref) {
|
|
21
|
+
const relative = ref.relativeDirectory ? `/${ref.relativeDirectory}` : "";
|
|
22
|
+
return `${ref.baseDirectory}${relative}/${ref.objectName}`;
|
|
23
|
+
}
|
|
24
|
+
isUrlInput(input) {
|
|
25
|
+
return "url" in input;
|
|
26
|
+
}
|
|
27
|
+
async upload(_input) {
|
|
28
|
+
throw new Error("Method not implemented.");
|
|
29
|
+
}
|
|
30
|
+
async uploadInMultipleParts(_input) {
|
|
31
|
+
throw new Error("Method not implemented.");
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.FetchCloudStorage = FetchCloudStorage;
|
|
35
|
+
//# sourceMappingURL=FetchCloudStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FetchCloudStorage.js","sourceRoot":"","sources":["../../../src/tile/FetchCloudStorage.ts"],"names":[],"mappings":";;;AAMA,gBAAgB;AAChB,MAAa,iBAAiB;IAGrB,KAAK,CAAC,QAAQ,CAAC,KAA6D;QACjF,IAAI,KAAK,CAAC,YAAY,KAAK,QAAQ;YACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YAC1B,OAAO,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC/C;QACD,IAAI,CAAC,CAAC,gBAAgB,IAAI,KAAK,CAAC,cAAc,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;QAC7H,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IACO,cAAc,CAAC,GAAoB;QACzC,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,OAAO,GAAG,GAAG,CAAC,aAAa,GAAG,QAAQ,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;IAC7D,CAAC;IACO,UAAU,CAAC,KAA6D;QAC9E,OAAO,KAAK,IAAK,KAAkC,CAAC;IACtD,CAAC;IACM,KAAK,CAAC,MAAM,CAAC,MAA0D;QAC5E,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACM,KAAK,CAAC,qBAAqB,CAAC,MAA0C;QAC3E,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;CACF;AA9BD,8CA8BC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\nimport type { FrontendConfigDownloadInput, FrontendConfigUploadInput, FrontendStorage, FrontendUploadInMultiplePartsInput, FrontendUrlDownloadInput, FrontendUrlUploadInput, ObjectReference } from \"@itwin/object-storage-core/lib/frontend\";\r\n\r\n/** @internal */\r\nexport class FetchCloudStorage implements FrontendStorage {\r\n public download(input: (FrontendUrlDownloadInput | FrontendConfigDownloadInput) & { transferType: \"buffer\" }): Promise<ArrayBuffer>;\r\n public download(input: (FrontendUrlDownloadInput | FrontendConfigDownloadInput) & { transferType: \"stream\" }): Promise<ReadableStream<any>>;\r\n public async download(input: FrontendUrlDownloadInput | FrontendConfigDownloadInput): Promise<ArrayBuffer | ReadableStream<any>> {\r\n if (input.transferType === \"stream\")\r\n throw new Error(\"Method not implemented.\");\r\n if (this.isUrlInput(input)) {\r\n return (await fetch(input.url)).arrayBuffer();\r\n }\r\n if (!(\"authentication\" in input.transferConfig))\r\n throw new Error(\"authentication missing in transferConfig\");\r\n const url = `${input.transferConfig.baseUrl}/${this.buildObjectKey(input.reference)}?${input.transferConfig.authentication}`;\r\n const resp = await fetch(url);\r\n if (!resp.ok)\r\n throw new Error(resp.statusText);\r\n return resp.arrayBuffer();\r\n }\r\n private buildObjectKey(ref: ObjectReference): string {\r\n const relative = ref.relativeDirectory ? `/${ref.relativeDirectory}` : \"\";\r\n return `${ref.baseDirectory}${relative}/${ref.objectName}`;\r\n }\r\n private isUrlInput(input: FrontendUrlDownloadInput | FrontendConfigDownloadInput): input is FrontendUrlDownloadInput {\r\n return \"url\" in (input as FrontendUrlDownloadInput);\r\n }\r\n public async upload(_input: FrontendUrlUploadInput | FrontendConfigUploadInput): Promise<void> {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n public async uploadInMultipleParts(_input: FrontendUploadInMultiplePartsInput): Promise<void> {\r\n throw new Error(\"Method not implemented.\");\r\n }\r\n}\r\n"]}
|
|
@@ -6,13 +6,14 @@ import { AxisAlignedBox3d, BatchType, ElementAlignedBox3d, Feature, FeatureTable
|
|
|
6
6
|
import { IModelConnection } from "../IModelConnection";
|
|
7
7
|
import { PickableGraphicOptions } from "../render/GraphicBuilder";
|
|
8
8
|
import { InstancedGraphicParams } from "../render/InstancedGraphicParams";
|
|
9
|
-
import { DisplayParams } from "../render/primitives/DisplayParams";
|
|
10
9
|
import { Mesh } from "../render/primitives/mesh/MeshPrimitives";
|
|
11
10
|
import { RenderGraphic } from "../render/RenderGraphic";
|
|
12
11
|
import { RenderSystem } from "../render/RenderSystem";
|
|
13
12
|
import { RealityTileGeometry, TileContent } from "./internal";
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
13
|
+
import { DisplayParams } from "../common/render/primitives/DisplayParams";
|
|
14
|
+
import { PointCloudArgs } from "../render/primitives/PointCloudPrimitive";
|
|
15
|
+
import { TextureImageSource } from "../common/render/TextureParams";
|
|
16
|
+
import { GltfAccessor, GltfBuffer, GltfBufferViewProps, GltfDataType, GltfDictionary, GltfDocument, GltfId, GltfImage, GltfMaterial, GltfMesh, GltfMeshPrimitive, GltfNode, GltfSampler, GltfScene, GltfTexture, GltfWrapMode } from "../common/gltf/GltfSchema";
|
|
16
17
|
/** @internal */
|
|
17
18
|
export type GltfDataBuffer = Uint8Array | Uint16Array | Uint32Array | Float32Array;
|
|
18
19
|
/**
|
|
@@ -88,8 +89,14 @@ export declare class GltfMeshData {
|
|
|
88
89
|
uvs?: Uint16Array;
|
|
89
90
|
uvRange?: Range2d;
|
|
90
91
|
indices?: Uint8Array | Uint16Array | Uint32Array;
|
|
92
|
+
readonly type: "mesh";
|
|
91
93
|
constructor(props: Mesh);
|
|
92
94
|
}
|
|
95
|
+
interface GltfPointCloud extends PointCloudArgs {
|
|
96
|
+
readonly type: "pointcloud";
|
|
97
|
+
pointRange: Range3d;
|
|
98
|
+
}
|
|
99
|
+
type GltfPrimitiveData = GltfMeshData | GltfPointCloud;
|
|
93
100
|
/** A function that returns true if deserialization of the data supplied by the reader should abort.
|
|
94
101
|
* @internal
|
|
95
102
|
*/
|
|
@@ -141,6 +148,7 @@ export declare abstract class GltfReader {
|
|
|
141
148
|
protected _computedContentRange?: ElementAlignedBox3d;
|
|
142
149
|
private readonly _resolvedTextures;
|
|
143
150
|
private readonly _dracoMeshes;
|
|
151
|
+
private _containsPointCloud;
|
|
144
152
|
protected get _nodes(): GltfDictionary<GltfNode>;
|
|
145
153
|
protected get _meshes(): GltfDictionary<GltfMesh>;
|
|
146
154
|
protected get _accessors(): GltfDictionary<GltfAccessor>;
|
|
@@ -200,7 +208,8 @@ export declare abstract class GltfReader {
|
|
|
200
208
|
private isMaterialTransparent;
|
|
201
209
|
protected createDisplayParams(material: GltfMaterial, hasBakedLighting: boolean): DisplayParams | undefined;
|
|
202
210
|
private readMeshPrimitives;
|
|
203
|
-
protected readMeshPrimitive(primitive: GltfMeshPrimitive, featureTable?: FeatureTable, pseudoRtcBias?: Vector3d):
|
|
211
|
+
protected readMeshPrimitive(primitive: GltfMeshPrimitive, featureTable?: FeatureTable, pseudoRtcBias?: Vector3d): GltfPrimitiveData | undefined;
|
|
212
|
+
private readPointCloud;
|
|
204
213
|
private readDracoMeshPrimitive;
|
|
205
214
|
private deduplicateVertices;
|
|
206
215
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GltfReader.d.ts","sourceRoot":"","sources":["../../../src/tile/GltfReader.ts"],"names":[],"mappings":"AAIA;;GAEG;AAKH,OAAO,EACsC,OAAO,EAAqB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAC7G,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAAE,SAAS,EAAY,mBAAmB,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"GltfReader.d.ts","sourceRoot":"","sources":["../../../src/tile/GltfReader.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,15 +34,16 @@ exports.GltfGraphicsReader = exports.readGltf = exports.readGltfGraphics = expor
|
|
|
34
34
|
const core_bentley_1 = require("@itwin/core-bentley");
|
|
35
35
|
const core_geometry_1 = require("@itwin/core-geometry");
|
|
36
36
|
const core_common_1 = require("@itwin/core-common");
|
|
37
|
-
const FrontendLoggerCategory_1 = require("../FrontendLoggerCategory");
|
|
38
|
-
const ImageUtil_1 = require("../ImageUtil");
|
|
39
37
|
const IModelApp_1 = require("../IModelApp");
|
|
40
38
|
const GraphicBranch_1 = require("../render/GraphicBranch");
|
|
41
39
|
const RealityMeshParams_1 = require("../render/RealityMeshParams");
|
|
42
|
-
const DisplayParams_1 = require("../render/primitives/DisplayParams");
|
|
43
40
|
const MeshPrimitives_1 = require("../render/primitives/mesh/MeshPrimitives");
|
|
44
41
|
const Primitives_1 = require("../render/primitives/Primitives");
|
|
45
|
-
const
|
|
42
|
+
const DisplayParams_1 = require("../common/render/primitives/DisplayParams");
|
|
43
|
+
const FrontendLoggerCategory_1 = require("../common/FrontendLoggerCategory");
|
|
44
|
+
const ImageUtil_1 = require("../common/ImageUtil");
|
|
45
|
+
const MeshPrimitive_1 = require("../common/render/primitives/MeshPrimitive");
|
|
46
|
+
const GltfSchema_1 = require("../common/gltf/GltfSchema");
|
|
46
47
|
/**
|
|
47
48
|
* A chunk of binary data exposed as a typed array.
|
|
48
49
|
* The count member indicates how many elements exist. This may be less than this.buffer.length due to padding added to the
|
|
@@ -208,20 +209,11 @@ exports.GltfReaderProps = GltfReaderProps;
|
|
|
208
209
|
*/
|
|
209
210
|
class GltfMeshData {
|
|
210
211
|
constructor(props) {
|
|
212
|
+
this.type = "mesh";
|
|
211
213
|
this.primitive = props;
|
|
212
214
|
}
|
|
213
215
|
}
|
|
214
216
|
exports.GltfMeshData = GltfMeshData;
|
|
215
|
-
/* -----------------------------------
|
|
216
|
-
This is part of the webworker option.
|
|
217
|
-
|
|
218
|
-
// input is Uint8Array, the result is an ImageBitMap.
|
|
219
|
-
class ImageDecodeWorkerOperation extends WorkerOperation {
|
|
220
|
-
constructor(imageBytes: ArrayBuffer, imageMimeType: string) {
|
|
221
|
-
super("imageBytesToImageBitmap", [imageBytes, imageMimeType], [imageBytes]);
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
-------------------------------------- */
|
|
225
217
|
const emptyDict = {};
|
|
226
218
|
function colorFromJson(values) {
|
|
227
219
|
return core_common_1.ColorDef.from(values[0] * 255, values[1] * 255, values[2] * 255, (1.0 - values[3]) * 255);
|
|
@@ -384,6 +376,7 @@ class GltfReader {
|
|
|
384
376
|
contentRange,
|
|
385
377
|
range,
|
|
386
378
|
graphic: renderGraphic,
|
|
379
|
+
containsPointCloud: this._containsPointCloud,
|
|
387
380
|
};
|
|
388
381
|
}
|
|
389
382
|
readGltfAndCreateGeometry(transformToRoot, needNormals = false, needParams = false) {
|
|
@@ -397,6 +390,8 @@ class GltfReader {
|
|
|
397
390
|
return { polyfaces };
|
|
398
391
|
}
|
|
399
392
|
graphicFromMeshData(gltfMesh, instances) {
|
|
393
|
+
if ("pointcloud" === gltfMesh.type)
|
|
394
|
+
return this._system.createPointCloud(gltfMesh, this._iModel);
|
|
400
395
|
if (!gltfMesh.points || !gltfMesh.pointRange)
|
|
401
396
|
return gltfMesh.primitive.getGraphics(this._system, instances);
|
|
402
397
|
const realityMeshPrimitive = (this._vertexTableRequired || instances) ? undefined : RealityMeshParams_1.RealityMeshParams.fromGltfMesh(gltfMesh);
|
|
@@ -483,9 +478,11 @@ class GltfReader {
|
|
|
483
478
|
transformStack.push(node);
|
|
484
479
|
const meshes = this.readMeshPrimitives(node);
|
|
485
480
|
for (const mesh of meshes) {
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
481
|
+
if (mesh.type === "mesh") {
|
|
482
|
+
const polyface = this.polyfaceFromGltfMesh(mesh, transformStack.transform, needNormals, needParams);
|
|
483
|
+
if (polyface)
|
|
484
|
+
polyfaces.push(polyface);
|
|
485
|
+
}
|
|
489
486
|
}
|
|
490
487
|
if (node.children) {
|
|
491
488
|
for (const childId of node.children) {
|
|
@@ -559,6 +556,9 @@ class GltfReader {
|
|
|
559
556
|
}
|
|
560
557
|
let componentCount = 1;
|
|
561
558
|
switch (accessor.type) {
|
|
559
|
+
case "VEC4":
|
|
560
|
+
componentCount = 4;
|
|
561
|
+
break;
|
|
562
562
|
case "VEC3":
|
|
563
563
|
componentCount = 3;
|
|
564
564
|
break;
|
|
@@ -585,6 +585,7 @@ class GltfReader {
|
|
|
585
585
|
constructor(args) {
|
|
586
586
|
this._resolvedTextures = new core_bentley_1.Dictionary((lhs, rhs) => compareTextureKeys(lhs, rhs));
|
|
587
587
|
this._dracoMeshes = new Map();
|
|
588
|
+
this._containsPointCloud = false;
|
|
588
589
|
/** The glTF spec says that if GltfSampler.wrapS/T are omitted, they default to Repeat.
|
|
589
590
|
* However, the reality data service serves tiles that lack any wrapS/T property, and we want those clamped to edge, not repeated.
|
|
590
591
|
* (We also don't want to produce mip-maps for them, which is determined indirectly from the wrap mode).
|
|
@@ -686,12 +687,14 @@ class GltfReader {
|
|
|
686
687
|
const isTransparent = this.isMaterialTransparent(material);
|
|
687
688
|
const textureId = this.extractTextureId(material);
|
|
688
689
|
const normalMapId = this.extractNormalMapId(material);
|
|
689
|
-
|
|
690
|
+
let textureMapping = (undefined !== textureId || undefined !== normalMapId) ? this.findTextureMapping(textureId, isTransparent, normalMapId) : undefined;
|
|
690
691
|
const color = colorFromMaterial(material, isTransparent);
|
|
691
692
|
let renderMaterial;
|
|
692
693
|
if (undefined !== textureMapping && undefined !== textureMapping.normalMapParams) {
|
|
693
694
|
const args = { diffuse: { color }, specular: { color: core_common_1.ColorDef.white }, textureMapping };
|
|
694
695
|
renderMaterial = IModelApp_1.IModelApp.renderSystem.createRenderMaterial(args);
|
|
696
|
+
// DisplayParams doesn't want a separate texture mapping if the material already has one.
|
|
697
|
+
textureMapping = undefined;
|
|
695
698
|
}
|
|
696
699
|
return new DisplayParams_1.DisplayParams(DisplayParams_1.DisplayParams.Type.Mesh, color, color, 1, core_common_1.LinePixels.Solid, core_common_1.FillFlags.Always, renderMaterial, undefined, hasBakedLighting, textureMapping);
|
|
697
700
|
}
|
|
@@ -716,6 +719,12 @@ class GltfReader {
|
|
|
716
719
|
return meshes;
|
|
717
720
|
}
|
|
718
721
|
readMeshPrimitive(primitive, featureTable, pseudoRtcBias) {
|
|
722
|
+
const meshMode = core_bentley_1.JsonUtils.asInt(primitive.mode, GltfSchema_1.GltfMeshMode.Triangles);
|
|
723
|
+
if (meshMode === GltfSchema_1.GltfMeshMode.Points /* && !this._vertexTableRequired */) {
|
|
724
|
+
const pointCloud = this.readPointCloud(primitive, undefined !== featureTable);
|
|
725
|
+
if (pointCloud)
|
|
726
|
+
return pointCloud;
|
|
727
|
+
}
|
|
719
728
|
const materialName = core_bentley_1.JsonUtils.asString(primitive.material);
|
|
720
729
|
const material = 0 < materialName.length ? this._materials[materialName] : {};
|
|
721
730
|
if (!material)
|
|
@@ -725,19 +734,17 @@ class GltfReader {
|
|
|
725
734
|
if (!displayParams)
|
|
726
735
|
return undefined;
|
|
727
736
|
let primitiveType = -1;
|
|
728
|
-
const meshMode = core_bentley_1.JsonUtils.asInt(primitive.mode, GltfSchema_1.GltfMeshMode.Triangles);
|
|
729
737
|
switch (meshMode) {
|
|
730
738
|
case GltfSchema_1.GltfMeshMode.Lines:
|
|
731
|
-
primitiveType =
|
|
739
|
+
primitiveType = MeshPrimitive_1.MeshPrimitiveType.Polyline;
|
|
732
740
|
break;
|
|
733
741
|
case GltfSchema_1.GltfMeshMode.Points:
|
|
734
|
-
primitiveType =
|
|
742
|
+
primitiveType = MeshPrimitive_1.MeshPrimitiveType.Point;
|
|
735
743
|
break;
|
|
736
744
|
case GltfSchema_1.GltfMeshMode.Triangles:
|
|
737
|
-
primitiveType =
|
|
745
|
+
primitiveType = MeshPrimitive_1.MeshPrimitiveType.Mesh;
|
|
738
746
|
break;
|
|
739
747
|
default:
|
|
740
|
-
(0, core_bentley_1.assert)(false);
|
|
741
748
|
return undefined;
|
|
742
749
|
}
|
|
743
750
|
const isVolumeClassifier = this._isVolumeClassifier;
|
|
@@ -793,7 +800,7 @@ class GltfReader {
|
|
|
793
800
|
if (!this.readVertices(mesh, primitive, pseudoRtcBias))
|
|
794
801
|
return undefined;
|
|
795
802
|
switch (primitiveType) {
|
|
796
|
-
case
|
|
803
|
+
case MeshPrimitive_1.MeshPrimitiveType.Mesh: {
|
|
797
804
|
if (!this.readMeshIndices(mesh, primitive))
|
|
798
805
|
return undefined;
|
|
799
806
|
if (!displayParams.ignoreLighting && !this.readNormals(mesh, primitive.attributes, "NORMAL"))
|
|
@@ -808,9 +815,9 @@ class GltfReader {
|
|
|
808
815
|
return undefined;
|
|
809
816
|
break;
|
|
810
817
|
}
|
|
811
|
-
case
|
|
812
|
-
case
|
|
813
|
-
if (undefined !== mesh.primitive.polylines && !this.readPolylines(mesh.primitive.polylines, primitive, "indices",
|
|
818
|
+
case MeshPrimitive_1.MeshPrimitiveType.Polyline:
|
|
819
|
+
case MeshPrimitive_1.MeshPrimitiveType.Point: {
|
|
820
|
+
if (undefined !== mesh.primitive.polylines && !this.readPolylines(mesh.primitive.polylines, primitive, "indices", MeshPrimitive_1.MeshPrimitiveType.Point === primitiveType))
|
|
814
821
|
return undefined;
|
|
815
822
|
break;
|
|
816
823
|
}
|
|
@@ -832,6 +839,51 @@ class GltfReader {
|
|
|
832
839
|
}
|
|
833
840
|
return mesh;
|
|
834
841
|
}
|
|
842
|
+
readPointCloud(primitive, hasFeatures) {
|
|
843
|
+
const posView = this.getBufferView(primitive.attributes, "POSITION");
|
|
844
|
+
if (!posView || GltfSchema_1.GltfDataType.Float !== posView.type)
|
|
845
|
+
return undefined;
|
|
846
|
+
const posData = posView.toBufferData(GltfSchema_1.GltfDataType.Float);
|
|
847
|
+
if (!(posData?.buffer instanceof Float32Array))
|
|
848
|
+
return undefined;
|
|
849
|
+
const colorView = this.getBufferView(primitive.attributes, "COLOR_0");
|
|
850
|
+
if (!colorView || GltfSchema_1.GltfDataType.UnsignedByte !== colorView.type)
|
|
851
|
+
return undefined;
|
|
852
|
+
const colorData = colorView.toBufferData(GltfSchema_1.GltfDataType.UnsignedByte);
|
|
853
|
+
if (!(colorData?.buffer instanceof Uint8Array))
|
|
854
|
+
return undefined;
|
|
855
|
+
const strideSkip = posView.stride - 3;
|
|
856
|
+
const pointRange = new core_geometry_1.Range3d();
|
|
857
|
+
for (let i = 0; i < posData.buffer.length; i += strideSkip)
|
|
858
|
+
pointRange.extendXYZ(posData.buffer[i++], posData.buffer[i++], posData.buffer[i++]);
|
|
859
|
+
let colors = colorData.buffer;
|
|
860
|
+
if ("VEC4" === colorView.accessor.type) {
|
|
861
|
+
// ###TODO support transparent point clouds
|
|
862
|
+
colors = new Uint8Array(colorData.count * 3);
|
|
863
|
+
for (let i = 0; i < colorData.count; i++) {
|
|
864
|
+
const srcIdx = colorView.stride * i;
|
|
865
|
+
const dstIdx = 3 * i;
|
|
866
|
+
for (let j = 0; j < 3; j++)
|
|
867
|
+
colors[dstIdx + j] = colorData.buffer[srcIdx + j];
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
const features = new core_common_1.FeatureIndex();
|
|
871
|
+
if (hasFeatures)
|
|
872
|
+
features.type = core_common_1.FeatureIndexType.Uniform;
|
|
873
|
+
this._containsPointCloud = true;
|
|
874
|
+
return {
|
|
875
|
+
type: "pointcloud",
|
|
876
|
+
positions: posData.buffer,
|
|
877
|
+
qparams: core_common_1.QParams3d.fromOriginAndScale(new core_geometry_1.Point3d(0, 0, 0), new core_geometry_1.Point3d(1, 1, 1)),
|
|
878
|
+
pointRange,
|
|
879
|
+
colors,
|
|
880
|
+
colorFormat: "rgb",
|
|
881
|
+
features,
|
|
882
|
+
// ###TODO: If tile does not use additive refinement, compute voxelSize based on point range.
|
|
883
|
+
// Additive refinement is typical of the glTF point clouds we receive from Orbit.
|
|
884
|
+
voxelSize: 0,
|
|
885
|
+
};
|
|
886
|
+
}
|
|
835
887
|
readDracoMeshPrimitive(mesh, ext) {
|
|
836
888
|
const draco = this._dracoMeshes.get(ext);
|
|
837
889
|
if (!draco || "triangle-list" !== draco.topology)
|
|
@@ -874,7 +926,7 @@ class GltfReader {
|
|
|
874
926
|
}
|
|
875
927
|
}
|
|
876
928
|
const uvs = draco.attributes.TEXCOORD_0?.value;
|
|
877
|
-
if (uvs && (uvs.length
|
|
929
|
+
if (uvs && (uvs.length % 2) === 0)
|
|
878
930
|
for (let i = 0; i < uvs.length; i += 2)
|
|
879
931
|
mesh.uvParams.push(new core_geometry_1.Point2d(uvs[i], uvs[i + 1]));
|
|
880
932
|
const batchIds = draco.attributes._BATCHID?.value;
|