@itwin/core-frontend 3.0.0-extension.0 → 3.1.0-dev.11
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 +89 -1
- package/LICENSE.md +1 -1
- package/lib/cjs/AccuSnap.js +3 -3
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
- package/lib/cjs/ApproximateTerrainHeights.js +10 -5
- package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.d.ts +1 -1
- package/lib/cjs/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js +2 -2
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BingLocation.js +2 -2
- package/lib/cjs/BingLocation.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.d.ts.map +1 -1
- package/lib/cjs/BriefcaseConnection.js +6 -5
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/CheckpointConnection.js +1 -1
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/ContextRealityModelState.js +1 -1
- package/lib/cjs/ContextRealityModelState.js.map +1 -1
- package/lib/cjs/DisplayStyleState.d.ts +11 -163
- package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
- package/lib/cjs/DisplayStyleState.js +69 -350
- 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 +6 -6
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/ElementLocateManager.d.ts +5 -0
- package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
- package/lib/cjs/ElementLocateManager.js +12 -2
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/EmphasizeElements.d.ts.map +1 -1
- package/lib/cjs/EmphasizeElements.js +14 -4
- package/lib/cjs/EmphasizeElements.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.d.ts +39 -0
- package/lib/cjs/EnvironmentDecorations.d.ts.map +1 -0
- package/lib/cjs/EnvironmentDecorations.js +200 -0
- package/lib/cjs/EnvironmentDecorations.js.map +1 -0
- package/lib/cjs/FrontendHubAccess.d.ts +11 -7
- package/lib/cjs/FrontendHubAccess.d.ts.map +1 -1
- package/lib/cjs/FrontendHubAccess.js.map +1 -1
- package/lib/cjs/FrontendLoggerCategory.d.ts +2 -8
- package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
- package/lib/cjs/FrontendLoggerCategory.js +2 -8
- package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
- package/lib/cjs/HitDetail.js +7 -7
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.d.ts +31 -24
- package/lib/cjs/IModelApp.d.ts.map +1 -1
- package/lib/cjs/IModelApp.js +35 -36
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.d.ts +4 -6
- package/lib/cjs/IModelConnection.d.ts.map +1 -1
- package/lib/cjs/IModelConnection.js +6 -11
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IModeljs-css.d.ts.map +1 -1
- package/lib/cjs/IModeljs-css.js +8 -6
- package/lib/cjs/IModeljs-css.js.map +1 -1
- package/lib/cjs/ImageUtil.d.ts +3 -3
- package/lib/cjs/ImageUtil.d.ts.map +1 -1
- package/lib/cjs/ImageUtil.js +7 -4
- package/lib/cjs/ImageUtil.js.map +1 -1
- package/lib/cjs/LocalhostIpcApp.d.ts +2 -1
- package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
- package/lib/cjs/LocalhostIpcApp.js +21 -7
- package/lib/cjs/LocalhostIpcApp.js.map +1 -1
- package/lib/cjs/Marker.d.ts +9 -2
- package/lib/cjs/Marker.d.ts.map +1 -1
- package/lib/cjs/Marker.js +33 -5
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/ModelState.js +1 -1
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/NativeApp.d.ts +3 -38
- package/lib/cjs/NativeApp.d.ts.map +1 -1
- package/lib/cjs/NativeApp.js +4 -73
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NoRenderApp.d.ts +0 -1
- package/lib/cjs/NoRenderApp.d.ts.map +1 -1
- package/lib/cjs/NoRenderApp.js +0 -1
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/NotificationManager.d.ts +3 -1
- package/lib/cjs/NotificationManager.d.ts.map +1 -1
- package/lib/cjs/NotificationManager.js +2 -0
- package/lib/cjs/NotificationManager.js.map +1 -1
- package/lib/cjs/RealityDataSource.d.ts +59 -29
- package/lib/cjs/RealityDataSource.d.ts.map +1 -1
- package/lib/cjs/RealityDataSource.js +247 -94
- package/lib/cjs/RealityDataSource.js.map +1 -1
- package/lib/cjs/RenderScheduleState.d.ts +2 -0
- package/lib/cjs/RenderScheduleState.d.ts.map +1 -1
- package/lib/cjs/RenderScheduleState.js +10 -5
- package/lib/cjs/RenderScheduleState.js.map +1 -1
- package/lib/cjs/SheetViewState.d.ts +2 -2
- package/lib/cjs/SheetViewState.d.ts.map +1 -1
- package/lib/cjs/SheetViewState.js +11 -12
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts +10 -2
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +12 -2
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/SubCategoriesCache.js +1 -1
- package/lib/cjs/SubCategoriesCache.js.map +1 -1
- package/lib/cjs/Tiles.d.ts +11 -1
- package/lib/cjs/Tiles.d.ts.map +1 -1
- package/lib/cjs/Tiles.js +7 -0
- package/lib/cjs/Tiles.js.map +1 -1
- package/lib/cjs/TwoWayViewportSync.d.ts +35 -6
- package/lib/cjs/TwoWayViewportSync.d.ts.map +1 -1
- package/lib/cjs/TwoWayViewportSync.js +51 -11
- package/lib/cjs/TwoWayViewportSync.js.map +1 -1
- package/lib/cjs/UserPreferences.d.ts +72 -0
- package/lib/cjs/UserPreferences.d.ts.map +1 -0
- package/lib/cjs/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
- package/lib/cjs/UserPreferences.js.map +1 -0
- package/lib/cjs/ViewContext.d.ts +3 -1
- package/lib/cjs/ViewContext.d.ts.map +1 -1
- package/lib/cjs/ViewContext.js +4 -0
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator2d.js +3 -3
- package/lib/cjs/ViewCreator2d.js.map +1 -1
- package/lib/cjs/ViewCreator3d.d.ts +1 -1
- package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
- package/lib/cjs/ViewCreator3d.js +4 -5
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewManager.d.ts +6 -6
- package/lib/cjs/ViewManager.d.ts.map +1 -1
- package/lib/cjs/ViewManager.js +13 -13
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/ViewState.d.ts +11 -5
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +18 -63
- 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 +63 -14
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +71 -40
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/core-frontend.d.ts +17 -31
- package/lib/cjs/core-frontend.d.ts.map +1 -1
- package/lib/cjs/core-frontend.js +17 -31
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +20 -5
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +26 -3
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +46 -7
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/render/FeatureSymbology.d.ts.map +1 -1
- package/lib/cjs/render/FeatureSymbology.js +3 -3
- package/lib/cjs/render/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/GraphicBranch.d.ts +18 -2
- package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.js +9 -1
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/GraphicBuilder.d.ts +7 -1
- package/lib/cjs/render/GraphicBuilder.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBuilder.js.map +1 -1
- package/lib/cjs/render/MockRender.d.ts +3 -1
- package/lib/cjs/render/MockRender.d.ts.map +1 -1
- package/lib/cjs/render/MockRender.js.map +1 -1
- package/lib/cjs/render/RenderMaterial.d.ts +61 -0
- package/lib/cjs/render/RenderMaterial.d.ts.map +1 -0
- package/lib/cjs/render/RenderMaterial.js +10 -0
- package/lib/cjs/render/RenderMaterial.js.map +1 -0
- package/lib/cjs/render/RenderMemory.d.ts +21 -15
- package/lib/cjs/render/RenderMemory.d.ts.map +1 -1
- package/lib/cjs/render/RenderMemory.js +21 -15
- package/lib/cjs/render/RenderMemory.js.map +1 -1
- package/lib/cjs/render/RenderSystem.d.ts +48 -10
- package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
- package/lib/cjs/render/RenderSystem.js +35 -12
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/RenderTarget.d.ts +10 -2
- package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
- package/lib/cjs/render/RenderTarget.js +2 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/RenderTexture.d.ts +2 -17
- package/lib/cjs/render/RenderTexture.d.ts.map +1 -1
- package/lib/cjs/render/RenderTexture.js +0 -17
- package/lib/cjs/render/RenderTexture.js.map +1 -1
- package/lib/cjs/render/primitives/EdgeParams.d.ts +84 -0
- package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/EdgeParams.js +220 -0
- package/lib/cjs/render/primitives/EdgeParams.js.map +1 -0
- package/lib/cjs/render/primitives/PointStringParams.d.ts +16 -0
- package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/PointStringParams.js +43 -0
- package/lib/cjs/render/primitives/PointStringParams.js.map +1 -0
- package/lib/cjs/render/primitives/PolylineParams.d.ts +44 -0
- package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/PolylineParams.js +205 -0
- package/lib/cjs/render/primitives/PolylineParams.js.map +1 -0
- package/lib/cjs/render/primitives/Primitives.d.ts +1 -1
- package/lib/cjs/render/primitives/Primitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/Primitives.js.map +1 -1
- package/lib/cjs/render/primitives/SurfaceParams.d.ts +46 -0
- package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/SurfaceParams.js +42 -0
- package/lib/cjs/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/cjs/render/primitives/VertexTable.d.ts +4 -123
- package/lib/cjs/render/primitives/VertexTable.d.ts.map +1 -1
- package/lib/cjs/render/primitives/VertexTable.js +16 -352
- package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +2 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -0
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +3 -3
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts +2 -0
- package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
- package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
- package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
- package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
- package/lib/cjs/render/webgl/AttributeMap.js +5 -5
- package/lib/cjs/render/webgl/BackgroundMapDrape.js +1 -1
- package/lib/cjs/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/cjs/render/webgl/BranchUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchUniforms.js +8 -5
- package/lib/cjs/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts +16 -11
- package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.js +26 -23
- package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/DrawCommand.d.ts +2 -3
- package/lib/cjs/render/webgl/DrawCommand.d.ts.map +1 -1
- package/lib/cjs/render/webgl/DrawCommand.js +6 -4
- package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts +73 -0
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/EdgeGeometry.js +141 -0
- package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/FeatureOverrides.d.ts +2 -0
- package/lib/cjs/render/webgl/FeatureOverrides.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js +11 -3
- package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/render/webgl/FloatRGBA.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FloatRGBA.js +13 -11
- package/lib/cjs/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/cjs/render/webgl/Graphic.d.ts +13 -0
- package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Graphic.js +41 -3
- package/lib/cjs/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.js +90 -0
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/InstancedGeometry.d.ts +6 -5
- package/lib/cjs/render/webgl/InstancedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js +2 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/LightingUniforms.d.ts +1 -0
- package/lib/cjs/render/webgl/LightingUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/LightingUniforms.js +4 -1
- package/lib/cjs/render/webgl/LightingUniforms.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 +2 -0
- package/lib/cjs/render/webgl/Material.js.map +1 -1
- package/lib/cjs/render/webgl/Mesh.d.ts +8 -162
- package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Mesh.js +18 -458
- package/lib/cjs/render/webgl/Mesh.js.map +1 -1
- package/lib/cjs/render/webgl/MeshData.d.ts +38 -0
- package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -0
- package/lib/cjs/render/webgl/MeshData.js +66 -0
- package/lib/cjs/render/webgl/MeshData.js.map +1 -0
- package/lib/cjs/render/webgl/MeshGeometry.d.ts +38 -0
- package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/MeshGeometry.js +59 -0
- package/lib/cjs/render/webgl/MeshGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarClassifier.js +8 -4
- package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/render/webgl/PlanarGrid.d.ts +2 -3
- package/lib/cjs/render/webgl/PlanarGrid.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarGrid.js +3 -3
- package/lib/cjs/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarTextureProjection.js +1 -0
- package/lib/cjs/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/cjs/render/webgl/PointCloud.d.ts +2 -2
- package/lib/cjs/render/webgl/PointCloud.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointCloud.js +2 -2
- package/lib/cjs/render/webgl/PointCloud.js.map +1 -1
- package/lib/cjs/render/webgl/PointString.d.ts +3 -3
- package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointString.js +1 -1
- package/lib/cjs/render/webgl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/Polyline.d.ts +3 -3
- package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Polyline.js +6 -6
- package/lib/cjs/render/webgl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/Primitive.d.ts +2 -2
- package/lib/cjs/render/webgl/Primitive.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Primitive.js +5 -5
- package/lib/cjs/render/webgl/Primitive.js.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.d.ts +3 -2
- package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js +10 -9
- package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.d.ts +6 -2
- package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js +81 -48
- package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts +48 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.js +64 -2
- package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.js +10 -9
- package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/render/webgl/ScreenSpaceEffect.js +1 -1
- package/lib/cjs/render/webgl/ShaderBuilder.d.ts +23 -20
- package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ShaderBuilder.js +38 -32
- package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.js +4 -4
- package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/cjs/render/webgl/SolarShadowMap.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SolarShadowMap.js +4 -3
- package/lib/cjs/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +54 -0
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/SurfaceGeometry.js +248 -0
- package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/System.d.ts +13 -10
- package/lib/cjs/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/render/webgl/System.js +75 -21
- package/lib/cjs/render/webgl/System.js.map +1 -1
- package/lib/cjs/render/webgl/Target.d.ts +13 -1
- package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Target.js +88 -2
- package/lib/cjs/render/webgl/Target.js.map +1 -1
- package/lib/cjs/render/webgl/Technique.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Technique.js +112 -119
- package/lib/cjs/render/webgl/Technique.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueFlags.d.ts +7 -1
- package/lib/cjs/render/webgl/TechniqueFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TechniqueFlags.js +10 -1
- package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.d.ts +29 -28
- package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.js +7 -7
- package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts +15 -12
- package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Texture.js +28 -25
- package/lib/cjs/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js +83 -18
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Animation.js +1 -1
- package/lib/cjs/render/webgl/glsl/Blur.js +1 -1
- package/lib/cjs/render/webgl/glsl/ClearPickAndColor.js +2 -2
- package/lib/cjs/render/webgl/glsl/ClearTranslucent.js +2 -2
- package/lib/cjs/render/webgl/glsl/Color.js +1 -1
- package/lib/cjs/render/webgl/glsl/Combine3Textures.js +1 -1
- package/lib/cjs/render/webgl/glsl/CombineTextures.js +1 -1
- package/lib/cjs/render/webgl/glsl/Composite.js +1 -1
- package/lib/cjs/render/webgl/glsl/CopyColor.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyColor.js +17 -2
- package/lib/cjs/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyPickBuffers.js +2 -2
- package/lib/cjs/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyStencil.js +10 -13
- package/lib/cjs/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js +2 -2
- package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Edge.d.ts +2 -1
- package/lib/cjs/render/webgl/glsl/Edge.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Edge.js +132 -14
- package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +43 -21
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Fragment.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Fragment.js +19 -11
- package/lib/cjs/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Lighting.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Lighting.js +16 -2
- package/lib/cjs/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
- package/lib/cjs/render/webgl/glsl/LookupTable.d.ts +4 -2
- package/lib/cjs/render/webgl/glsl/LookupTable.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/LookupTable.js +7 -3
- package/lib/cjs/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarClassification.js +13 -4
- package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarGrid.js +2 -2
- package/lib/cjs/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PointCloud.js +2 -2
- package/lib/cjs/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PointString.js +1 -1
- package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Polyline.js +1 -1
- package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.js +9 -6
- package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
- package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SkyBox.js +2 -2
- package/lib/cjs/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SkySphere.js +2 -2
- package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Surface.js +41 -16
- package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Translucency.js +2 -2
- package/lib/cjs/render/webgl/glsl/Vertex.js +2 -2
- package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ViewportQuad.js +1 -1
- package/lib/cjs/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts +9 -0
- package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
- package/lib/cjs/render/webgl/glsl/Wiremesh.js +40 -0
- package/lib/cjs/render/webgl/glsl/Wiremesh.js.map +1 -0
- package/lib/cjs/render-primitives.d.ts +5 -1
- package/lib/cjs/render-primitives.d.ts.map +1 -1
- package/lib/cjs/render-primitives.js +5 -1
- package/lib/cjs/render-primitives.js.map +1 -1
- package/lib/cjs/request/Request.d.ts +167 -0
- package/lib/cjs/request/Request.d.ts.map +1 -0
- package/lib/cjs/request/Request.js +315 -0
- package/lib/cjs/request/Request.js.map +1 -0
- package/lib/cjs/tile/B3dmReader.d.ts +2 -1
- package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
- package/lib/cjs/tile/B3dmReader.js +11 -7
- package/lib/cjs/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/tile/CesiumAssetProvider.d.ts +14 -0
- package/lib/cjs/tile/CesiumAssetProvider.d.ts.map +1 -0
- package/lib/cjs/tile/CesiumAssetProvider.js +35 -0
- package/lib/cjs/tile/CesiumAssetProvider.js.map +1 -0
- package/lib/cjs/tile/ContextShareProvider.d.ts +22 -0
- package/lib/cjs/tile/ContextShareProvider.d.ts.map +1 -0
- package/lib/cjs/tile/ContextShareProvider.js +129 -0
- package/lib/cjs/tile/ContextShareProvider.js.map +1 -0
- package/lib/cjs/tile/DynamicIModelTile.d.ts.map +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js +10 -4
- package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/tile/GltfReader.d.ts +600 -56
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +790 -276
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/I3dmReader.d.ts +2 -1
- package/lib/cjs/tile/I3dmReader.d.ts.map +1 -1
- package/lib/cjs/tile/I3dmReader.js +10 -6
- package/lib/cjs/tile/I3dmReader.js.map +1 -1
- package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTile.js +14 -7
- package/lib/cjs/tile/IModelTile.js.map +1 -1
- package/lib/cjs/tile/IModelTileTree.d.ts +8 -0
- package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTileTree.js +36 -1
- package/lib/cjs/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.d.ts +365 -10
- package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
- package/lib/cjs/tile/ImdlReader.js +202 -68
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/LRUTileList.d.ts +29 -29
- package/lib/cjs/tile/LRUTileList.d.ts.map +1 -1
- package/lib/cjs/tile/LRUTileList.js +50 -50
- package/lib/cjs/tile/LRUTileList.js.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.d.ts +0 -9
- package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.js +11 -21
- package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.d.ts +14 -5
- package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.js +69 -14
- package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.d.ts +22 -39
- package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js +84 -219
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTile.d.ts +17 -3
- package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTile.js +34 -2
- package/lib/cjs/tile/RealityTile.js.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.d.ts +9 -5
- package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +23 -8
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.d.ts +3 -1
- package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileTree.js +5 -1
- package/lib/cjs/tile/RealityTileTree.js.map +1 -1
- package/lib/cjs/tile/Tile.d.ts +5 -4
- package/lib/cjs/tile/Tile.d.ts.map +1 -1
- package/lib/cjs/tile/Tile.js +8 -3
- package/lib/cjs/tile/Tile.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.d.ts +79 -48
- package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
- package/lib/cjs/tile/TileAdmin.js +122 -111
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.d.ts +11 -0
- package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.js +6 -1
- package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
- package/lib/cjs/tile/TileGeometryCollector.d.ts +80 -0
- package/lib/cjs/tile/TileGeometryCollector.d.ts.map +1 -0
- package/lib/cjs/tile/TileGeometryCollector.js +71 -0
- package/lib/cjs/tile/TileGeometryCollector.js.map +1 -0
- package/lib/cjs/tile/TileRequest.d.ts +12 -9
- package/lib/cjs/tile/TileRequest.d.ts.map +1 -1
- package/lib/cjs/tile/TileRequest.js +19 -11
- package/lib/cjs/tile/TileRequest.js.map +1 -1
- package/lib/cjs/tile/TileRequestChannel.js +3 -3
- package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
- package/lib/cjs/tile/TileTree.d.ts +7 -1
- package/lib/cjs/tile/TileTree.d.ts.map +1 -1
- package/lib/cjs/tile/TileTree.js +8 -1
- package/lib/cjs/tile/TileTree.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.d.ts +25 -2
- package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js +42 -1
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/TileUsageMarker.d.ts +9 -9
- package/lib/cjs/tile/TileUsageMarker.d.ts.map +1 -1
- package/lib/cjs/tile/TileUsageMarker.js +9 -9
- package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
- package/lib/cjs/tile/TileUser.d.ts +33 -0
- package/lib/cjs/tile/TileUser.d.ts.map +1 -0
- package/lib/cjs/tile/TileUser.js +28 -0
- package/lib/cjs/tile/TileUser.js.map +1 -0
- package/lib/cjs/tile/TileUserSet.d.ts +28 -0
- package/lib/cjs/tile/TileUserSet.d.ts.map +1 -0
- package/lib/cjs/tile/TileUserSet.js +123 -0
- package/lib/cjs/tile/TileUserSet.js.map +1 -0
- package/lib/cjs/tile/internal.d.ts +7 -1
- package/lib/cjs/tile/internal.d.ts.map +1 -1
- package/lib/cjs/tile/internal.js +7 -1
- package/lib/cjs/tile/internal.js.map +1 -1
- package/lib/cjs/tile/map/ArcGISTileMap.d.ts +22 -0
- package/lib/cjs/tile/map/ArcGISTileMap.d.ts.map +1 -0
- package/lib/cjs/tile/map/ArcGISTileMap.js +177 -0
- package/lib/cjs/tile/map/ArcGISTileMap.js.map +1 -0
- package/lib/cjs/tile/map/ArcGisTokenGenerator.js +3 -3
- package/lib/cjs/tile/map/ArcGisTokenGenerator.js.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.js +18 -10
- package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/tile/map/BingElevation.js +4 -4
- package/lib/cjs/tile/map/BingElevation.js.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.js +27 -15
- package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +3 -4
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +24 -45
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -2
- package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +1 -1
- package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +4 -4
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -2
- package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
- package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.d.ts +6 -6
- package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +21 -25
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapCartoRectangle.js +1 -1
- package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerAuthentication.d.ts +20 -0
- package/lib/cjs/tile/map/MapLayerAuthentication.d.ts.map +1 -0
- package/lib/cjs/tile/map/MapLayerAuthentication.js +18 -0
- package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -0
- package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +6 -3
- package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js +3 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +2 -2
- package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.js +21 -8
- package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +18 -6
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js +47 -14
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.d.ts +3 -11
- package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js +5 -34
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.d.ts +7 -6
- package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +51 -37
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.d.ts +2 -1
- package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js +6 -3
- package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts +9 -6
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +55 -28
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +4 -6
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.d.ts +7 -2
- package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js +21 -8
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/QuadId.d.ts +1 -0
- package/lib/cjs/tile/map/QuadId.d.ts.map +1 -1
- package/lib/cjs/tile/map/QuadId.js +2 -1
- package/lib/cjs/tile/map/QuadId.js.map +1 -1
- package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +1 -1
- package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/cjs/tile/map/WmsCapabilities.d.ts +8 -1
- package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/WmsCapabilities.js +39 -5
- package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/cjs/tile/map/WmtsCapabilities.d.ts +11 -1
- package/lib/cjs/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/WmtsCapabilities.js +23 -9
- package/lib/cjs/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/cjs/tools/EditManipulator.d.ts.map +1 -1
- package/lib/cjs/tools/EditManipulator.js +1 -1
- package/lib/cjs/tools/EditManipulator.js.map +1 -1
- package/lib/cjs/tools/ElementSetTool.js +2 -2
- package/lib/cjs/tools/ElementSetTool.js.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.d.ts +4 -4
- package/lib/cjs/tools/PrimitiveTool.d.ts.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.js +2 -2
- package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
- package/lib/cjs/tools/Tool.d.ts +29 -1
- package/lib/cjs/tools/Tool.d.ts.map +1 -1
- package/lib/cjs/tools/Tool.js +66 -0
- package/lib/cjs/tools/Tool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js +20 -10
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
- package/lib/cjs/tools/ViewTool.js +3 -11
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/webgl.d.ts +5 -0
- package/lib/cjs/webgl.d.ts.map +1 -1
- package/lib/cjs/webgl.js +5 -0
- package/lib/cjs/webgl.js.map +1 -1
- package/lib/esm/AccuSnap.js +3 -3
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
- package/lib/esm/ApproximateTerrainHeights.js +10 -5
- package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
- package/lib/esm/BackgroundMapGeometry.d.ts +1 -1
- package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/esm/BackgroundMapGeometry.js +2 -2
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BingLocation.js +1 -1
- package/lib/esm/BingLocation.js.map +1 -1
- package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
- package/lib/esm/BriefcaseConnection.js +6 -5
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/CheckpointConnection.js +1 -1
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/ContextRealityModelState.js +1 -1
- package/lib/esm/ContextRealityModelState.js.map +1 -1
- package/lib/esm/DisplayStyleState.d.ts +11 -163
- package/lib/esm/DisplayStyleState.d.ts.map +1 -1
- package/lib/esm/DisplayStyleState.js +70 -346
- 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 +6 -6
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/ElementLocateManager.d.ts +5 -0
- package/lib/esm/ElementLocateManager.d.ts.map +1 -1
- package/lib/esm/ElementLocateManager.js +12 -2
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/EmphasizeElements.d.ts.map +1 -1
- package/lib/esm/EmphasizeElements.js +14 -4
- package/lib/esm/EmphasizeElements.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.d.ts +39 -0
- package/lib/esm/EnvironmentDecorations.d.ts.map +1 -0
- package/lib/esm/EnvironmentDecorations.js +196 -0
- package/lib/esm/EnvironmentDecorations.js.map +1 -0
- package/lib/esm/FrontendHubAccess.d.ts +11 -7
- package/lib/esm/FrontendHubAccess.d.ts.map +1 -1
- package/lib/esm/FrontendHubAccess.js.map +1 -1
- package/lib/esm/FrontendLoggerCategory.d.ts +2 -8
- package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
- package/lib/esm/FrontendLoggerCategory.js +2 -8
- package/lib/esm/FrontendLoggerCategory.js.map +1 -1
- package/lib/esm/HitDetail.js +7 -7
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.d.ts +31 -24
- package/lib/esm/IModelApp.d.ts.map +1 -1
- package/lib/esm/IModelApp.js +34 -35
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.d.ts +4 -6
- package/lib/esm/IModelConnection.d.ts.map +1 -1
- package/lib/esm/IModelConnection.js +6 -11
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IModeljs-css.d.ts.map +1 -1
- package/lib/esm/IModeljs-css.js +8 -6
- package/lib/esm/IModeljs-css.js.map +1 -1
- package/lib/esm/ImageUtil.d.ts +3 -3
- package/lib/esm/ImageUtil.d.ts.map +1 -1
- package/lib/esm/ImageUtil.js +7 -4
- package/lib/esm/ImageUtil.js.map +1 -1
- package/lib/esm/LocalhostIpcApp.d.ts +2 -1
- package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
- package/lib/esm/LocalhostIpcApp.js +22 -8
- package/lib/esm/LocalhostIpcApp.js.map +1 -1
- package/lib/esm/Marker.d.ts +9 -2
- package/lib/esm/Marker.d.ts.map +1 -1
- package/lib/esm/Marker.js +34 -6
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/ModelState.js +1 -1
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/NativeApp.d.ts +3 -38
- package/lib/esm/NativeApp.d.ts.map +1 -1
- package/lib/esm/NativeApp.js +1 -69
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NoRenderApp.d.ts +0 -1
- package/lib/esm/NoRenderApp.d.ts.map +1 -1
- package/lib/esm/NoRenderApp.js +0 -1
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/NotificationManager.d.ts +3 -1
- package/lib/esm/NotificationManager.d.ts.map +1 -1
- package/lib/esm/NotificationManager.js +2 -0
- package/lib/esm/NotificationManager.js.map +1 -1
- package/lib/esm/RealityDataSource.d.ts +59 -29
- package/lib/esm/RealityDataSource.d.ts.map +1 -1
- package/lib/esm/RealityDataSource.js +247 -92
- package/lib/esm/RealityDataSource.js.map +1 -1
- package/lib/esm/RenderScheduleState.d.ts +2 -0
- package/lib/esm/RenderScheduleState.d.ts.map +1 -1
- package/lib/esm/RenderScheduleState.js +8 -4
- package/lib/esm/RenderScheduleState.js.map +1 -1
- package/lib/esm/SheetViewState.d.ts +2 -2
- package/lib/esm/SheetViewState.d.ts.map +1 -1
- package/lib/esm/SheetViewState.js +11 -12
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts +10 -2
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +12 -2
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/SubCategoriesCache.js +1 -1
- package/lib/esm/SubCategoriesCache.js.map +1 -1
- package/lib/esm/Tiles.d.ts +11 -1
- package/lib/esm/Tiles.d.ts.map +1 -1
- package/lib/esm/Tiles.js +7 -0
- package/lib/esm/Tiles.js.map +1 -1
- package/lib/esm/TwoWayViewportSync.d.ts +35 -6
- package/lib/esm/TwoWayViewportSync.d.ts.map +1 -1
- package/lib/esm/TwoWayViewportSync.js +49 -10
- package/lib/esm/TwoWayViewportSync.js.map +1 -1
- package/lib/esm/UserPreferences.d.ts +72 -0
- package/lib/esm/UserPreferences.d.ts.map +1 -0
- package/lib/esm/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
- package/lib/esm/UserPreferences.js.map +1 -0
- package/lib/esm/ViewContext.d.ts +3 -1
- package/lib/esm/ViewContext.d.ts.map +1 -1
- package/lib/esm/ViewContext.js +4 -0
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator2d.js +3 -3
- package/lib/esm/ViewCreator2d.js.map +1 -1
- package/lib/esm/ViewCreator3d.d.ts +1 -1
- package/lib/esm/ViewCreator3d.d.ts.map +1 -1
- package/lib/esm/ViewCreator3d.js +5 -6
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewManager.d.ts +6 -6
- package/lib/esm/ViewManager.d.ts.map +1 -1
- package/lib/esm/ViewManager.js +13 -13
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/ViewState.d.ts +11 -5
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +21 -66
- 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 +63 -14
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +73 -42
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/core-frontend.d.ts +17 -31
- package/lib/esm/core-frontend.d.ts.map +1 -1
- package/lib/esm/core-frontend.js +17 -31
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js +18 -4
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +26 -3
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js +45 -7
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/render/FeatureSymbology.d.ts.map +1 -1
- package/lib/esm/render/FeatureSymbology.js +3 -3
- package/lib/esm/render/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/GraphicBranch.d.ts +18 -2
- package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.js +8 -0
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/GraphicBuilder.d.ts +7 -1
- package/lib/esm/render/GraphicBuilder.d.ts.map +1 -1
- package/lib/esm/render/GraphicBuilder.js.map +1 -1
- package/lib/esm/render/MockRender.d.ts +3 -1
- package/lib/esm/render/MockRender.d.ts.map +1 -1
- package/lib/esm/render/MockRender.js.map +1 -1
- package/lib/esm/render/RenderMaterial.d.ts +61 -0
- package/lib/esm/render/RenderMaterial.d.ts.map +1 -0
- package/lib/esm/render/RenderMaterial.js +9 -0
- package/lib/esm/render/RenderMaterial.js.map +1 -0
- package/lib/esm/render/RenderMemory.d.ts +21 -15
- package/lib/esm/render/RenderMemory.d.ts.map +1 -1
- package/lib/esm/render/RenderMemory.js +21 -15
- package/lib/esm/render/RenderMemory.js.map +1 -1
- package/lib/esm/render/RenderSystem.d.ts +48 -10
- package/lib/esm/render/RenderSystem.d.ts.map +1 -1
- package/lib/esm/render/RenderSystem.js +33 -10
- package/lib/esm/render/RenderSystem.js.map +1 -1
- package/lib/esm/render/RenderTarget.d.ts +10 -2
- package/lib/esm/render/RenderTarget.d.ts.map +1 -1
- package/lib/esm/render/RenderTarget.js +2 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/RenderTexture.d.ts +2 -17
- package/lib/esm/render/RenderTexture.d.ts.map +1 -1
- package/lib/esm/render/RenderTexture.js +1 -16
- package/lib/esm/render/RenderTexture.js.map +1 -1
- package/lib/esm/render/primitives/EdgeParams.d.ts +84 -0
- package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/EdgeParams.js +217 -0
- package/lib/esm/render/primitives/EdgeParams.js.map +1 -0
- package/lib/esm/render/primitives/PointStringParams.d.ts +16 -0
- package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/PointStringParams.js +39 -0
- package/lib/esm/render/primitives/PointStringParams.js.map +1 -0
- package/lib/esm/render/primitives/PolylineParams.d.ts +44 -0
- package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/PolylineParams.js +199 -0
- package/lib/esm/render/primitives/PolylineParams.js.map +1 -0
- package/lib/esm/render/primitives/Primitives.d.ts +1 -1
- package/lib/esm/render/primitives/Primitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/Primitives.js.map +1 -1
- package/lib/esm/render/primitives/SurfaceParams.d.ts +46 -0
- package/lib/esm/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/SurfaceParams.js +37 -0
- package/lib/esm/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/esm/render/primitives/VertexTable.d.ts +4 -123
- package/lib/esm/render/primitives/VertexTable.d.ts.map +1 -1
- package/lib/esm/render/primitives/VertexTable.js +11 -342
- package/lib/esm/render/primitives/VertexTable.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +2 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -0
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js +3 -3
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts +2 -0
- package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
- package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
- package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
- package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
- package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
- package/lib/esm/render/webgl/AttributeMap.js +5 -5
- package/lib/esm/render/webgl/BackgroundMapDrape.js +2 -2
- package/lib/esm/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/esm/render/webgl/BranchUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchUniforms.js +8 -5
- package/lib/esm/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts +16 -11
- package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.js +26 -23
- package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/DrawCommand.d.ts +2 -3
- package/lib/esm/render/webgl/DrawCommand.d.ts.map +1 -1
- package/lib/esm/render/webgl/DrawCommand.js +6 -4
- package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
- package/lib/esm/render/webgl/EdgeGeometry.d.ts +73 -0
- package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/EdgeGeometry.js +135 -0
- package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -0
- package/lib/esm/render/webgl/FeatureOverrides.d.ts +2 -0
- package/lib/esm/render/webgl/FeatureOverrides.d.ts.map +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js +11 -3
- package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/render/webgl/FloatRGBA.d.ts.map +1 -1
- package/lib/esm/render/webgl/FloatRGBA.js +13 -11
- package/lib/esm/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/esm/render/webgl/Graphic.d.ts +13 -0
- package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/esm/render/webgl/Graphic.js +39 -2
- package/lib/esm/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/IndexedEdgeGeometry.js +85 -0
- package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -0
- package/lib/esm/render/webgl/InstancedGeometry.d.ts +6 -5
- package/lib/esm/render/webgl/InstancedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/InstancedGeometry.js +2 -1
- package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/LightingUniforms.d.ts +1 -0
- package/lib/esm/render/webgl/LightingUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/LightingUniforms.js +4 -1
- package/lib/esm/render/webgl/LightingUniforms.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 +2 -0
- package/lib/esm/render/webgl/Material.js.map +1 -1
- package/lib/esm/render/webgl/Mesh.d.ts +8 -162
- package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/Mesh.js +12 -445
- package/lib/esm/render/webgl/Mesh.js.map +1 -1
- package/lib/esm/render/webgl/MeshData.d.ts +38 -0
- package/lib/esm/render/webgl/MeshData.d.ts.map +1 -0
- package/lib/esm/render/webgl/MeshData.js +62 -0
- package/lib/esm/render/webgl/MeshData.js.map +1 -0
- package/lib/esm/render/webgl/MeshGeometry.d.ts +38 -0
- package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/MeshGeometry.js +55 -0
- package/lib/esm/render/webgl/MeshGeometry.js.map +1 -0
- package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarClassifier.js +9 -5
- package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/render/webgl/PlanarGrid.d.ts +2 -3
- package/lib/esm/render/webgl/PlanarGrid.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarGrid.js +3 -3
- package/lib/esm/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/esm/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarTextureProjection.js +1 -0
- package/lib/esm/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/esm/render/webgl/PointCloud.d.ts +2 -2
- package/lib/esm/render/webgl/PointCloud.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointCloud.js +2 -2
- package/lib/esm/render/webgl/PointCloud.js.map +1 -1
- package/lib/esm/render/webgl/PointString.d.ts +3 -3
- package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointString.js +1 -1
- package/lib/esm/render/webgl/PointString.js.map +1 -1
- package/lib/esm/render/webgl/Polyline.d.ts +3 -3
- package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/esm/render/webgl/Polyline.js +6 -6
- package/lib/esm/render/webgl/Polyline.js.map +1 -1
- package/lib/esm/render/webgl/Primitive.d.ts +2 -2
- package/lib/esm/render/webgl/Primitive.d.ts.map +1 -1
- package/lib/esm/render/webgl/Primitive.js +5 -5
- package/lib/esm/render/webgl/Primitive.js.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.d.ts +3 -2
- package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js +10 -9
- package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.d.ts +6 -2
- package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.js +78 -45
- package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts +48 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.js +63 -1
- package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.js +10 -9
- package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/render/webgl/ScreenSpaceEffect.js +1 -1
- package/lib/esm/render/webgl/ShaderBuilder.d.ts +23 -20
- package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/esm/render/webgl/ShaderBuilder.js +38 -32
- package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -1
- package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
- package/lib/esm/render/webgl/ShaderProgram.js +4 -4
- package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/esm/render/webgl/SolarShadowMap.d.ts.map +1 -1
- package/lib/esm/render/webgl/SolarShadowMap.js +5 -4
- package/lib/esm/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts +54 -0
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/SurfaceGeometry.js +243 -0
- package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -0
- package/lib/esm/render/webgl/System.d.ts +13 -10
- package/lib/esm/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/render/webgl/System.js +77 -23
- package/lib/esm/render/webgl/System.js.map +1 -1
- package/lib/esm/render/webgl/Target.d.ts +13 -1
- package/lib/esm/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/render/webgl/Target.js +88 -2
- package/lib/esm/render/webgl/Target.js.map +1 -1
- package/lib/esm/render/webgl/Technique.d.ts.map +1 -1
- package/lib/esm/render/webgl/Technique.js +112 -119
- package/lib/esm/render/webgl/Technique.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueFlags.d.ts +7 -1
- package/lib/esm/render/webgl/TechniqueFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/TechniqueFlags.js +10 -1
- package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueId.d.ts +29 -28
- package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
- package/lib/esm/render/webgl/TechniqueId.js +7 -7
- package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
- package/lib/esm/render/webgl/Texture.d.ts +15 -12
- package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
- package/lib/esm/render/webgl/Texture.js +29 -26
- package/lib/esm/render/webgl/Texture.js.map +1 -1
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.js +84 -19
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Animation.js +1 -1
- package/lib/esm/render/webgl/glsl/Blur.js +1 -1
- package/lib/esm/render/webgl/glsl/ClearPickAndColor.js +2 -2
- package/lib/esm/render/webgl/glsl/ClearTranslucent.js +2 -2
- package/lib/esm/render/webgl/glsl/Color.js +1 -1
- package/lib/esm/render/webgl/glsl/Combine3Textures.js +1 -1
- package/lib/esm/render/webgl/glsl/CombineTextures.js +1 -1
- package/lib/esm/render/webgl/glsl/Composite.js +1 -1
- package/lib/esm/render/webgl/glsl/CopyColor.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/CopyColor.js +17 -2
- package/lib/esm/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/esm/render/webgl/glsl/CopyPickBuffers.js +2 -2
- package/lib/esm/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/CopyStencil.js +10 -13
- package/lib/esm/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/esm/render/webgl/glsl/EVSMFromDepth.js +2 -2
- package/lib/esm/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Edge.d.ts +2 -1
- package/lib/esm/render/webgl/glsl/Edge.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Edge.js +132 -14
- package/lib/esm/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.js +44 -22
- package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Fragment.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Fragment.js +19 -11
- package/lib/esm/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Lighting.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Lighting.js +16 -2
- package/lib/esm/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/esm/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
- package/lib/esm/render/webgl/glsl/LookupTable.d.ts +4 -2
- package/lib/esm/render/webgl/glsl/LookupTable.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/LookupTable.js +7 -3
- package/lib/esm/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/PlanarClassification.js +13 -4
- package/lib/esm/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PlanarGrid.js +2 -2
- package/lib/esm/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PointCloud.js +2 -2
- package/lib/esm/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PointString.js +1 -1
- package/lib/esm/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Polyline.js +1 -1
- package/lib/esm/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.js +9 -6
- package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
- package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/render/webgl/glsl/SkyBox.js +2 -2
- package/lib/esm/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/esm/render/webgl/glsl/SkySphere.js +2 -2
- package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Surface.js +41 -16
- package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Translucency.js +2 -2
- package/lib/esm/render/webgl/glsl/Vertex.js +3 -3
- package/lib/esm/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/esm/render/webgl/glsl/ViewportQuad.js +1 -1
- package/lib/esm/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Wiremesh.d.ts +9 -0
- package/lib/esm/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
- package/lib/esm/render/webgl/glsl/Wiremesh.js +36 -0
- package/lib/esm/render/webgl/glsl/Wiremesh.js.map +1 -0
- package/lib/esm/render-primitives.d.ts +5 -1
- package/lib/esm/render-primitives.d.ts.map +1 -1
- package/lib/esm/render-primitives.js +5 -1
- package/lib/esm/render-primitives.js.map +1 -1
- package/lib/esm/request/Request.d.ts +167 -0
- package/lib/esm/request/Request.d.ts.map +1 -0
- package/lib/esm/request/Request.js +289 -0
- package/lib/esm/request/Request.js.map +1 -0
- package/lib/esm/tile/B3dmReader.d.ts +2 -1
- package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
- package/lib/esm/tile/B3dmReader.js +12 -8
- package/lib/esm/tile/B3dmReader.js.map +1 -1
- package/lib/esm/tile/CesiumAssetProvider.d.ts +14 -0
- package/lib/esm/tile/CesiumAssetProvider.d.ts.map +1 -0
- package/lib/esm/tile/CesiumAssetProvider.js +31 -0
- package/lib/esm/tile/CesiumAssetProvider.js.map +1 -0
- package/lib/esm/tile/ContextShareProvider.d.ts +22 -0
- package/lib/esm/tile/ContextShareProvider.d.ts.map +1 -0
- package/lib/esm/tile/ContextShareProvider.js +125 -0
- package/lib/esm/tile/ContextShareProvider.js.map +1 -0
- package/lib/esm/tile/DynamicIModelTile.d.ts.map +1 -1
- package/lib/esm/tile/DynamicIModelTile.js +10 -4
- package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/tile/GltfReader.d.ts +600 -56
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +765 -254
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/I3dmReader.d.ts +2 -1
- package/lib/esm/tile/I3dmReader.d.ts.map +1 -1
- package/lib/esm/tile/I3dmReader.js +11 -7
- package/lib/esm/tile/I3dmReader.js.map +1 -1
- package/lib/esm/tile/IModelTile.d.ts.map +1 -1
- package/lib/esm/tile/IModelTile.js +14 -7
- package/lib/esm/tile/IModelTile.js.map +1 -1
- package/lib/esm/tile/IModelTileTree.d.ts +8 -0
- package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/IModelTileTree.js +36 -1
- package/lib/esm/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/tile/ImdlReader.d.ts +365 -10
- package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
- package/lib/esm/tile/ImdlReader.js +199 -66
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/LRUTileList.d.ts +29 -29
- package/lib/esm/tile/LRUTileList.d.ts.map +1 -1
- package/lib/esm/tile/LRUTileList.js +47 -47
- package/lib/esm/tile/LRUTileList.js.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.d.ts +0 -9
- package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.js +11 -21
- package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.d.ts +14 -5
- package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.js +70 -15
- package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.d.ts +22 -39
- package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js +83 -218
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTile.d.ts +17 -3
- package/lib/esm/tile/RealityTile.d.ts.map +1 -1
- package/lib/esm/tile/RealityTile.js +34 -2
- package/lib/esm/tile/RealityTile.js.map +1 -1
- package/lib/esm/tile/RealityTileLoader.d.ts +9 -5
- package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +23 -8
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.d.ts +3 -1
- package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileTree.js +7 -3
- package/lib/esm/tile/RealityTileTree.js.map +1 -1
- package/lib/esm/tile/Tile.d.ts +5 -4
- package/lib/esm/tile/Tile.d.ts.map +1 -1
- package/lib/esm/tile/Tile.js +8 -3
- package/lib/esm/tile/Tile.js.map +1 -1
- package/lib/esm/tile/TileAdmin.d.ts +79 -48
- package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
- package/lib/esm/tile/TileAdmin.js +124 -113
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileDrawArgs.d.ts +11 -0
- package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/esm/tile/TileDrawArgs.js +6 -1
- package/lib/esm/tile/TileDrawArgs.js.map +1 -1
- package/lib/esm/tile/TileGeometryCollector.d.ts +80 -0
- package/lib/esm/tile/TileGeometryCollector.d.ts.map +1 -0
- package/lib/esm/tile/TileGeometryCollector.js +67 -0
- package/lib/esm/tile/TileGeometryCollector.js.map +1 -0
- package/lib/esm/tile/TileRequest.d.ts +12 -9
- package/lib/esm/tile/TileRequest.d.ts.map +1 -1
- package/lib/esm/tile/TileRequest.js +19 -11
- package/lib/esm/tile/TileRequest.js.map +1 -1
- package/lib/esm/tile/TileRequestChannel.js +3 -3
- package/lib/esm/tile/TileRequestChannel.js.map +1 -1
- package/lib/esm/tile/TileTree.d.ts +7 -1
- package/lib/esm/tile/TileTree.d.ts.map +1 -1
- package/lib/esm/tile/TileTree.js +8 -1
- package/lib/esm/tile/TileTree.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.d.ts +25 -2
- package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/TileTreeReference.js +44 -3
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/TileUsageMarker.d.ts +9 -9
- package/lib/esm/tile/TileUsageMarker.d.ts.map +1 -1
- package/lib/esm/tile/TileUsageMarker.js +9 -9
- package/lib/esm/tile/TileUsageMarker.js.map +1 -1
- package/lib/esm/tile/TileUser.d.ts +33 -0
- package/lib/esm/tile/TileUser.d.ts.map +1 -0
- package/lib/esm/tile/TileUser.js +25 -0
- package/lib/esm/tile/TileUser.js.map +1 -0
- package/lib/esm/tile/TileUserSet.d.ts +28 -0
- package/lib/esm/tile/TileUserSet.d.ts.map +1 -0
- package/lib/esm/tile/TileUserSet.js +118 -0
- package/lib/esm/tile/TileUserSet.js.map +1 -0
- package/lib/esm/tile/internal.d.ts +7 -1
- package/lib/esm/tile/internal.d.ts.map +1 -1
- package/lib/esm/tile/internal.js +7 -1
- package/lib/esm/tile/internal.js.map +1 -1
- package/lib/esm/tile/map/ArcGISTileMap.d.ts +22 -0
- package/lib/esm/tile/map/ArcGISTileMap.d.ts.map +1 -0
- package/lib/esm/tile/map/ArcGISTileMap.js +173 -0
- package/lib/esm/tile/map/ArcGISTileMap.js.map +1 -0
- package/lib/esm/tile/map/ArcGisTokenGenerator.js +1 -1
- package/lib/esm/tile/map/ArcGisTokenGenerator.js.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.js +14 -6
- package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/tile/map/BingElevation.js +1 -1
- package/lib/esm/tile/map/BingElevation.js.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.js +25 -13
- package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +3 -4
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +22 -43
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +1 -2
- package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js +1 -1
- package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +3 -3
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -2
- package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
- package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.d.ts +6 -6
- package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +22 -26
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapCartoRectangle.js +1 -1
- package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/esm/tile/map/MapLayerAuthentication.d.ts +20 -0
- package/lib/esm/tile/map/MapLayerAuthentication.d.ts.map +1 -0
- package/lib/esm/tile/map/MapLayerAuthentication.js +15 -0
- package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -0
- package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +6 -3
- package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js +3 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +2 -2
- package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.js +22 -9
- package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +18 -6
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js +44 -11
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.d.ts +3 -11
- package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js +7 -36
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapTile.d.ts +7 -6
- package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTile.js +51 -37
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.d.ts +2 -1
- package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.js +5 -2
- package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts +9 -6
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +56 -29
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js +4 -6
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.d.ts +7 -2
- package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js +22 -9
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/QuadId.d.ts +1 -0
- package/lib/esm/tile/map/QuadId.d.ts.map +1 -1
- package/lib/esm/tile/map/QuadId.js +2 -1
- package/lib/esm/tile/map/QuadId.js.map +1 -1
- package/lib/esm/tile/map/TerrainMeshProvider.d.ts +1 -1
- package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/esm/tile/map/WmsCapabilities.d.ts +8 -1
- package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
- package/lib/esm/tile/map/WmsCapabilities.js +37 -3
- package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/esm/tile/map/WmtsCapabilities.d.ts +11 -1
- package/lib/esm/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/esm/tile/map/WmtsCapabilities.js +20 -6
- package/lib/esm/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/esm/tools/EditManipulator.d.ts.map +1 -1
- package/lib/esm/tools/EditManipulator.js +1 -1
- package/lib/esm/tools/EditManipulator.js.map +1 -1
- package/lib/esm/tools/ElementSetTool.js +2 -2
- package/lib/esm/tools/ElementSetTool.js.map +1 -1
- package/lib/esm/tools/PrimitiveTool.d.ts +4 -4
- package/lib/esm/tools/PrimitiveTool.d.ts.map +1 -1
- package/lib/esm/tools/PrimitiveTool.js +2 -2
- package/lib/esm/tools/PrimitiveTool.js.map +1 -1
- package/lib/esm/tools/Tool.d.ts +29 -1
- package/lib/esm/tools/Tool.d.ts.map +1 -1
- package/lib/esm/tools/Tool.js +66 -0
- package/lib/esm/tools/Tool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/esm/tools/ToolAdmin.js +20 -10
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ViewTool.d.ts.map +1 -1
- package/lib/esm/tools/ViewTool.js +3 -11
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/esm/webgl.d.ts +5 -0
- package/lib/esm/webgl.d.ts.map +1 -1
- package/lib/esm/webgl.js +5 -0
- package/lib/esm/webgl.js.map +1 -1
- package/lib/public/locales/en/iModelJs.json +3 -1
- package/package.json +33 -28
- package/lib/cjs/RealityDataAccessProps.d.ts +0 -44
- package/lib/cjs/RealityDataAccessProps.d.ts.map +0 -1
- package/lib/cjs/RealityDataAccessProps.js +0 -23
- package/lib/cjs/RealityDataAccessProps.js.map +0 -1
- package/lib/cjs/RealityDataConnection.d.ts +0 -31
- package/lib/cjs/RealityDataConnection.d.ts.map +0 -1
- package/lib/cjs/RealityDataConnection.js +0 -101
- package/lib/cjs/RealityDataConnection.js.map +0 -1
- package/lib/cjs/ViewportSet.d.ts +0 -28
- package/lib/cjs/ViewportSet.d.ts.map +0 -1
- package/lib/cjs/ViewportSet.js +0 -126
- package/lib/cjs/ViewportSet.js.map +0 -1
- package/lib/cjs/extension/Extension.d.ts +0 -39
- package/lib/cjs/extension/Extension.d.ts.map +0 -1
- package/lib/cjs/extension/Extension.js +0 -39
- package/lib/cjs/extension/Extension.js.map +0 -1
- package/lib/cjs/extension/ExtensionAdmin.d.ts +0 -70
- package/lib/cjs/extension/ExtensionAdmin.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionAdmin.js +0 -105
- package/lib/cjs/extension/ExtensionAdmin.js.map +0 -1
- package/lib/cjs/extension/ExtensionHost.d.ts +0 -20
- package/lib/cjs/extension/ExtensionHost.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionHost.js +0 -19
- package/lib/cjs/extension/ExtensionHost.js.map +0 -1
- package/lib/cjs/extension/ExtensionImpl.d.ts +0 -16
- package/lib/cjs/extension/ExtensionImpl.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionImpl.js +0 -40
- package/lib/cjs/extension/ExtensionImpl.js.map +0 -1
- package/lib/cjs/extension/ExtensionLoader.d.ts +0 -20
- package/lib/cjs/extension/ExtensionLoader.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionLoader.js.map +0 -1
- package/lib/cjs/extension/ExtensionRuntime.d.ts +0 -2
- package/lib/cjs/extension/ExtensionRuntime.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionRuntime.js +0 -60
- package/lib/cjs/extension/ExtensionRuntime.js.map +0 -1
- package/lib/cjs/extension/extensions.d.ts +0 -18
- package/lib/cjs/extension/extensions.d.ts.map +0 -1
- package/lib/cjs/extension/extensions.js +0 -35
- package/lib/cjs/extension/extensions.js.map +0 -1
- package/lib/cjs/tile/map/MapLayerSettingsService.d.ts +0 -39
- package/lib/cjs/tile/map/MapLayerSettingsService.d.ts.map +0 -1
- package/lib/cjs/tile/map/MapLayerSettingsService.js +0 -190
- package/lib/cjs/tile/map/MapLayerSettingsService.js.map +0 -1
- package/lib/esm/RealityDataAccessProps.d.ts +0 -44
- package/lib/esm/RealityDataAccessProps.d.ts.map +0 -1
- package/lib/esm/RealityDataAccessProps.js +0 -20
- package/lib/esm/RealityDataAccessProps.js.map +0 -1
- package/lib/esm/RealityDataConnection.d.ts +0 -31
- package/lib/esm/RealityDataConnection.d.ts.map +0 -1
- package/lib/esm/RealityDataConnection.js +0 -98
- package/lib/esm/RealityDataConnection.js.map +0 -1
- package/lib/esm/ViewportSet.d.ts +0 -28
- package/lib/esm/ViewportSet.d.ts.map +0 -1
- package/lib/esm/ViewportSet.js +0 -121
- package/lib/esm/ViewportSet.js.map +0 -1
- package/lib/esm/extension/Extension.d.ts +0 -39
- package/lib/esm/extension/Extension.d.ts.map +0 -1
- package/lib/esm/extension/Extension.js +0 -38
- package/lib/esm/extension/Extension.js.map +0 -1
- package/lib/esm/extension/ExtensionAdmin.d.ts +0 -70
- package/lib/esm/extension/ExtensionAdmin.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionAdmin.js +0 -101
- package/lib/esm/extension/ExtensionAdmin.js.map +0 -1
- package/lib/esm/extension/ExtensionHost.d.ts +0 -20
- package/lib/esm/extension/ExtensionHost.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionHost.js +0 -15
- package/lib/esm/extension/ExtensionHost.js.map +0 -1
- package/lib/esm/extension/ExtensionImpl.d.ts +0 -16
- package/lib/esm/extension/ExtensionImpl.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionImpl.js +0 -35
- package/lib/esm/extension/ExtensionImpl.js.map +0 -1
- package/lib/esm/extension/ExtensionLoader.d.ts +0 -20
- package/lib/esm/extension/ExtensionLoader.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionLoader.js.map +0 -1
- package/lib/esm/extension/ExtensionRuntime.d.ts +0 -2
- package/lib/esm/extension/ExtensionRuntime.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionRuntime.js +0 -58
- package/lib/esm/extension/ExtensionRuntime.js.map +0 -1
- package/lib/esm/extension/extensions.d.ts +0 -18
- package/lib/esm/extension/extensions.d.ts.map +0 -1
- package/lib/esm/extension/extensions.js +0 -23
- package/lib/esm/extension/extensions.js.map +0 -1
- package/lib/esm/tile/map/MapLayerSettingsService.d.ts +0 -39
- package/lib/esm/tile/map/MapLayerSettingsService.d.ts.map +0 -1
- package/lib/esm/tile/map/MapLayerSettingsService.js +0 -186
- package/lib/esm/tile/map/MapLayerSettingsService.js.map +0 -1
package/lib/cjs/tile/Tile.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import { RenderMemory } from "../render/RenderMemory";
|
|
|
10
10
|
import { RenderSystem } from "../render/RenderSystem";
|
|
11
11
|
import { SceneContext } from "../ViewContext";
|
|
12
12
|
import { Viewport } from "../Viewport";
|
|
13
|
-
import { LRUTileListNode, TileContent, TileDrawArgs, TileParams, TileRequest, TileRequestChannel, TileTree, TileTreeLoadStatus, TileUsageMarker,
|
|
13
|
+
import { LRUTileListNode, TileContent, TileDrawArgs, TileParams, TileRequest, TileRequestChannel, TileTree, TileTreeLoadStatus, TileUsageMarker, TileUser, TileUserIdSet } from "./internal";
|
|
14
14
|
/** @internal */
|
|
15
15
|
export declare function addRangeGraphic(builder: GraphicBuilder, range: Range3d, is2d: boolean): void;
|
|
16
16
|
/** A 3d tile within a [[TileTree]].
|
|
@@ -71,7 +71,7 @@ export declare abstract class Tile {
|
|
|
71
71
|
/** Exclusively for use by LRUTileList. @internal */
|
|
72
72
|
bytesUsed: number;
|
|
73
73
|
/** Exclusively for use by LRUTileList. @internal */
|
|
74
|
-
|
|
74
|
+
tileUserIds?: TileUserIdSet;
|
|
75
75
|
/** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */
|
|
76
76
|
protected abstract _loadChildren(resolve: (children: Tile[] | undefined) => void, reject: (error: Error) => void): void;
|
|
77
77
|
/** Return the channel via which this tile's content should be requested.
|
|
@@ -135,11 +135,12 @@ export declare abstract class Tile {
|
|
|
135
135
|
get request(): TileRequest | undefined;
|
|
136
136
|
set request(request: TileRequest | undefined);
|
|
137
137
|
/** Compute the load priority of this tile. This determines which tiles' contents are requested first.
|
|
138
|
-
* @param _viewports The
|
|
138
|
+
* @param _viewports The subset of `users` that are [[Viewport]]s - typically, these viewports want to display the tile's content.
|
|
139
|
+
* @param users The [[TileUser]]s that are currently using the tile for some purpose, such as displaying its content.
|
|
139
140
|
* @returns The priority.
|
|
140
141
|
* @see [[TileLoadPriority]] for suggested priority values.
|
|
141
142
|
*/
|
|
142
|
-
computeLoadPriority(_viewports: Iterable<Viewport>): number;
|
|
143
|
+
computeLoadPriority(_viewports: Iterable<Viewport>, _users: Iterable<TileUser>): number;
|
|
143
144
|
/** True if this tile has graphics ready to draw. */
|
|
144
145
|
get hasGraphics(): boolean;
|
|
145
146
|
/** True if this tile has a known volume tightly encompassing its graphics. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tile.d.ts","sourceRoot":"","sources":["../../../src/tile/Tile.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAA+B,QAAQ,EAAW,OAAO,EAAW,OAAO,EAAE,SAAS,EAAY,MAAM,sBAAsB,CAAC;AACtI,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,mBAAmB,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE3G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EACL,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"Tile.d.ts","sourceRoot":"","sources":["../../../src/tile/Tile.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/tile/Tile.js
CHANGED
|
@@ -152,11 +152,12 @@ class Tile {
|
|
|
152
152
|
this._request = request;
|
|
153
153
|
}
|
|
154
154
|
/** Compute the load priority of this tile. This determines which tiles' contents are requested first.
|
|
155
|
-
* @param _viewports The
|
|
155
|
+
* @param _viewports The subset of `users` that are [[Viewport]]s - typically, these viewports want to display the tile's content.
|
|
156
|
+
* @param users The [[TileUser]]s that are currently using the tile for some purpose, such as displaying its content.
|
|
156
157
|
* @returns The priority.
|
|
157
158
|
* @see [[TileLoadPriority]] for suggested priority values.
|
|
158
159
|
*/
|
|
159
|
-
computeLoadPriority(_viewports) {
|
|
160
|
+
computeLoadPriority(_viewports, _users) {
|
|
160
161
|
return this.depth;
|
|
161
162
|
}
|
|
162
163
|
/** True if this tile has graphics ready to draw. */
|
|
@@ -301,9 +302,13 @@ class Tile {
|
|
|
301
302
|
}
|
|
302
303
|
/** Determine the visibility of this tile according to the specified args. */
|
|
303
304
|
computeVisibility(args) {
|
|
305
|
+
if (this.isEmpty)
|
|
306
|
+
return TileVisibility.OutsideFrustum;
|
|
307
|
+
if (args.boundingRange && !args.boundingRange.intersectsRange(this.range))
|
|
308
|
+
return TileVisibility.OutsideFrustum;
|
|
304
309
|
// NB: We test for region culling before isDisplayable - otherwise we will never unload children of undisplayed tiles when
|
|
305
310
|
// they are outside frustum
|
|
306
|
-
if (this.
|
|
311
|
+
if (this.isRegionCulled(args))
|
|
307
312
|
return TileVisibility.OutsideFrustum;
|
|
308
313
|
// some nodes are merely for structure and don't have any geometry
|
|
309
314
|
if (!this.isDisplayable)
|
package/lib/cjs/tile/Tile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tile.js","sourceRoot":"","sources":["../../../src/tile/Tile.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 { assert, dispose } from \"@itwin/core-bentley\";\r\nimport { Arc3d, ClipPlaneContainment, Matrix4d, Point2d, Point3d, Point4d, Range3d, Transform, Vector3d } from \"@itwin/core-geometry\";\r\nimport { BoundingSphere, ColorDef, ElementAlignedBox3d, Frustum, FrustumPlanes } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { GraphicBuilder } from \"../render/GraphicBuilder\";\r\nimport { RenderGraphic } from \"../render/RenderGraphic\";\r\nimport { RenderMemory } from \"../render/RenderMemory\";\r\nimport { RenderSystem } from \"../render/RenderSystem\";\r\nimport { SceneContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport {\r\n LRUTileListNode, TileContent, TileDrawArgs, TileParams, TileRequest, TileRequestChannel, TileTree, TileTreeLoadStatus, TileUsageMarker, ViewportIdSet,\r\n} from \"./internal\";\r\n\r\n// cSpell:ignore undisplayable bitfield\r\n\r\nconst scratchRange2d = [new Point2d(), new Point2d(), new Point2d(), new Point2d()];\r\n\r\n/** @internal */\r\nexport function addRangeGraphic(builder: GraphicBuilder, range: Range3d, is2d: boolean): void {\r\n if (!is2d) {\r\n builder.addRangeBox(range);\r\n return;\r\n }\r\n\r\n // 3d box is useless in 2d and will be clipped by near/far planes anyway\r\n const pts = scratchRange2d;\r\n pts[0].set(range.low.x, range.low.y);\r\n pts[1].set(range.high.x, range.low.y);\r\n pts[2].set(range.high.x, range.high.y);\r\n pts[3].set(range.low.x, range.high.y);\r\n builder.addLineString2d(pts, 0);\r\n}\r\n\r\nconst scratchWorldFrustum = new Frustum();\r\nconst scratchRootFrustum = new Frustum();\r\nconst scratchWorldSphere = new BoundingSphere();\r\nconst scratchPoint4d = Point4d.createZero();\r\nconst scratchFrustum = new Frustum();\r\n\r\n/** A 3d tile within a [[TileTree]].\r\n *\r\n * A tile represents the contents of some sub-volume of the tile tree's volume. It may produce graphics representing those contents, or may have no graphics.\r\n * A tile can have child tiles that further sub-divide its own volume, providing higher-resolution representations of its contents. A tile that has no children is\r\n * referred to as a \"leaf\" of the tile tree. A non-leaf tile's children are produced when they are needed, and discarded when no longer needed.\r\n * A tile's contents can be discarded at any time by [[TileAdmin]] when GPU memory needs to be reclaimed; or when the Tile itself is discarded via\r\n * [[Tile.dispose]].\r\n *\r\n * Several public [[Tile]] methods carry a warning that they should **not** be overridden by subclasses; typically a protected method exists that can be overridden instead.\r\n * For example, [[loadChildren]] should not be overridden, but it calls [[_loadChildren]], which must be overridden because it is abstract.\r\n * @public\r\n */\r\nexport abstract class Tile {\r\n private _state: TileState = TileState.NotReady;\r\n private _children: Tile[] | undefined;\r\n private _rangeGraphic?: RenderGraphic;\r\n private _rangeGraphicType: TileBoundingBoxes = TileBoundingBoxes.None;\r\n /** This tile's renderable content. */\r\n protected _graphic?: RenderGraphic;\r\n /** True if this tile ever had graphics loaded. Used to determine when a tile's graphics were later freed to conserve memory. */\r\n protected _hadGraphics = false;\r\n /** Uniquely identifies this tile's content in the context of its tree. */\r\n protected _contentId: string;\r\n /** The current loading state of this tile's children. Child tiles are loaded on-demand, potentially asynchronously. */\r\n protected _childrenLoadStatus: TileTreeLoadStatus;\r\n /** @internal */\r\n protected _request?: TileRequest;\r\n /** @internal */\r\n protected _isLeaf: boolean;\r\n /** A volume no larger than this tile's `range`, and optionally more tightly encompassing its contents, used for more accurate culling.\r\n * [[contentRange]] uses this range if defined; otherwise it uses [[range]].\r\n */\r\n protected _contentRange?: ElementAlignedBox3d;\r\n /** The maximum size in pixels this tile can be drawn. If the size of the tile on screen exceeds this maximum, a higher-resolution tile should be drawn in its place. */\r\n protected _maximumSize: number;\r\n /** The [[TileTree]] to which this tile belongs. */\r\n public readonly tree: TileTree;\r\n /** The volume of space occupied by this tile. Its children are guaranteed to also be contained within this volume. */\r\n public readonly range: ElementAlignedBox3d;\r\n /** The parent of this tile, or undefined if it is the [[TileTree]]'s root tile. */\r\n public readonly parent: Tile | undefined;\r\n /** The depth of this tile within its [[TileTree]]. The root tile has a depth of zero. */\r\n public readonly depth: number;\r\n /** The bounding sphere for this tile. */\r\n public readonly boundingSphere: BoundingSphere;\r\n /** The point at the center of this tile's volume. */\r\n public get center(): Point3d { return this.boundingSphere.center; }\r\n /** The radius of a sphere fully encompassing this tile's volume - used for culling. */\r\n public get radius(): number { return this.boundingSphere.radius; }\r\n /** Tracks the usage of this tile. After a period of disuse, the tile may be [[prune]]d to free up memory. */\r\n public readonly usageMarker = new TileUsageMarker();\r\n\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public previous?: LRUTileListNode;\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public next?: LRUTileListNode;\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public bytesUsed = 0;\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public viewportIds?: ViewportIdSet;\r\n\r\n /** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */\r\n protected abstract _loadChildren(resolve: (children: Tile[] | undefined) => void, reject: (error: Error) => void): void;\r\n\r\n /** Return the channel via which this tile's content should be requested.\r\n * @note The channel *must* be registered with `IModelApp.tileAdmin.channels`.\r\n * @see [[TileRequestChannels.getForHttp]] to create a channel that requests content over HTTP.\r\n * @see [[TileAdmin.channels]].\r\n * @public\r\n */\r\n public abstract get channel(): TileRequestChannel;\r\n\r\n /** Return a Promise that resolves to the raw data representing this tile's content. */\r\n public abstract requestContent(isCanceled: () => boolean): Promise<TileRequest.Response>;\r\n\r\n /** Return a Promise that deserializes this tile's content from raw format produced by [[requestContent]]. */\r\n public abstract readContent(data: TileRequest.ResponseData, system: RenderSystem, isCanceled?: () => boolean): Promise<TileContent>;\r\n\r\n /** Constructor */\r\n protected constructor(params: TileParams, tree: TileTree) {\r\n this.tree = tree;\r\n this.parent = params.parent;\r\n this.depth = undefined !== this.parent ? this.parent.depth + 1 : 0;\r\n this.range = params.range;\r\n this._maximumSize = params.maximumSize;\r\n this._contentRange = params.contentRange;\r\n this._contentId = params.contentId;\r\n\r\n const center = this.range.low.interpolate(0.5, this.range.high);\r\n const radius = 0.5 * this.range.low.distance(this.range.high);\r\n this.boundingSphere = new BoundingSphere(center, radius);\r\n\r\n if (params.maximumSize <= 0)\r\n this.setIsReady();\r\n\r\n this._isLeaf = true === params.isLeaf;\r\n this._childrenLoadStatus = (undefined !== tree.maxDepth && this.depth < tree.maxDepth) ? TileTreeLoadStatus.NotLoaded : TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n /** Free memory-consuming resources owned by this tile to reduce memory pressure.\r\n * By default, this calls [[disposeContents]]. Problematic subclasses (MapTile, ImageryMapTile) may opt out for now by overriding this method to do nothing.\r\n * That option may be removed in the future.\r\n * @alpha\r\n */\r\n public freeMemory(): void {\r\n this.disposeContents();\r\n }\r\n\r\n /** Dispose of resources held by this tile. */\r\n public disposeContents(): void {\r\n this._state = TileState.NotReady;\r\n this._graphic = dispose(this._graphic);\r\n this._rangeGraphic = dispose(this._rangeGraphic);\r\n this._rangeGraphicType = TileBoundingBoxes.None;\r\n IModelApp.tileAdmin.onTileContentDisposed(this);\r\n }\r\n\r\n /** Dispose of resources held by this tile and all of its children, marking it and all of its children as \"abandoned\". */\r\n public dispose(): void {\r\n this.disposeContents();\r\n this._state = TileState.Abandoned;\r\n this.disposeChildren();\r\n }\r\n\r\n /** This tile's child tiles, if they exist and are loaded. The children are fully contained within this tile's volume and provide higher-resolution graphics than this tile.\r\n * @see [[loadChildren]]\r\n */\r\n public get children(): Tile[] | undefined { return this._children; }\r\n /** The [[IModelConnection]] to which this tile belongs. */\r\n public get iModel(): IModelConnection { return this.tree.iModel; }\r\n /** Uniquely identifies this tile's content. */\r\n public get contentId(): string { return this._contentId; }\r\n\r\n /** True if this tile's content is currently being loaded. */\r\n public get isLoading(): boolean { return TileLoadStatus.Loading === this.loadStatus; }\r\n /** True if a request for this tile's content has been enqueued. */\r\n public get isQueued(): boolean { return TileLoadStatus.Queued === this.loadStatus; }\r\n /** True if an attempt to load this tile's content failed. */\r\n public get isNotFound(): boolean { return TileLoadStatus.NotFound === this.loadStatus; }\r\n /** True if this tile's content has been loaded and is ready to be drawn. */\r\n public get isReady(): boolean { return TileLoadStatus.Ready === this.loadStatus; }\r\n\r\n /** @public */\r\n public setNotFound(): void {\r\n this._state = TileState.NotFound;\r\n }\r\n\r\n /** @public */\r\n public setIsReady(): void {\r\n if (this.hasGraphics)\r\n this._hadGraphics = true;\r\n\r\n this._state = TileState.Ready;\r\n IModelApp.tileAdmin.onTileContentLoaded(this);\r\n }\r\n\r\n /** @public */\r\n public setLeaf(): void {\r\n // Don't potentially re-request the children later.\r\n this.disposeChildren();\r\n this._isLeaf = true;\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n /** True if this tile has no child tiles. */\r\n public get isLeaf(): boolean { return this._isLeaf; }\r\n /** @internal */\r\n public get isEmpty(): boolean { return this.isReady && !this.hasGraphics && this.isLeaf; }\r\n /** @internal */\r\n public get isDisplayable(): boolean { return 0 < this.maximumSize; }\r\n /** The maximum size in pixels this tile can be drawn. If the size of the tile on screen exceeds this maximum, a higher-resolution tile should be drawn in its place. */\r\n public get maximumSize(): number { return this._maximumSize; }\r\n /** @internal */\r\n public get isParentDisplayable(): boolean { return undefined !== this.parent && this.parent.isDisplayable; }\r\n /** @internal */\r\n public get isUndisplayableRootTile(): boolean { return undefined === this.parent && !this.isDisplayable; }\r\n\r\n /** @internal */\r\n public get request(): TileRequest | undefined { return this._request; }\r\n public set request(request: TileRequest | undefined) {\r\n assert(undefined === request || undefined === this.request);\r\n this._request = request;\r\n }\r\n\r\n /** Compute the load priority of this tile. This determines which tiles' contents are requested first.\r\n * @param _viewports The viewports for which the tile has been requested for display.\r\n * @returns The priority.\r\n * @see [[TileLoadPriority]] for suggested priority values.\r\n */\r\n public computeLoadPriority(_viewports: Iterable<Viewport>): number {\r\n return this.depth;\r\n }\r\n\r\n /** True if this tile has graphics ready to draw. */\r\n public get hasGraphics(): boolean { return undefined !== this._graphic; }\r\n /** True if this tile has a known volume tightly encompassing its graphics. */\r\n public get hasContentRange(): boolean { return undefined !== this._contentRange; }\r\n /** A volume no larger than this tile's `range`, and optionally more tightly encompassing its contents, used for more accurate culling. */\r\n public get contentRange(): ElementAlignedBox3d {\r\n if (undefined !== this._contentRange)\r\n return this._contentRange;\r\n else if (undefined === this.parent && undefined !== this.tree.contentRange)\r\n return this.tree.contentRange;\r\n else\r\n return this.range;\r\n }\r\n\r\n /** Tile contents are loaded asynchronously on demand. This member tracks the current loading status of this tile's contents. */\r\n public get loadStatus(): TileLoadStatus {\r\n switch (this._state) {\r\n case TileState.NotReady: {\r\n if (undefined === this.request)\r\n return TileLoadStatus.NotLoaded;\r\n else if (TileRequest.State.Loading === this.request.state)\r\n return TileLoadStatus.Loading;\r\n\r\n assert(TileRequest.State.Completed !== this.request.state && TileRequest.State.Failed !== this.request.state); // this.request should be undefined in these cases...\r\n return TileLoadStatus.Queued;\r\n }\r\n case TileState.Ready: {\r\n assert(undefined === this.request);\r\n return TileLoadStatus.Ready;\r\n }\r\n case TileState.NotFound: {\r\n assert(undefined === this.request);\r\n return TileLoadStatus.NotFound;\r\n }\r\n default: {\r\n assert(TileState.Abandoned === this._state);\r\n return TileLoadStatus.Abandoned;\r\n }\r\n }\r\n }\r\n\r\n /** Produce the graphics that should be drawn. */\r\n public produceGraphics(): RenderGraphic | undefined {\r\n return this._graphic;\r\n }\r\n\r\n protected setGraphic(graphic: RenderGraphic | undefined): void {\r\n dispose(this._graphic);\r\n this._graphic = graphic;\r\n this.setIsReady();\r\n }\r\n\r\n /** Set this tile's content to the result of [[readContent]] */\r\n public setContent(content: TileContent): void {\r\n const { graphic, isLeaf, contentRange } = content;\r\n this.setGraphic(graphic);\r\n\r\n if (undefined !== isLeaf && isLeaf !== this._isLeaf) {\r\n if (isLeaf)\r\n this.setLeaf();\r\n else\r\n this._isLeaf = false;\r\n }\r\n\r\n if (undefined !== contentRange)\r\n this._contentRange = contentRange;\r\n\r\n this.setIsReady();\r\n }\r\n\r\n /** Disclose any resources owned by this tile, other than its [[RenderGraphic]].\r\n * @internal\r\n */\r\n protected _collectStatistics(_stats: RenderMemory.Statistics): void { }\r\n\r\n /** Disclose resources owned by this tile and (by default) all of its child tiles.\r\n * @note Do not override this method! Override `_collectStatistics` instead.\r\n * @internal\r\n */\r\n public collectStatistics(stats: RenderMemory.Statistics, includeChildren = true): void {\r\n if (undefined !== this._graphic)\r\n this._graphic.collectStatistics(stats);\r\n\r\n this._collectStatistics(stats);\r\n if (!includeChildren)\r\n return;\r\n\r\n const children = this.children;\r\n if (undefined !== children)\r\n for (const child of children)\r\n child.collectStatistics(stats);\r\n }\r\n\r\n /** If this tile's child tiles have not yet been requested, enqueue an asynchronous request to load them.\r\n * @note This function itself is *not* asynchronous - it immediately returns the current loading status.\r\n * @note Do not override this method - implement [[_loadChildren]].\r\n */\r\n protected loadChildren(): TileTreeLoadStatus {\r\n if (this._childrenLoadStatus !== TileTreeLoadStatus.NotLoaded)\r\n return this._childrenLoadStatus;\r\n\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loading;\r\n\r\n this._loadChildren((children: Tile[] | undefined) => {\r\n this._children = children;\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loaded;\r\n\r\n if (undefined === children || 0 === children.length)\r\n this._isLeaf = true;\r\n\r\n IModelApp.tileAdmin.onTileChildrenLoad.raiseEvent(this);\r\n }, (_error: Error) => {\r\n this._isLeaf = true;\r\n this._childrenLoadStatus = TileTreeLoadStatus.NotFound;\r\n\r\n IModelApp.tileAdmin.onTileChildrenLoad.raiseEvent(this);\r\n });\r\n\r\n return this._childrenLoadStatus;\r\n }\r\n\r\n /** Dispose of this tile's child tiles and mark them as \"not loaded\". */\r\n protected disposeChildren(): void {\r\n const children = this.children;\r\n if (undefined === children)\r\n return;\r\n\r\n for (const child of children)\r\n child.dispose();\r\n\r\n this._childrenLoadStatus = TileTreeLoadStatus.NotLoaded;\r\n this._children = undefined;\r\n }\r\n\r\n /** Returns true if this tile's bounding volume is culled by the frustum or clip volumes specified by `args`. */\r\n protected isRegionCulled(args: TileDrawArgs): boolean {\r\n return this.isCulled(this.range, args, true, this.boundingSphere);\r\n }\r\n\r\n /** Returns true if this tile's content bounding volume is culled by the frustum or clip volumes specified by `args`. */\r\n protected isContentCulled(args: TileDrawArgs): boolean {\r\n return this.isCulled(this.contentRange, args, false);\r\n }\r\n\r\n private isCulled(range: ElementAlignedBox3d, args: TileDrawArgs, testClipIntersection: boolean, sphere?: BoundingSphere) {\r\n const box = Frustum.fromRange(range, scratchRootFrustum);\r\n return this.isFrustumCulled(box, args, testClipIntersection, sphere);\r\n }\r\n\r\n protected isFrustumCulled(box: Frustum, args: TileDrawArgs, testClipIntersection: boolean, sphere?: BoundingSphere) {\r\n const worldBox = box.transformBy(args.location, scratchWorldFrustum);\r\n const worldSphere = sphere?.transformBy(args.location, scratchWorldSphere);\r\n\r\n // Test against frustum.\r\n if (FrustumPlanes.Containment.Outside === args.frustumPlanes.computeFrustumContainment(worldBox, worldSphere))\r\n return true;\r\n\r\n // Test against TileTree's own clip volume, if any.\r\n if (undefined !== args.clip && ClipPlaneContainment.StronglyOutside === args.clip.classifyPointContainment(worldBox.points))\r\n return true;\r\n\r\n // Test against view clip, if any (will be undefined if TileTree does not want view clip applied to it).\r\n if (undefined !== args.viewClip && ClipPlaneContainment.StronglyOutside === args.viewClip.classifyPointContainment(worldBox.points))\r\n return true;\r\n\r\n // Test against intersection clip - reject if tile doesn't intersect (used for section-cut graphics).\r\n if (testClipIntersection && undefined !== args.intersectionClip && ClipPlaneContainment.Ambiguous !== args.intersectionClip.classifyPointContainment(worldBox.points))\r\n return true;\r\n\r\n return false;\r\n }\r\n\r\n /** Determine the visibility of this tile according to the specified args. */\r\n public computeVisibility(args: TileDrawArgs): TileVisibility {\r\n // NB: We test for region culling before isDisplayable - otherwise we will never unload children of undisplayed tiles when\r\n // they are outside frustum\r\n if (this.isEmpty || this.isRegionCulled(args))\r\n return TileVisibility.OutsideFrustum;\r\n\r\n // some nodes are merely for structure and don't have any geometry\r\n if (!this.isDisplayable)\r\n return TileVisibility.TooCoarse;\r\n\r\n if (this.isLeaf) {\r\n if (this.hasContentRange && this.isContentCulled(args))\r\n return TileVisibility.OutsideFrustum;\r\n else\r\n return TileVisibility.Visible;\r\n }\r\n\r\n const pixelSize = args.getPixelSize(this) * args.pixelSizeScaleFactor;\r\n const maxSize = this.maximumSize * args.tileSizeModifier;\r\n\r\n return pixelSize > maxSize ? TileVisibility.TooCoarse : TileVisibility.Visible;\r\n }\r\n\r\n /** @internal */\r\n public extendRangeForContent(range: Range3d, matrix: Matrix4d, treeTransform: Transform, frustumPlanes?: FrustumPlanes): void {\r\n if (this.isEmpty || this.contentRange.isNull)\r\n return;\r\n\r\n const box = Frustum.fromRange(this.contentRange, scratchFrustum);\r\n box.transformBy(treeTransform, box);\r\n if (frustumPlanes !== undefined && FrustumPlanes.Containment.Outside === frustumPlanes.computeFrustumContainment(box))\r\n return;\r\n\r\n if (this.children === undefined) {\r\n for (const boxPoint of box.points) {\r\n const pt = matrix.multiplyPoint3d(boxPoint, 1, scratchPoint4d);\r\n if (pt.w > .0001)\r\n range.extendXYZW(pt.x, pt.y, pt.z, pt.w);\r\n else\r\n range.high.z = Math.max(1.0, range.high.z); // behind eye plane...\r\n }\r\n } else {\r\n for (const child of this.children)\r\n child.extendRangeForContent(range, matrix, treeTransform, frustumPlanes);\r\n }\r\n }\r\n\r\n /** Primarily for debugging purposes, compute the number of tiles below this one in the [[TileTree]]. */\r\n public countDescendants(): number {\r\n const children = this.children;\r\n if (undefined === children || 0 === children.length)\r\n return 0;\r\n\r\n let count = 0;\r\n for (const child of children)\r\n count += child.countDescendants();\r\n\r\n return count;\r\n }\r\n\r\n /** Output this tile's graphics. */\r\n public drawGraphics(args: TileDrawArgs): void {\r\n const gfx = this.produceGraphics();\r\n if (undefined === gfx)\r\n return;\r\n\r\n args.graphics.add(gfx);\r\n const rangeGfx = this.getRangeGraphic(args.context);\r\n if (undefined !== rangeGfx)\r\n args.graphics.add(rangeGfx);\r\n }\r\n\r\n /** @internal */\r\n protected get rangeGraphicColor(): ColorDef {\r\n return this.isLeaf ? ColorDef.blue : ColorDef.green;\r\n }\r\n\r\n /** @internal */\r\n public getRangeGraphic(context: SceneContext): RenderGraphic | undefined {\r\n const type = context.viewport.debugBoundingBoxes;\r\n if (type === this._rangeGraphicType)\r\n return this._rangeGraphic;\r\n\r\n this._rangeGraphic = dispose(this._rangeGraphic);\r\n this._rangeGraphicType = type;\r\n if (TileBoundingBoxes.None !== type) {\r\n const builder = context.createSceneGraphicBuilder();\r\n this.addRangeGraphic(builder, type);\r\n this._rangeGraphic = builder.finish();\r\n }\r\n\r\n return this._rangeGraphic;\r\n }\r\n\r\n /** @internal */\r\n protected addRangeGraphic(builder: GraphicBuilder, type: TileBoundingBoxes): void {\r\n if (TileBoundingBoxes.Both === type) {\r\n builder.setSymbology(ColorDef.blue, ColorDef.blue, 1);\r\n addRangeGraphic(builder, this.range, this.tree.is2d);\r\n\r\n if (this.hasContentRange) {\r\n builder.setSymbology(ColorDef.red, ColorDef.red, 1);\r\n addRangeGraphic(builder, this.contentRange, this.tree.is2d);\r\n }\r\n } else if (TileBoundingBoxes.Sphere === type) {\r\n builder.setSymbology(ColorDef.green, ColorDef.green, 1);\r\n\r\n const x = new Vector3d(this.radius, 0, 0);\r\n const y = new Vector3d(0, this.radius, 0);\r\n const z = new Vector3d(0, 0, this.radius);\r\n\r\n builder.addArc(Arc3d.create(this.center, x, y), false, false);\r\n builder.addArc(Arc3d.create(this.center, x, z), false, false);\r\n builder.addArc(Arc3d.create(this.center, y, z), false, false);\r\n } else {\r\n const color = this.rangeGraphicColor;\r\n builder.setSymbology(color, color, 1);\r\n const range = TileBoundingBoxes.Content === type ? this.contentRange : this.range;\r\n addRangeGraphic(builder, range, this.tree.is2d);\r\n }\r\n }\r\n\r\n /** Optional corners used to compute the screen size of the tile. These are used, e.g., by reality tiles with oriented bounding boxes to\r\n * produce more accurate size calculation.\r\n */\r\n public getSizeProjectionCorners(): Point3d[] | undefined { return undefined; }\r\n}\r\n\r\n/** Describes the current status of a [[Tile]]'s content. Tile content is loaded via an asynchronous [[TileRequest]].\r\n * @see [[Tile.loadStatus]].\r\n * @public\r\n */\r\nexport enum TileLoadStatus {\r\n /** No attempt to load the tile's content has been made, or the tile has since been unloaded. It currently has no graphics. */\r\n NotLoaded = 0,\r\n /** A request has been dispatched to load the tile's contents, and a response is pending. */\r\n Queued = 1,\r\n /** A response has been received and the tile's graphics and other data are being loaded on the frontend. */\r\n Loading = 2,\r\n /** The tile has been loaded, and if the tile is displayable it has graphics. */\r\n Ready = 3,\r\n /** A request to load the tile's contents failed. */\r\n NotFound = 4,\r\n /** The tile has been disposed. */\r\n Abandoned = 5,\r\n}\r\n\r\n/**\r\n * Describes the visibility of a tile based on its size and a view frustum.\r\n * @public\r\n */\r\nexport enum TileVisibility {\r\n /** The tile is entirely outside of the viewing frustum. */\r\n OutsideFrustum,\r\n /** The tile's graphics are of too low a resolution for the viewing frustum. */\r\n TooCoarse,\r\n /** The tile's graphics are of appropriate resolution for the viewing frustum. */\r\n Visible,\r\n}\r\n\r\n/**\r\n * Loosely describes the \"importance\" of a [[Tile]]. Requests for tiles of greater \"importance\" are prioritized for loading.\r\n * @note A lower priority value indicates higher importance.\r\n * @public\r\n */\r\nexport enum TileLoadPriority {\r\n /** Contents of geometric models that are being interactively edited. */\r\n Dynamic = 5,\r\n /** Background map tiles. */\r\n Map = 15,\r\n /** Typically, tiles generated from the contents of geometric models. */\r\n Primary = 20,\r\n /** 3d terrain tiles onto which background map imagery is draped. */\r\n Terrain = 10,\r\n /** Typically, reality models. */\r\n Context = 40,\r\n /** Supplementary tiles used to classify the contents of geometric or reality models. */\r\n Classifier = 50,\r\n}\r\n\r\n/**\r\n * Options for displaying tile bounding boxes for debugging purposes.\r\n *\r\n * Bounding boxes are color-coded based on refinement strategy:\r\n * - Blue: A leaf tile (has no child tiles).\r\n * - Green: An ordinary tile (sub-divides into 4 or 8 child tiles).\r\n * - Red: A tile which refines to a single higher-resolution child occupying the same volume.\r\n * @see [[Viewport.debugBoundingBoxes]]\r\n * @public\r\n */\r\nexport enum TileBoundingBoxes {\r\n /** Display no bounding boxes */\r\n None = 0,\r\n /** Display boxes representing the tile's full volume. */\r\n Volume,\r\n /** Display boxes representing the range of the tile's contents, which may be tighter than (but never larger than) the tile's full volume. */\r\n Content,\r\n /** Display both volume and content boxes. */\r\n Both,\r\n /** Display boxes for direct children, where blue boxes indicate empty volumes. */\r\n ChildVolumes,\r\n /** Display bounding sphere. */\r\n Sphere,\r\n}\r\n\r\n// TileLoadStatus is computed from the combination of Tile._state and, if Tile.request is defined, Tile.request.state.\r\nconst enum TileState {// eslint-disable-line no-restricted-syntax\r\n NotReady = TileLoadStatus.NotLoaded, // Tile requires loading, but no request has yet completed.\r\n Ready = TileLoadStatus.Ready, // request completed successfully, or no loading was required.\r\n NotFound = TileLoadStatus.NotFound, // request failed.\r\n Abandoned = TileLoadStatus.Abandoned, // tile was abandoned.\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"Tile.js","sourceRoot":"","sources":["../../../src/tile/Tile.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 { assert, dispose } from \"@itwin/core-bentley\";\r\nimport { Arc3d, ClipPlaneContainment, Matrix4d, Point2d, Point3d, Point4d, Range3d, Transform, Vector3d } from \"@itwin/core-geometry\";\r\nimport { BoundingSphere, ColorDef, ElementAlignedBox3d, Frustum, FrustumPlanes } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { GraphicBuilder } from \"../render/GraphicBuilder\";\r\nimport { RenderGraphic } from \"../render/RenderGraphic\";\r\nimport { RenderMemory } from \"../render/RenderMemory\";\r\nimport { RenderSystem } from \"../render/RenderSystem\";\r\nimport { SceneContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport {\r\n LRUTileListNode, TileContent, TileDrawArgs, TileParams, TileRequest, TileRequestChannel, TileTree, TileTreeLoadStatus, TileUsageMarker, TileUser, TileUserIdSet,\r\n} from \"./internal\";\r\n\r\n// cSpell:ignore undisplayable bitfield\r\n\r\nconst scratchRange2d = [new Point2d(), new Point2d(), new Point2d(), new Point2d()];\r\n\r\n/** @internal */\r\nexport function addRangeGraphic(builder: GraphicBuilder, range: Range3d, is2d: boolean): void {\r\n if (!is2d) {\r\n builder.addRangeBox(range);\r\n return;\r\n }\r\n\r\n // 3d box is useless in 2d and will be clipped by near/far planes anyway\r\n const pts = scratchRange2d;\r\n pts[0].set(range.low.x, range.low.y);\r\n pts[1].set(range.high.x, range.low.y);\r\n pts[2].set(range.high.x, range.high.y);\r\n pts[3].set(range.low.x, range.high.y);\r\n builder.addLineString2d(pts, 0);\r\n}\r\n\r\nconst scratchWorldFrustum = new Frustum();\r\nconst scratchRootFrustum = new Frustum();\r\nconst scratchWorldSphere = new BoundingSphere();\r\nconst scratchPoint4d = Point4d.createZero();\r\nconst scratchFrustum = new Frustum();\r\n\r\n/** A 3d tile within a [[TileTree]].\r\n *\r\n * A tile represents the contents of some sub-volume of the tile tree's volume. It may produce graphics representing those contents, or may have no graphics.\r\n * A tile can have child tiles that further sub-divide its own volume, providing higher-resolution representations of its contents. A tile that has no children is\r\n * referred to as a \"leaf\" of the tile tree. A non-leaf tile's children are produced when they are needed, and discarded when no longer needed.\r\n * A tile's contents can be discarded at any time by [[TileAdmin]] when GPU memory needs to be reclaimed; or when the Tile itself is discarded via\r\n * [[Tile.dispose]].\r\n *\r\n * Several public [[Tile]] methods carry a warning that they should **not** be overridden by subclasses; typically a protected method exists that can be overridden instead.\r\n * For example, [[loadChildren]] should not be overridden, but it calls [[_loadChildren]], which must be overridden because it is abstract.\r\n * @public\r\n */\r\nexport abstract class Tile {\r\n private _state: TileState = TileState.NotReady;\r\n private _children: Tile[] | undefined;\r\n private _rangeGraphic?: RenderGraphic;\r\n private _rangeGraphicType: TileBoundingBoxes = TileBoundingBoxes.None;\r\n /** This tile's renderable content. */\r\n protected _graphic?: RenderGraphic;\r\n /** True if this tile ever had graphics loaded. Used to determine when a tile's graphics were later freed to conserve memory. */\r\n protected _hadGraphics = false;\r\n /** Uniquely identifies this tile's content in the context of its tree. */\r\n protected _contentId: string;\r\n /** The current loading state of this tile's children. Child tiles are loaded on-demand, potentially asynchronously. */\r\n protected _childrenLoadStatus: TileTreeLoadStatus;\r\n /** @internal */\r\n protected _request?: TileRequest;\r\n /** @internal */\r\n protected _isLeaf: boolean;\r\n /** A volume no larger than this tile's `range`, and optionally more tightly encompassing its contents, used for more accurate culling.\r\n * [[contentRange]] uses this range if defined; otherwise it uses [[range]].\r\n */\r\n protected _contentRange?: ElementAlignedBox3d;\r\n /** The maximum size in pixels this tile can be drawn. If the size of the tile on screen exceeds this maximum, a higher-resolution tile should be drawn in its place. */\r\n protected _maximumSize: number;\r\n /** The [[TileTree]] to which this tile belongs. */\r\n public readonly tree: TileTree;\r\n /** The volume of space occupied by this tile. Its children are guaranteed to also be contained within this volume. */\r\n public readonly range: ElementAlignedBox3d;\r\n /** The parent of this tile, or undefined if it is the [[TileTree]]'s root tile. */\r\n public readonly parent: Tile | undefined;\r\n /** The depth of this tile within its [[TileTree]]. The root tile has a depth of zero. */\r\n public readonly depth: number;\r\n /** The bounding sphere for this tile. */\r\n public readonly boundingSphere: BoundingSphere;\r\n /** The point at the center of this tile's volume. */\r\n public get center(): Point3d { return this.boundingSphere.center; }\r\n /** The radius of a sphere fully encompassing this tile's volume - used for culling. */\r\n public get radius(): number { return this.boundingSphere.radius; }\r\n /** Tracks the usage of this tile. After a period of disuse, the tile may be [[prune]]d to free up memory. */\r\n public readonly usageMarker = new TileUsageMarker();\r\n\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public previous?: LRUTileListNode;\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public next?: LRUTileListNode;\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public bytesUsed = 0;\r\n /** Exclusively for use by LRUTileList. @internal */\r\n public tileUserIds?: TileUserIdSet;\r\n\r\n /** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */\r\n protected abstract _loadChildren(resolve: (children: Tile[] | undefined) => void, reject: (error: Error) => void): void;\r\n\r\n /** Return the channel via which this tile's content should be requested.\r\n * @note The channel *must* be registered with `IModelApp.tileAdmin.channels`.\r\n * @see [[TileRequestChannels.getForHttp]] to create a channel that requests content over HTTP.\r\n * @see [[TileAdmin.channels]].\r\n * @public\r\n */\r\n public abstract get channel(): TileRequestChannel;\r\n\r\n /** Return a Promise that resolves to the raw data representing this tile's content. */\r\n public abstract requestContent(isCanceled: () => boolean): Promise<TileRequest.Response>;\r\n\r\n /** Return a Promise that deserializes this tile's content from raw format produced by [[requestContent]]. */\r\n public abstract readContent(data: TileRequest.ResponseData, system: RenderSystem, isCanceled?: () => boolean): Promise<TileContent>;\r\n\r\n /** Constructor */\r\n protected constructor(params: TileParams, tree: TileTree) {\r\n this.tree = tree;\r\n this.parent = params.parent;\r\n this.depth = undefined !== this.parent ? this.parent.depth + 1 : 0;\r\n this.range = params.range;\r\n this._maximumSize = params.maximumSize;\r\n this._contentRange = params.contentRange;\r\n this._contentId = params.contentId;\r\n\r\n const center = this.range.low.interpolate(0.5, this.range.high);\r\n const radius = 0.5 * this.range.low.distance(this.range.high);\r\n this.boundingSphere = new BoundingSphere(center, radius);\r\n\r\n if (params.maximumSize <= 0)\r\n this.setIsReady();\r\n\r\n this._isLeaf = true === params.isLeaf;\r\n this._childrenLoadStatus = (undefined !== tree.maxDepth && this.depth < tree.maxDepth) ? TileTreeLoadStatus.NotLoaded : TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n /** Free memory-consuming resources owned by this tile to reduce memory pressure.\r\n * By default, this calls [[disposeContents]]. Problematic subclasses (MapTile, ImageryMapTile) may opt out for now by overriding this method to do nothing.\r\n * That option may be removed in the future.\r\n * @alpha\r\n */\r\n public freeMemory(): void {\r\n this.disposeContents();\r\n }\r\n\r\n /** Dispose of resources held by this tile. */\r\n public disposeContents(): void {\r\n this._state = TileState.NotReady;\r\n this._graphic = dispose(this._graphic);\r\n this._rangeGraphic = dispose(this._rangeGraphic);\r\n this._rangeGraphicType = TileBoundingBoxes.None;\r\n IModelApp.tileAdmin.onTileContentDisposed(this);\r\n }\r\n\r\n /** Dispose of resources held by this tile and all of its children, marking it and all of its children as \"abandoned\". */\r\n public dispose(): void {\r\n this.disposeContents();\r\n this._state = TileState.Abandoned;\r\n this.disposeChildren();\r\n }\r\n\r\n /** This tile's child tiles, if they exist and are loaded. The children are fully contained within this tile's volume and provide higher-resolution graphics than this tile.\r\n * @see [[loadChildren]]\r\n */\r\n public get children(): Tile[] | undefined { return this._children; }\r\n /** The [[IModelConnection]] to which this tile belongs. */\r\n public get iModel(): IModelConnection { return this.tree.iModel; }\r\n /** Uniquely identifies this tile's content. */\r\n public get contentId(): string { return this._contentId; }\r\n\r\n /** True if this tile's content is currently being loaded. */\r\n public get isLoading(): boolean { return TileLoadStatus.Loading === this.loadStatus; }\r\n /** True if a request for this tile's content has been enqueued. */\r\n public get isQueued(): boolean { return TileLoadStatus.Queued === this.loadStatus; }\r\n /** True if an attempt to load this tile's content failed. */\r\n public get isNotFound(): boolean { return TileLoadStatus.NotFound === this.loadStatus; }\r\n /** True if this tile's content has been loaded and is ready to be drawn. */\r\n public get isReady(): boolean { return TileLoadStatus.Ready === this.loadStatus; }\r\n\r\n /** @public */\r\n public setNotFound(): void {\r\n this._state = TileState.NotFound;\r\n }\r\n\r\n /** @public */\r\n public setIsReady(): void {\r\n if (this.hasGraphics)\r\n this._hadGraphics = true;\r\n\r\n this._state = TileState.Ready;\r\n IModelApp.tileAdmin.onTileContentLoaded(this);\r\n }\r\n\r\n /** @public */\r\n public setLeaf(): void {\r\n // Don't potentially re-request the children later.\r\n this.disposeChildren();\r\n this._isLeaf = true;\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n /** True if this tile has no child tiles. */\r\n public get isLeaf(): boolean { return this._isLeaf; }\r\n /** @internal */\r\n public get isEmpty(): boolean { return this.isReady && !this.hasGraphics && this.isLeaf; }\r\n /** @internal */\r\n public get isDisplayable(): boolean { return 0 < this.maximumSize; }\r\n /** The maximum size in pixels this tile can be drawn. If the size of the tile on screen exceeds this maximum, a higher-resolution tile should be drawn in its place. */\r\n public get maximumSize(): number { return this._maximumSize; }\r\n /** @internal */\r\n public get isParentDisplayable(): boolean { return undefined !== this.parent && this.parent.isDisplayable; }\r\n /** @internal */\r\n public get isUndisplayableRootTile(): boolean { return undefined === this.parent && !this.isDisplayable; }\r\n\r\n /** @internal */\r\n public get request(): TileRequest | undefined { return this._request; }\r\n public set request(request: TileRequest | undefined) {\r\n assert(undefined === request || undefined === this.request);\r\n this._request = request;\r\n }\r\n\r\n /** Compute the load priority of this tile. This determines which tiles' contents are requested first.\r\n * @param _viewports The subset of `users` that are [[Viewport]]s - typically, these viewports want to display the tile's content.\r\n * @param users The [[TileUser]]s that are currently using the tile for some purpose, such as displaying its content.\r\n * @returns The priority.\r\n * @see [[TileLoadPriority]] for suggested priority values.\r\n */\r\n public computeLoadPriority(_viewports: Iterable<Viewport>, _users: Iterable<TileUser>): number {\r\n return this.depth;\r\n }\r\n\r\n /** True if this tile has graphics ready to draw. */\r\n public get hasGraphics(): boolean { return undefined !== this._graphic; }\r\n /** True if this tile has a known volume tightly encompassing its graphics. */\r\n public get hasContentRange(): boolean { return undefined !== this._contentRange; }\r\n /** A volume no larger than this tile's `range`, and optionally more tightly encompassing its contents, used for more accurate culling. */\r\n public get contentRange(): ElementAlignedBox3d {\r\n if (undefined !== this._contentRange)\r\n return this._contentRange;\r\n else if (undefined === this.parent && undefined !== this.tree.contentRange)\r\n return this.tree.contentRange;\r\n else\r\n return this.range;\r\n }\r\n\r\n /** Tile contents are loaded asynchronously on demand. This member tracks the current loading status of this tile's contents. */\r\n public get loadStatus(): TileLoadStatus {\r\n switch (this._state) {\r\n case TileState.NotReady: {\r\n if (undefined === this.request)\r\n return TileLoadStatus.NotLoaded;\r\n else if (TileRequest.State.Loading === this.request.state)\r\n return TileLoadStatus.Loading;\r\n\r\n assert(TileRequest.State.Completed !== this.request.state && TileRequest.State.Failed !== this.request.state); // this.request should be undefined in these cases...\r\n return TileLoadStatus.Queued;\r\n }\r\n case TileState.Ready: {\r\n assert(undefined === this.request);\r\n return TileLoadStatus.Ready;\r\n }\r\n case TileState.NotFound: {\r\n assert(undefined === this.request);\r\n return TileLoadStatus.NotFound;\r\n }\r\n default: {\r\n assert(TileState.Abandoned === this._state);\r\n return TileLoadStatus.Abandoned;\r\n }\r\n }\r\n }\r\n\r\n /** Produce the graphics that should be drawn. */\r\n public produceGraphics(): RenderGraphic | undefined {\r\n return this._graphic;\r\n }\r\n\r\n protected setGraphic(graphic: RenderGraphic | undefined): void {\r\n dispose(this._graphic);\r\n this._graphic = graphic;\r\n this.setIsReady();\r\n }\r\n\r\n /** Set this tile's content to the result of [[readContent]] */\r\n public setContent(content: TileContent): void {\r\n const { graphic, isLeaf, contentRange } = content;\r\n this.setGraphic(graphic);\r\n\r\n if (undefined !== isLeaf && isLeaf !== this._isLeaf) {\r\n if (isLeaf)\r\n this.setLeaf();\r\n else\r\n this._isLeaf = false;\r\n }\r\n\r\n if (undefined !== contentRange)\r\n this._contentRange = contentRange;\r\n\r\n this.setIsReady();\r\n }\r\n\r\n /** Disclose any resources owned by this tile, other than its [[RenderGraphic]].\r\n * @internal\r\n */\r\n protected _collectStatistics(_stats: RenderMemory.Statistics): void { }\r\n\r\n /** Disclose resources owned by this tile and (by default) all of its child tiles.\r\n * @note Do not override this method! Override `_collectStatistics` instead.\r\n * @internal\r\n */\r\n public collectStatistics(stats: RenderMemory.Statistics, includeChildren = true): void {\r\n if (undefined !== this._graphic)\r\n this._graphic.collectStatistics(stats);\r\n\r\n this._collectStatistics(stats);\r\n if (!includeChildren)\r\n return;\r\n\r\n const children = this.children;\r\n if (undefined !== children)\r\n for (const child of children)\r\n child.collectStatistics(stats);\r\n }\r\n\r\n /** If this tile's child tiles have not yet been requested, enqueue an asynchronous request to load them.\r\n * @note This function itself is *not* asynchronous - it immediately returns the current loading status.\r\n * @note Do not override this method - implement [[_loadChildren]].\r\n */\r\n protected loadChildren(): TileTreeLoadStatus {\r\n if (this._childrenLoadStatus !== TileTreeLoadStatus.NotLoaded)\r\n return this._childrenLoadStatus;\r\n\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loading;\r\n\r\n this._loadChildren((children: Tile[] | undefined) => {\r\n this._children = children;\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loaded;\r\n\r\n if (undefined === children || 0 === children.length)\r\n this._isLeaf = true;\r\n\r\n IModelApp.tileAdmin.onTileChildrenLoad.raiseEvent(this);\r\n }, (_error: Error) => {\r\n this._isLeaf = true;\r\n this._childrenLoadStatus = TileTreeLoadStatus.NotFound;\r\n\r\n IModelApp.tileAdmin.onTileChildrenLoad.raiseEvent(this);\r\n });\r\n\r\n return this._childrenLoadStatus;\r\n }\r\n\r\n /** Dispose of this tile's child tiles and mark them as \"not loaded\". */\r\n protected disposeChildren(): void {\r\n const children = this.children;\r\n if (undefined === children)\r\n return;\r\n\r\n for (const child of children)\r\n child.dispose();\r\n\r\n this._childrenLoadStatus = TileTreeLoadStatus.NotLoaded;\r\n this._children = undefined;\r\n }\r\n\r\n /** Returns true if this tile's bounding volume is culled by the frustum or clip volumes specified by `args`. */\r\n protected isRegionCulled(args: TileDrawArgs): boolean {\r\n return this.isCulled(this.range, args, true, this.boundingSphere);\r\n }\r\n\r\n /** Returns true if this tile's content bounding volume is culled by the frustum or clip volumes specified by `args`. */\r\n protected isContentCulled(args: TileDrawArgs): boolean {\r\n return this.isCulled(this.contentRange, args, false);\r\n }\r\n\r\n private isCulled(range: ElementAlignedBox3d, args: TileDrawArgs, testClipIntersection: boolean, sphere?: BoundingSphere) {\r\n const box = Frustum.fromRange(range, scratchRootFrustum);\r\n return this.isFrustumCulled(box, args, testClipIntersection, sphere);\r\n }\r\n\r\n protected isFrustumCulled(box: Frustum, args: TileDrawArgs, testClipIntersection: boolean, sphere?: BoundingSphere) {\r\n const worldBox = box.transformBy(args.location, scratchWorldFrustum);\r\n const worldSphere = sphere?.transformBy(args.location, scratchWorldSphere);\r\n\r\n // Test against frustum.\r\n if (FrustumPlanes.Containment.Outside === args.frustumPlanes.computeFrustumContainment(worldBox, worldSphere))\r\n return true;\r\n\r\n // Test against TileTree's own clip volume, if any.\r\n if (undefined !== args.clip && ClipPlaneContainment.StronglyOutside === args.clip.classifyPointContainment(worldBox.points))\r\n return true;\r\n\r\n // Test against view clip, if any (will be undefined if TileTree does not want view clip applied to it).\r\n if (undefined !== args.viewClip && ClipPlaneContainment.StronglyOutside === args.viewClip.classifyPointContainment(worldBox.points))\r\n return true;\r\n\r\n // Test against intersection clip - reject if tile doesn't intersect (used for section-cut graphics).\r\n if (testClipIntersection && undefined !== args.intersectionClip && ClipPlaneContainment.Ambiguous !== args.intersectionClip.classifyPointContainment(worldBox.points))\r\n return true;\r\n\r\n return false;\r\n }\r\n\r\n /** Determine the visibility of this tile according to the specified args. */\r\n public computeVisibility(args: TileDrawArgs): TileVisibility {\r\n if (this.isEmpty)\r\n return TileVisibility.OutsideFrustum;\r\n\r\n if (args.boundingRange && !args.boundingRange.intersectsRange(this.range))\r\n return TileVisibility.OutsideFrustum;\r\n\r\n // NB: We test for region culling before isDisplayable - otherwise we will never unload children of undisplayed tiles when\r\n // they are outside frustum\r\n if (this.isRegionCulled(args))\r\n return TileVisibility.OutsideFrustum;\r\n\r\n // some nodes are merely for structure and don't have any geometry\r\n if (!this.isDisplayable)\r\n return TileVisibility.TooCoarse;\r\n\r\n if (this.isLeaf) {\r\n if (this.hasContentRange && this.isContentCulled(args))\r\n return TileVisibility.OutsideFrustum;\r\n else\r\n return TileVisibility.Visible;\r\n }\r\n\r\n const pixelSize = args.getPixelSize(this) * args.pixelSizeScaleFactor;\r\n const maxSize = this.maximumSize * args.tileSizeModifier;\r\n\r\n return pixelSize > maxSize ? TileVisibility.TooCoarse : TileVisibility.Visible;\r\n }\r\n\r\n /** @internal */\r\n public extendRangeForContent(range: Range3d, matrix: Matrix4d, treeTransform: Transform, frustumPlanes?: FrustumPlanes): void {\r\n if (this.isEmpty || this.contentRange.isNull)\r\n return;\r\n\r\n const box = Frustum.fromRange(this.contentRange, scratchFrustum);\r\n box.transformBy(treeTransform, box);\r\n if (frustumPlanes !== undefined && FrustumPlanes.Containment.Outside === frustumPlanes.computeFrustumContainment(box))\r\n return;\r\n\r\n if (this.children === undefined) {\r\n for (const boxPoint of box.points) {\r\n const pt = matrix.multiplyPoint3d(boxPoint, 1, scratchPoint4d);\r\n if (pt.w > .0001)\r\n range.extendXYZW(pt.x, pt.y, pt.z, pt.w);\r\n else\r\n range.high.z = Math.max(1.0, range.high.z); // behind eye plane...\r\n }\r\n } else {\r\n for (const child of this.children)\r\n child.extendRangeForContent(range, matrix, treeTransform, frustumPlanes);\r\n }\r\n }\r\n\r\n /** Primarily for debugging purposes, compute the number of tiles below this one in the [[TileTree]]. */\r\n public countDescendants(): number {\r\n const children = this.children;\r\n if (undefined === children || 0 === children.length)\r\n return 0;\r\n\r\n let count = 0;\r\n for (const child of children)\r\n count += child.countDescendants();\r\n\r\n return count;\r\n }\r\n\r\n /** Output this tile's graphics. */\r\n public drawGraphics(args: TileDrawArgs): void {\r\n const gfx = this.produceGraphics();\r\n if (undefined === gfx)\r\n return;\r\n\r\n args.graphics.add(gfx);\r\n const rangeGfx = this.getRangeGraphic(args.context);\r\n if (undefined !== rangeGfx)\r\n args.graphics.add(rangeGfx);\r\n }\r\n\r\n /** @internal */\r\n protected get rangeGraphicColor(): ColorDef {\r\n return this.isLeaf ? ColorDef.blue : ColorDef.green;\r\n }\r\n\r\n /** @internal */\r\n public getRangeGraphic(context: SceneContext): RenderGraphic | undefined {\r\n const type = context.viewport.debugBoundingBoxes;\r\n if (type === this._rangeGraphicType)\r\n return this._rangeGraphic;\r\n\r\n this._rangeGraphic = dispose(this._rangeGraphic);\r\n this._rangeGraphicType = type;\r\n if (TileBoundingBoxes.None !== type) {\r\n const builder = context.createSceneGraphicBuilder();\r\n this.addRangeGraphic(builder, type);\r\n this._rangeGraphic = builder.finish();\r\n }\r\n\r\n return this._rangeGraphic;\r\n }\r\n\r\n /** @internal */\r\n protected addRangeGraphic(builder: GraphicBuilder, type: TileBoundingBoxes): void {\r\n if (TileBoundingBoxes.Both === type) {\r\n builder.setSymbology(ColorDef.blue, ColorDef.blue, 1);\r\n addRangeGraphic(builder, this.range, this.tree.is2d);\r\n\r\n if (this.hasContentRange) {\r\n builder.setSymbology(ColorDef.red, ColorDef.red, 1);\r\n addRangeGraphic(builder, this.contentRange, this.tree.is2d);\r\n }\r\n } else if (TileBoundingBoxes.Sphere === type) {\r\n builder.setSymbology(ColorDef.green, ColorDef.green, 1);\r\n\r\n const x = new Vector3d(this.radius, 0, 0);\r\n const y = new Vector3d(0, this.radius, 0);\r\n const z = new Vector3d(0, 0, this.radius);\r\n\r\n builder.addArc(Arc3d.create(this.center, x, y), false, false);\r\n builder.addArc(Arc3d.create(this.center, x, z), false, false);\r\n builder.addArc(Arc3d.create(this.center, y, z), false, false);\r\n } else {\r\n const color = this.rangeGraphicColor;\r\n builder.setSymbology(color, color, 1);\r\n const range = TileBoundingBoxes.Content === type ? this.contentRange : this.range;\r\n addRangeGraphic(builder, range, this.tree.is2d);\r\n }\r\n }\r\n\r\n /** Optional corners used to compute the screen size of the tile. These are used, e.g., by reality tiles with oriented bounding boxes to\r\n * produce more accurate size calculation.\r\n */\r\n public getSizeProjectionCorners(): Point3d[] | undefined { return undefined; }\r\n}\r\n\r\n/** Describes the current status of a [[Tile]]'s content. Tile content is loaded via an asynchronous [[TileRequest]].\r\n * @see [[Tile.loadStatus]].\r\n * @public\r\n */\r\nexport enum TileLoadStatus {\r\n /** No attempt to load the tile's content has been made, or the tile has since been unloaded. It currently has no graphics. */\r\n NotLoaded = 0,\r\n /** A request has been dispatched to load the tile's contents, and a response is pending. */\r\n Queued = 1,\r\n /** A response has been received and the tile's graphics and other data are being loaded on the frontend. */\r\n Loading = 2,\r\n /** The tile has been loaded, and if the tile is displayable it has graphics. */\r\n Ready = 3,\r\n /** A request to load the tile's contents failed. */\r\n NotFound = 4,\r\n /** The tile has been disposed. */\r\n Abandoned = 5,\r\n}\r\n\r\n/**\r\n * Describes the visibility of a tile based on its size and a view frustum.\r\n * @public\r\n */\r\nexport enum TileVisibility {\r\n /** The tile is entirely outside of the viewing frustum. */\r\n OutsideFrustum,\r\n /** The tile's graphics are of too low a resolution for the viewing frustum. */\r\n TooCoarse,\r\n /** The tile's graphics are of appropriate resolution for the viewing frustum. */\r\n Visible,\r\n}\r\n\r\n/**\r\n * Loosely describes the \"importance\" of a [[Tile]]. Requests for tiles of greater \"importance\" are prioritized for loading.\r\n * @note A lower priority value indicates higher importance.\r\n * @public\r\n */\r\nexport enum TileLoadPriority {\r\n /** Contents of geometric models that are being interactively edited. */\r\n Dynamic = 5,\r\n /** Background map tiles. */\r\n Map = 15,\r\n /** Typically, tiles generated from the contents of geometric models. */\r\n Primary = 20,\r\n /** 3d terrain tiles onto which background map imagery is draped. */\r\n Terrain = 10,\r\n /** Typically, reality models. */\r\n Context = 40,\r\n /** Supplementary tiles used to classify the contents of geometric or reality models. */\r\n Classifier = 50,\r\n}\r\n\r\n/**\r\n * Options for displaying tile bounding boxes for debugging purposes.\r\n *\r\n * Bounding boxes are color-coded based on refinement strategy:\r\n * - Blue: A leaf tile (has no child tiles).\r\n * - Green: An ordinary tile (sub-divides into 4 or 8 child tiles).\r\n * - Red: A tile which refines to a single higher-resolution child occupying the same volume.\r\n * @see [[Viewport.debugBoundingBoxes]]\r\n * @public\r\n */\r\nexport enum TileBoundingBoxes {\r\n /** Display no bounding boxes */\r\n None = 0,\r\n /** Display boxes representing the tile's full volume. */\r\n Volume,\r\n /** Display boxes representing the range of the tile's contents, which may be tighter than (but never larger than) the tile's full volume. */\r\n Content,\r\n /** Display both volume and content boxes. */\r\n Both,\r\n /** Display boxes for direct children, where blue boxes indicate empty volumes. */\r\n ChildVolumes,\r\n /** Display bounding sphere. */\r\n Sphere,\r\n}\r\n\r\n// TileLoadStatus is computed from the combination of Tile._state and, if Tile.request is defined, Tile.request.state.\r\nconst enum TileState {// eslint-disable-line no-restricted-syntax\r\n NotReady = TileLoadStatus.NotLoaded, // Tile requires loading, but no request has yet completed.\r\n Ready = TileLoadStatus.Ready, // request completed successfully, or no loading was required.\r\n NotFound = TileLoadStatus.NotFound, // request failed.\r\n Abandoned = TileLoadStatus.Abandoned, // tile was abandoned.\r\n}\r\n"]}
|
|
@@ -5,8 +5,7 @@ import { BeDuration, BeEvent, Id64Array } from "@itwin/core-bentley";
|
|
|
5
5
|
import { ElementGraphicsRequestProps, IModelTileTreeProps, TileVersionInfo } from "@itwin/core-common";
|
|
6
6
|
import { IModelConnection } from "../IModelConnection";
|
|
7
7
|
import { Viewport } from "../Viewport";
|
|
8
|
-
import {
|
|
9
|
-
import { IModelTile, Tile, TileRequestChannels, TileTreeOwner, TileUsageMarker } from "./internal";
|
|
8
|
+
import { IModelTileTree, ReadonlyTileUserSet, Tile, TileRequestChannels, TileTreeOwner, TileUsageMarker, TileUser } from "./internal";
|
|
10
9
|
/** Details about any tiles not handled by [[TileAdmin]]. At this time, that means OrbitGT point cloud tiles.
|
|
11
10
|
* Used for bookkeeping by SelectedAndReadyTiles
|
|
12
11
|
* @internal
|
|
@@ -84,15 +83,16 @@ export interface GpuMemoryLimits {
|
|
|
84
83
|
export declare class TileAdmin {
|
|
85
84
|
private _versionInfo?;
|
|
86
85
|
readonly channels: TileRequestChannels;
|
|
87
|
-
private readonly
|
|
88
|
-
private readonly
|
|
89
|
-
private readonly
|
|
86
|
+
private readonly _users;
|
|
87
|
+
private readonly _requestsPerUser;
|
|
88
|
+
private readonly _tileUsagePerUser;
|
|
90
89
|
private readonly _selectedAndReady;
|
|
91
|
-
private readonly
|
|
90
|
+
private readonly _tileUserSetsForRequests;
|
|
92
91
|
private readonly _maxActiveTileTreePropsRequests;
|
|
93
92
|
private _defaultTileSizeModifier;
|
|
94
93
|
private readonly _retryInterval;
|
|
95
94
|
private readonly _enableInstancing;
|
|
95
|
+
private readonly _enableIndexedEdges;
|
|
96
96
|
/** @internal */
|
|
97
97
|
readonly enableImprovedElision: boolean;
|
|
98
98
|
/** @internal */
|
|
@@ -114,6 +114,8 @@ export declare class TileAdmin {
|
|
|
114
114
|
/** @internal */
|
|
115
115
|
readonly optimizeBRepProcessing: boolean;
|
|
116
116
|
/** @internal */
|
|
117
|
+
readonly useLargerTiles: boolean;
|
|
118
|
+
/** @internal */
|
|
117
119
|
readonly maximumLevelsToSkip: number;
|
|
118
120
|
/** @internal */
|
|
119
121
|
readonly mobileRealityTileMinToleranceRatio: number;
|
|
@@ -145,7 +147,7 @@ export declare class TileAdmin {
|
|
|
145
147
|
*/
|
|
146
148
|
static create(props?: TileAdmin.Props): Promise<TileAdmin>;
|
|
147
149
|
/** @internal */
|
|
148
|
-
get
|
|
150
|
+
get emptyTileUserSet(): ReadonlyTileUserSet;
|
|
149
151
|
/** Returns basic statistics about the TileAdmin's current state. */
|
|
150
152
|
get statistics(): TileAdmin.Statistics;
|
|
151
153
|
/** Resets the cumulative (per-session) statistics like totalCompletedRequests, totalEmptyTiles, etc. */
|
|
@@ -156,6 +158,8 @@ export declare class TileAdmin {
|
|
|
156
158
|
constructor(isMobile: boolean, rpcConcurrency: number | undefined, options?: TileAdmin.Props);
|
|
157
159
|
/** @internal */
|
|
158
160
|
get enableInstancing(): boolean;
|
|
161
|
+
/** @internal */
|
|
162
|
+
get enableIndexedEdges(): boolean;
|
|
159
163
|
/** Given a numeric combined major+minor tile format version (typically obtained from a request to the backend to query the maximum tile format version it supports),
|
|
160
164
|
* return the maximum *major* format version to be used to request tile content from the backend.
|
|
161
165
|
* @see [[TileAdmin.Props.maximumMajorTileFormatVersion]]
|
|
@@ -192,84 +196,83 @@ export declare class TileAdmin {
|
|
|
192
196
|
* @internal
|
|
193
197
|
*/
|
|
194
198
|
process(): void;
|
|
195
|
-
/** Iterate over the tiles that have content loaded but are not
|
|
199
|
+
/** Iterate over the tiles that have content loaded but are not in use by any [[TileUser]].
|
|
196
200
|
* @alpha
|
|
197
201
|
*/
|
|
198
202
|
get unselectedLoadedTiles(): Iterable<Tile>;
|
|
199
|
-
/** Iterate over the tiles that have content loaded and are
|
|
203
|
+
/** Iterate over the tiles that have content loaded and are in use by any [[TileUser]].
|
|
200
204
|
* @alpha
|
|
201
205
|
*/
|
|
202
206
|
get selectedLoadedTiles(): Iterable<Tile>;
|
|
203
207
|
/** Returns the number of pending and active requests associated with the specified viewport. */
|
|
204
208
|
getNumRequestsForViewport(vp: Viewport): number;
|
|
205
|
-
/** Returns the
|
|
209
|
+
/** Returns the number of pending and active requests associated with the specified user. */
|
|
210
|
+
getNumRequestsForUser(user: TileUser): number;
|
|
211
|
+
/** Returns the current set of Tiles requested by the specified TileUser.
|
|
206
212
|
* Do not modify the set or the Tiles.
|
|
207
213
|
* @internal
|
|
208
214
|
*/
|
|
209
|
-
|
|
210
|
-
/** Specifies the set of tiles currently requested for use by a
|
|
215
|
+
getRequestsForUser(user: TileUser): Set<Tile> | undefined;
|
|
216
|
+
/** Specifies the set of tiles currently requested for use by a TileUser. This set replaces any previously specified for the same user.
|
|
211
217
|
* The requests are not actually processed until the next call to [[TileAdmin.process].
|
|
212
|
-
* This is typically invoked when
|
|
218
|
+
* This is typically invoked when a viewport recreates its scene, e.g. in response to camera movement.
|
|
213
219
|
* @internal
|
|
214
220
|
*/
|
|
215
|
-
requestTiles(
|
|
216
|
-
/** Returns two sets of tiles associated with the specified
|
|
221
|
+
requestTiles(user: TileUser, tiles: Set<Tile>): void;
|
|
222
|
+
/** Returns two sets of tiles associated with the specified user - typically, a viewport's current scene.
|
|
217
223
|
* Do not modify the returned sets.
|
|
218
224
|
* @internal
|
|
219
225
|
*/
|
|
220
|
-
|
|
221
|
-
/** Adds the specified tiles to the sets of selected and ready tiles for the specified
|
|
226
|
+
getTilesForUser(user: TileUser): SelectedAndReadyTiles | undefined;
|
|
227
|
+
/** Adds the specified tiles to the sets of selected and ready tiles for the specified TileUser.
|
|
222
228
|
* The TileAdmin takes ownership of the `ready` set - do not modify it after passing it in.
|
|
223
229
|
* @internal
|
|
224
230
|
*/
|
|
225
|
-
|
|
231
|
+
addTilesForUser(user: TileUser, selected: Tile[], ready: Set<Tile>): void;
|
|
226
232
|
/** Disclose statistics about tiles that are handled externally from TileAdmin. At this time, that means OrbitGT point cloud tiles.
|
|
227
|
-
* These statistics are included in the return value of [[
|
|
233
|
+
* These statistics are included in the return value of [[getTilesForUser]].
|
|
228
234
|
* @internal
|
|
229
235
|
*/
|
|
230
|
-
|
|
231
|
-
/** Clears the sets of tiles associated with a
|
|
232
|
-
|
|
236
|
+
addExternalTilesForUser(user: TileUser, statistics: ExternalTileStatistics): void;
|
|
237
|
+
/** Clears the sets of tiles associated with a TileUser. */
|
|
238
|
+
clearTilesForUser(user: TileUser): void;
|
|
239
|
+
/** Indicates that the TileAdmin should cease tracking the specified TileUser, e.g. because it is about to be destroyed.
|
|
240
|
+
* Any requests which are of interest only to the specified user will be canceled.
|
|
233
241
|
*/
|
|
234
|
-
|
|
235
|
-
/** Indicates that the TileAdmin should
|
|
236
|
-
*
|
|
237
|
-
*
|
|
242
|
+
forgetUser(user: TileUser): void;
|
|
243
|
+
/** Indicates that the TileAdmin should track tile requests for the specified TileUser.
|
|
244
|
+
* This is invoked by the Viewport constructor and should be invoked manually for any non-Viewport TileUser.
|
|
245
|
+
* [[forgetUser]] must be later invoked to unregister the user.
|
|
238
246
|
*/
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* This is invoked by the Viewport constructor and should not be invoked from elsewhere.
|
|
242
|
-
* @internal
|
|
243
|
-
*/
|
|
244
|
-
registerViewport(vp: Viewport): void;
|
|
245
|
-
/** Iterable over all viewports registered with TileAdmin. This may include [[OffScreenViewports]].
|
|
247
|
+
registerUser(user: TileUser): void;
|
|
248
|
+
/** Iterable over all TileUsers registered with TileAdmin. This may include [[OffScreenViewports]].
|
|
246
249
|
* @alpha
|
|
247
250
|
*/
|
|
248
|
-
get
|
|
251
|
+
get tileUsers(): Iterable<TileUser>;
|
|
249
252
|
/** @internal */
|
|
250
253
|
invalidateAllScenes(): void;
|
|
251
254
|
/** @internal */
|
|
252
255
|
onShutDown(): void;
|
|
253
|
-
/** Returns the union of the input set and the input
|
|
256
|
+
/** Returns the union of the input set and the input TileUser, to be associated with a [[TileRequest]].
|
|
254
257
|
* @internal
|
|
255
258
|
*/
|
|
256
|
-
|
|
257
|
-
/** Marks the Tile as "in use" by the specified
|
|
258
|
-
* A tile will not be discarded while it is in use by any
|
|
259
|
+
getTileUserSetForRequest(user: TileUser, users?: ReadonlyTileUserSet): ReadonlyTileUserSet;
|
|
260
|
+
/** Marks the Tile as "in use" by the specified TileUser, where the tile defines what "in use" means.
|
|
261
|
+
* A tile will not be discarded while it is in use by any TileUser.
|
|
259
262
|
* @see [[TileTree.prune]]
|
|
260
263
|
* @internal
|
|
261
264
|
*/
|
|
262
|
-
|
|
263
|
-
/** Returns true if the Tile is currently in use by any
|
|
264
|
-
* @see [[
|
|
265
|
+
markTileUsed(marker: TileUsageMarker, user: TileUser): void;
|
|
266
|
+
/** Returns true if the Tile is currently in use by any TileUser.
|
|
267
|
+
* @see [[markTileUsed]].
|
|
265
268
|
* @internal
|
|
266
269
|
*/
|
|
267
270
|
isTileInUse(marker: TileUsageMarker): boolean;
|
|
268
|
-
/** Indicates that the TileAdmin should reset usage tracking for the specified
|
|
269
|
-
* to recreate its scene. Any tiles currently marked as "in use" by this
|
|
271
|
+
/** Indicates that the TileAdmin should reset usage tracking for the specified TileUser, e.g. because the user is a Viewport about
|
|
272
|
+
* to recreate its scene. Any tiles currently marked as "in use" by this user no longer will be.
|
|
270
273
|
* @internal
|
|
271
274
|
*/
|
|
272
|
-
|
|
275
|
+
clearUsageForUser(user: TileUser): void;
|
|
273
276
|
/** @internal */
|
|
274
277
|
requestTileTreeProps(iModel: IModelConnection, treeId: string): Promise<IModelTileTreeProps>;
|
|
275
278
|
/** Temporary workaround for authoring applications. Usage:
|
|
@@ -283,11 +286,28 @@ export declare class TileAdmin {
|
|
|
283
286
|
*/
|
|
284
287
|
purgeTileTrees(iModel: IModelConnection, modelIds: Id64Array | undefined): Promise<void>;
|
|
285
288
|
/** @internal */
|
|
286
|
-
requestCachedTileContent(tile:
|
|
289
|
+
requestCachedTileContent(tile: {
|
|
290
|
+
iModelTree: IModelTileTree;
|
|
291
|
+
contentId: string;
|
|
292
|
+
}): Promise<Uint8Array | undefined>;
|
|
287
293
|
/** @internal */
|
|
288
|
-
generateTileContent(tile:
|
|
294
|
+
generateTileContent(tile: {
|
|
295
|
+
iModelTree: IModelTileTree;
|
|
296
|
+
contentId: string;
|
|
297
|
+
request?: {
|
|
298
|
+
isCanceled: boolean;
|
|
299
|
+
};
|
|
300
|
+
}): Promise<Uint8Array>;
|
|
289
301
|
/** @internal */
|
|
290
|
-
|
|
302
|
+
getTileRequestProps(tile: {
|
|
303
|
+
iModelTree: IModelTileTree;
|
|
304
|
+
contentId: string;
|
|
305
|
+
}): {
|
|
306
|
+
tokenProps: import("@itwin/core-common").IModelRpcProps;
|
|
307
|
+
treeId: string;
|
|
308
|
+
contentId: string;
|
|
309
|
+
guid: string;
|
|
310
|
+
};
|
|
291
311
|
/** Request graphics for a single element or geometry stream.
|
|
292
312
|
* @see [[readElementGraphics]] to convert the result into a [[RenderGraphic]] for display.
|
|
293
313
|
* @public
|
|
@@ -323,7 +343,7 @@ export declare class TileAdmin {
|
|
|
323
343
|
freeMemory(): void;
|
|
324
344
|
private pruneAndPurge;
|
|
325
345
|
private processRequests;
|
|
326
|
-
private
|
|
346
|
+
private onUserIModelClosed;
|
|
327
347
|
private onIModelClosed;
|
|
328
348
|
private initializeRpc;
|
|
329
349
|
}
|
|
@@ -387,6 +407,12 @@ export declare namespace TileAdmin {
|
|
|
387
407
|
* Default value: true
|
|
388
408
|
*/
|
|
389
409
|
enableInstancing?: boolean;
|
|
410
|
+
/** If true - and WebGL 2 is supported by the [[RenderSystem]] - when tiles containing edges are requested, request that they produce
|
|
411
|
+
* indexed edges to reduce tile size and GPU memory consumption.
|
|
412
|
+
*
|
|
413
|
+
* Default value: true
|
|
414
|
+
*/
|
|
415
|
+
enableIndexedEdges?: boolean;
|
|
390
416
|
/** If true, during tile generation the backend will perform tighter intersection tests to more accurately identify empty sub-volumes.
|
|
391
417
|
* This can reduce the number of tiles requested and the number of tile requests that return no content.
|
|
392
418
|
*
|
|
@@ -435,6 +461,11 @@ export declare namespace TileAdmin {
|
|
|
435
461
|
* @internal
|
|
436
462
|
*/
|
|
437
463
|
optimizeBRepProcessing?: boolean;
|
|
464
|
+
/** Produce tiles that are larger in screen pixels to reduce the number of tiles requested and drawn by the scene.
|
|
465
|
+
* Default value: true
|
|
466
|
+
* @public
|
|
467
|
+
*/
|
|
468
|
+
useLargerTiles?: boolean;
|
|
438
469
|
/** Specifies that metadata about each [[IModelTile]] loaded during the session should be cached until the corresponding [[IModelConnection]] is closed; and
|
|
439
470
|
* that the graphics for cached tiles should never be reloaded when the tile is re-requested after having been discarded. This fulfills a niche scenario in
|
|
440
471
|
* which the application does not care about displaying the graphics, only about ensuring the tile content is generated and uploaded to blob storage.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TileAdmin.d.ts","sourceRoot":"","sources":["../../../src/tile/TileAdmin.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EACG,UAAU,EAAE,OAAO,EAA8B,SAAS,EACnE,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"TileAdmin.d.ts","sourceRoot":"","sources":["../../../src/tile/TileAdmin.ts"],"names":[],"mappings":"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"}
|