@itwin/core-frontend 3.0.0-extension.1 → 3.1.0-dev.0
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/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 +10 -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 +3 -3
- package/lib/cjs/DrawingViewState.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 +203 -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 +7 -6
- 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 +34 -6
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +42 -22
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/core-frontend.d.ts +16 -31
- package/lib/cjs/core-frontend.d.ts.map +1 -1
- package/lib/cjs/core-frontend.js +16 -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/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 +38 -7
- package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
- package/lib/cjs/render/RenderSystem.js +24 -9
- 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/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/Material.d.ts +1 -1
- package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Material.js.map +1 -1
- package/lib/cjs/render/webgl/Mesh.d.ts +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 +2 -2
- package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js +9 -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 +11 -10
- package/lib/cjs/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/render/webgl/System.js +32 -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 +26 -23
- 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/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.js +9 -3
- package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/tile/GltfReader.d.ts +594 -55
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +703 -264
- 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 +201 -69
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.js +8 -5
- 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 +3 -55
- package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js +57 -232
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.d.ts +1 -0
- package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +4 -3
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/Tile.d.ts.map +1 -1
- package/lib/cjs/tile/Tile.js +5 -1
- package/lib/cjs/tile/Tile.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.d.ts +37 -4
- package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
- package/lib/cjs/tile/TileAdmin.js +18 -12
- 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/TileTreeReference.d.ts +2 -0
- package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js +5 -0
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/internal.d.ts +4 -1
- package/lib/cjs/tile/internal.d.ts.map +1 -1
- package/lib/cjs/tile/internal.js +4 -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 +2 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +23 -44
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +3 -3
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.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 +4 -4
- package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +20 -24
- 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.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +4 -3
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js +2 -2
- package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +30 -21
- 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.js +1 -1
- 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/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 +10 -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 +3 -3
- package/lib/esm/DrawingViewState.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 +199 -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 +7 -6
- 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 +34 -6
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +43 -23
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/core-frontend.d.ts +16 -31
- package/lib/esm/core-frontend.d.ts.map +1 -1
- package/lib/esm/core-frontend.js +16 -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/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 +38 -7
- package/lib/esm/render/RenderSystem.d.ts.map +1 -1
- package/lib/esm/render/RenderSystem.js +24 -9
- 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/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/Material.d.ts +1 -1
- package/lib/esm/render/webgl/Material.d.ts.map +1 -1
- package/lib/esm/render/webgl/Material.js.map +1 -1
- package/lib/esm/render/webgl/Mesh.d.ts +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 +2 -2
- package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js +9 -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 +11 -10
- package/lib/esm/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/render/webgl/System.js +34 -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 +27 -24
- 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/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.js +9 -3
- package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/tile/GltfReader.d.ts +594 -55
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +678 -242
- 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 +198 -67
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.js +8 -5
- 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 +3 -55
- package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js +56 -230
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTileLoader.d.ts +1 -0
- package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +4 -3
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/Tile.d.ts.map +1 -1
- package/lib/esm/tile/Tile.js +5 -1
- package/lib/esm/tile/Tile.js.map +1 -1
- package/lib/esm/tile/TileAdmin.d.ts +37 -4
- package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
- package/lib/esm/tile/TileAdmin.js +19 -13
- 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/TileTreeReference.d.ts +2 -0
- package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/TileTreeReference.js +5 -0
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/internal.d.ts +4 -1
- package/lib/esm/tile/internal.d.ts.map +1 -1
- package/lib/esm/tile/internal.js +4 -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 +2 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +21 -42
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +2 -2
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.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 +4 -4
- package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +21 -25
- 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.map +1 -1
- package/lib/esm/tile/map/MapTile.js +4 -3
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.js +1 -1
- package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +30 -21
- 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.js +1 -1
- 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 +32 -27
- package/lib/cjs/RealityDataAccessProps.d.ts +0 -42
- 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/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 -22
- package/lib/cjs/extension/ExtensionHost.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionHost.js +0 -24
- 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 -71
- 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 -42
- 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/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 -22
- package/lib/esm/extension/ExtensionHost.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionHost.js +0 -20
- 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 -69
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderTarget.js","sourceRoot":"","sources":["../../../src/render/RenderTarget.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAyBH;;;GAGG;AACH,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,2BAA2B;IAC3B,2DAAG,CAAA;IACH,sCAAsC;IACtC,uEAAS,CAAA;IACT,yCAAyC;IACzC,2EAAW,CAAA;AACb,CAAC,EAPW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAO9B;AAsBD;;;;GAIG;AACH,MAAsB,YAAY;IACzB,qBAAqB,CAAC,GAAU,IAAkC,OAAO,SAAS,CAAC,CAAC,CAAC;IAO5F,IAAW,gBAAgB,KAAa,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5C,uBAAuB,CAAC,SAAiB,EAAE,KAAK,GAAG,IAAI;QAC5D,MAAM,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,YAAoB;QAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAC1G,CAAC;IAOD,IAAW,iBAAiB,KAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IACvF,IAAW,iBAAiB,CAAC,WAA8C,IAAI,CAAC;IAEhF,IAAW,gBAAgB,KAAa,OAAO,CAAC,CAAC,CAAC,CAAC;IACnD,IAAW,gBAAgB,CAAC,WAAmB,IAAI,CAAC;IAE7C,yBAAyB,CAAC,UAA+B,IAAI,CAAC;IAErE,wHAAwH;IACjH,kBAAkB,CAAC,QAAkC,IAAU,CAAC;IAChE,mBAAmB,CAAC,GAAe,IAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IAC9F,sBAAsB,CAAC,WAA+B,IAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IACjH,eAAe,CAAC,GAAe,IAAoC,OAAO,SAAS,CAAC,CAAC,CAAC;IAEtF,oBAAoB,CAAC,OAAoE;QAC9F,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAEM,OAAO,KAAW,CAAC;IACnB,KAAK,KAAW,CAAC;IAMjB,wBAAwB,CAAC,IAAgC,IAAU,CAAC;IACpE,YAAY,CAAC,QAAmB,IAAU,CAAC;IAC3C,UAAU,CAAC,UAAsB,EAAE,UAAkB,IAAU,CAAC;IAChE,cAAc,CAAC,SAAmB,EAAE,mBAA8C,IAAU,CAAC;IAE7F,SAAS,KAAW,CAAC;IAI5B,4CAA4C;IACrC,SAAS,CAAC,KAAe,EAAE,WAAoB,EAAE,eAAwB,IAA6B,OAAO,SAAS,CAAC,CAAC,CAAC;IACzH,iBAAiB,KAAwB,OAAO,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnF,iBAAiB,CAAC,MAA+B,IAAU,CAAC;IAEnE;;;OAGG;IACI,iBAAiB,CAAC,SAAkB,IAAmC,OAAO,SAAS,CAAC,CAAC,CAAC;IAEjG,IAAW,YAAY,KAA2C,OAAO,SAAS,CAAC,CAAC,CAAC;IAUrF;;OAEG;IACI,wBAAwB,CAAC,QAAkC,EAAE,OAAyB,EAAE,QAAsC;QACnI,QAAQ,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;CACF;AAvFD,oCAuFC","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 Rendering\r\n */\r\n\r\nimport { Id64String, IDisposable } from \"@itwin/core-bentley\";\r\nimport { Point2d, XAndY } from \"@itwin/core-geometry\";\r\nimport { Frustum, ImageBuffer, SpatialClassifier } from \"@itwin/core-common\";\r\nimport { HiliteSet } from \"../SelectionSet\";\r\nimport { SceneContext } from \"../ViewContext\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { ViewRect } from \"../ViewRect\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { CanvasDecoration } from \"./CanvasDecoration\";\r\nimport { Decorations } from \"./Decorations\";\r\nimport { FeatureSymbology } from \"./FeatureSymbology\";\r\nimport { AnimationBranchStates } from \"./GraphicBranch\";\r\nimport { CustomGraphicBuilderOptions, ViewportGraphicBuilderOptions } from \"./GraphicBuilder\";\r\nimport { Pixel } from \"./Pixel\";\r\nimport { GraphicList } from \"./RenderGraphic\";\r\nimport { RenderMemory } from \"./RenderMemory\";\r\nimport { RenderPlan } from \"./RenderPlan\";\r\nimport { RenderPlanarClassifier } from \"./RenderPlanarClassifier\";\r\nimport { RenderSystem, RenderTextureDrape } from \"./RenderSystem\";\r\nimport { Scene } from \"./Scene\";\r\nimport { QueryTileFeaturesOptions, QueryVisibleFeaturesCallback } from \"./VisibleFeature\";\r\nimport { FrameStatsCollector } from \"./FrameStats\";\r\n\r\n/** Used for debugging purposes, to toggle display of instanced or batched primitives.\r\n * @see [[RenderTargetDebugControl]].\r\n * @internal\r\n */\r\nexport enum PrimitiveVisibility {\r\n /** Draw all primitives. */\r\n All,\r\n /** Only draw instanced primitives. */\r\n Instanced,\r\n /** Only draw un-instanced primitives. */\r\n Uninstanced,\r\n}\r\n\r\n/** An interface optionally exposed by a RenderTarget that allows control of various debugging features.\r\n * @internal\r\n */\r\nexport interface RenderTargetDebugControl {\r\n /** If true, render to the screen as if rendering off-screen for readPixels(). */\r\n drawForReadPixels: boolean;\r\n primitiveVisibility: PrimitiveVisibility;\r\n vcSupportIntersectingVolumes: boolean;\r\n readonly shadowFrustum: Frustum | undefined;\r\n displayDrapeFrustum: boolean;\r\n /** Override device pixel ratio for on-screen targets only. This supersedes window.devicePixelRatio.\r\n * Undefined clears the override. Chiefly useful for tests.\r\n */\r\n devicePixelRatioOverride?: number;\r\n displayRealityTilePreload: boolean;\r\n displayRealityTileRanges: boolean;\r\n logRealityTiles: boolean;\r\n freezeRealityTiles: boolean;\r\n}\r\n\r\n/** A RenderTarget connects a [[Viewport]] to a WebGLRenderingContext to enable the viewport's contents to be displayed on the screen.\r\n * Application code rarely interacts directly with a RenderTarget - instead, it interacts with a Viewport which forwards requests to the implementation\r\n * of the RenderTarget.\r\n * @internal\r\n */\r\nexport abstract class RenderTarget implements IDisposable, RenderMemory.Consumer {\r\n public pickOverlayDecoration(_pt: XAndY): CanvasDecoration | undefined { return undefined; }\r\n\r\n public abstract get renderSystem(): RenderSystem;\r\n\r\n /** NB: *Device pixels*, not CSS pixels! */\r\n public abstract get viewRect(): ViewRect;\r\n\r\n public get devicePixelRatio(): number { return 1; }\r\n public cssPixelsToDevicePixels(cssPixels: number, floor = true): number {\r\n const pix = cssPixels * this.devicePixelRatio;\r\n return floor ? Math.floor(pix) : pix;\r\n }\r\n\r\n /** Given the size of a logical pixel in meters, convert it to the size of a physical pixel in meters, if [[RenderSystem.dpiAwareLOD]] is `true`.\r\n * Used when computing LOD for graphics.\r\n */\r\n public adjustPixelSizeForLOD(cssPixelSize: number): number {\r\n return this.renderSystem.dpiAwareLOD ? this.cssPixelsToDevicePixels(cssPixelSize, false) : cssPixelSize;\r\n }\r\n\r\n public abstract get wantInvertBlackBackground(): boolean;\r\n\r\n public abstract get analysisFraction(): number;\r\n public abstract set analysisFraction(fraction: number);\r\n\r\n public get animationBranches(): AnimationBranchStates | undefined { return undefined; }\r\n public set animationBranches(_transforms: AnimationBranchStates | undefined) { }\r\n\r\n public get antialiasSamples(): number { return 1; }\r\n public set antialiasSamples(_numSamples: number) { }\r\n\r\n public assignFrameStatsCollector(_collector: FrameStatsCollector) { }\r\n\r\n /** Update the solar shadow map. If a SceneContext is supplied, shadows are enabled; otherwise, shadows are disabled. */\r\n public updateSolarShadows(_context: SceneContext | undefined): void { }\r\n public getPlanarClassifier(_id: Id64String): RenderPlanarClassifier | undefined { return undefined; }\r\n public createPlanarClassifier(_properties?: SpatialClassifier): RenderPlanarClassifier | undefined { return undefined; }\r\n public getTextureDrape(_id: Id64String): RenderTextureDrape | undefined { return undefined; }\r\n\r\n public createGraphicBuilder(options: CustomGraphicBuilderOptions | ViewportGraphicBuilderOptions) {\r\n return this.renderSystem.createGraphic(options);\r\n }\r\n\r\n public dispose(): void { }\r\n public reset(): void { }\r\n public abstract changeScene(scene: Scene): void;\r\n public abstract changeDynamics(dynamics?: GraphicList): void;\r\n public abstract changeDecorations(decorations: Decorations): void;\r\n public abstract changeRenderPlan(plan: RenderPlan): void;\r\n public abstract drawFrame(sceneMilSecElapsed?: number): void;\r\n public overrideFeatureSymbology(_ovr: FeatureSymbology.Overrides): void { }\r\n public setHiliteSet(_hilited: HiliteSet): void { }\r\n public setFlashed(_elementId: Id64String, _intensity: number): void { }\r\n public onBeforeRender(_viewport: Viewport, _setSceneNeedRedraw: (redraw: boolean) => void): void { }\r\n public abstract setViewRect(_rect: ViewRect, _temporary: boolean): void;\r\n public onResized(): void { }\r\n public abstract updateViewRect(): boolean; // force a RenderTarget viewRect to resize if necessary since last draw\r\n /** `rect` is specified in *CSS* pixels. */\r\n public abstract readPixels(rect: ViewRect, selector: Pixel.Selector, receiver: Pixel.Receiver, excludeNonLocatable: boolean): void;\r\n /** `_rect` is specified in *CSS* pixels. */\r\n public readImage(_rect: ViewRect, _targetSize: Point2d, _flipVertically: boolean): ImageBuffer | undefined { return undefined; }\r\n public readImageToCanvas(): HTMLCanvasElement { return document.createElement(\"canvas\"); }\r\n public collectStatistics(_stats: RenderMemory.Statistics): void { }\r\n\r\n /** Specify whether webgl content should be rendered directly to the screen.\r\n * If rendering to screen becomes enabled, returns the canvas to which to render the webgl content.\r\n * Returns undefined if rendering to screen becomes disabled, or is not supported by this RenderTarget.\r\n */\r\n public setRenderToScreen(_toScreen: boolean): HTMLCanvasElement | undefined { return undefined; }\r\n\r\n public get debugControl(): RenderTargetDebugControl | undefined { return undefined; }\r\n\r\n /** An ordered list of names of screen-space post-processing effects to be applied to the image produced by this target.\r\n * The effects are applied in the order in which they appear in the list. Any names not corresponding to a registered effect are ignored.\r\n * This may have no effect if this target does not support screen-space effects.\r\n * @see [[RenderSystem.createScreenSpaceEffectBuilder]] to create and register new effects.\r\n */\r\n public abstract get screenSpaceEffects(): Iterable<string>;\r\n public abstract set screenSpaceEffects(_effectNames: Iterable<string>);\r\n\r\n /** Implementation for [[Viewport.queryVisibleFeatures]]. Not intended for direct usage. The returned iterable remains valid only for the duration of the\r\n * Viewport.queryVisibleFeatures call.\r\n */\r\n public queryVisibleTileFeatures(_options: QueryTileFeaturesOptions, _iModel: IModelConnection, callback: QueryVisibleFeaturesCallback): void {\r\n callback([]);\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"RenderTarget.js","sourceRoot":"","sources":["../../../src/render/RenderTarget.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAyBH;;;GAGG;AACH,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,2BAA2B;IAC3B,2DAAG,CAAA;IACH,sCAAsC;IACtC,uEAAS,CAAA;IACT,yCAAyC;IACzC,2EAAW,CAAA;AACb,CAAC,EAPW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAO9B;AA0BD;;;;GAIG;AACH,MAAsB,YAAY;IACzB,qBAAqB,CAAC,GAAU,IAAkC,OAAO,SAAS,CAAC,CAAC,CAAC;IAO5F,IAAW,gBAAgB,KAAa,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5C,uBAAuB,CAAC,SAAiB,EAAE,KAAK,GAAG,IAAI;QAC5D,MAAM,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,YAAoB;QAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAC1G,CAAC;IAOD,IAAW,iBAAiB,KAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IACvF,IAAW,iBAAiB,CAAC,WAA8C,IAAI,CAAC;IAEhF,IAAW,gBAAgB,KAAa,OAAO,CAAC,CAAC,CAAC,CAAC;IACnD,IAAW,gBAAgB,CAAC,WAAmB,IAAI,CAAC;IAE7C,yBAAyB,CAAC,UAA+B,IAAI,CAAC;IAErE,wHAAwH;IACjH,kBAAkB,CAAC,QAAkC,IAAU,CAAC;IAChE,mBAAmB,CAAC,GAAe,IAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IAC9F,sBAAsB,CAAC,WAA+B,IAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IACjH,eAAe,CAAC,GAAe,IAAoC,OAAO,SAAS,CAAC,CAAC,CAAC;IAEtF,oBAAoB,CAAC,OAAoE;QAC9F,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAEM,OAAO,KAAW,CAAC;IACnB,KAAK,KAAW,CAAC;IAMjB,wBAAwB,CAAC,IAAgC,IAAU,CAAC;IACpE,YAAY,CAAC,QAAmB,IAAU,CAAC;IAC3C,UAAU,CAAC,UAAsB,EAAE,UAAkB,IAAU,CAAC;IAChE,cAAc,CAAC,SAAmB,EAAE,mBAA8C,IAAU,CAAC;IAE7F,SAAS,KAAW,CAAC;IAI5B,sCAAsC;IAC/B,SAAS,CAAC,KAAe,EAAE,WAAoB,EAAE,eAAwB,IAA6B,OAAO,SAAS,CAAC,CAAC,CAAC;IACzH,eAAe,CAAC,KAA2B,IAA6B,OAAO,SAAS,CAAC,CAAC,CAAC;IAC3F,iBAAiB,KAAwB,OAAO,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnF,iBAAiB,CAAC,MAA+B,IAAU,CAAC;IAEnE;;;OAGG;IACI,iBAAiB,CAAC,SAAkB,IAAmC,OAAO,SAAS,CAAC,CAAC,CAAC;IAEjG,IAAW,YAAY,KAA2C,OAAO,SAAS,CAAC,CAAC,CAAC;IAUrF;;OAEG;IACI,wBAAwB,CAAC,QAAkC,EAAE,OAAyB,EAAE,QAAsC;QACnI,QAAQ,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;CACF;AAxFD,oCAwFC","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 Rendering\r\n */\r\n\r\nimport { Id64String, IDisposable } from \"@itwin/core-bentley\";\r\nimport { Point2d, XAndY } from \"@itwin/core-geometry\";\r\nimport { Frustum, ImageBuffer, SpatialClassifier } from \"@itwin/core-common\";\r\nimport { HiliteSet } from \"../SelectionSet\";\r\nimport { SceneContext } from \"../ViewContext\";\r\nimport { ReadImageBufferArgs, Viewport } from \"../Viewport\";\r\nimport { ViewRect } from \"../ViewRect\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { CanvasDecoration } from \"./CanvasDecoration\";\r\nimport { Decorations } from \"./Decorations\";\r\nimport { FeatureSymbology } from \"./FeatureSymbology\";\r\nimport { AnimationBranchStates } from \"./GraphicBranch\";\r\nimport { CustomGraphicBuilderOptions, ViewportGraphicBuilderOptions } from \"./GraphicBuilder\";\r\nimport { Pixel } from \"./Pixel\";\r\nimport { GraphicList } from \"./RenderGraphic\";\r\nimport { RenderMemory } from \"./RenderMemory\";\r\nimport { RenderPlan } from \"./RenderPlan\";\r\nimport { RenderPlanarClassifier } from \"./RenderPlanarClassifier\";\r\nimport { RenderSystem, RenderTextureDrape } from \"./RenderSystem\";\r\nimport { Scene } from \"./Scene\";\r\nimport { QueryTileFeaturesOptions, QueryVisibleFeaturesCallback } from \"./VisibleFeature\";\r\nimport { FrameStatsCollector } from \"./FrameStats\";\r\n\r\n/** Used for debugging purposes, to toggle display of instanced or batched primitives.\r\n * @see [[RenderTargetDebugControl]].\r\n * @internal\r\n */\r\nexport enum PrimitiveVisibility {\r\n /** Draw all primitives. */\r\n All,\r\n /** Only draw instanced primitives. */\r\n Instanced,\r\n /** Only draw un-instanced primitives. */\r\n Uninstanced,\r\n}\r\n\r\n/** An interface optionally exposed by a RenderTarget that allows control of various debugging features.\r\n * @internal\r\n */\r\nexport interface RenderTargetDebugControl {\r\n /** If true, render to the screen as if rendering off-screen for readPixels(). */\r\n drawForReadPixels: boolean;\r\n primitiveVisibility: PrimitiveVisibility;\r\n vcSupportIntersectingVolumes: boolean;\r\n readonly shadowFrustum: Frustum | undefined;\r\n displayDrapeFrustum: boolean;\r\n /** Override device pixel ratio for on-screen targets only. This supersedes window.devicePixelRatio.\r\n * Undefined clears the override. Chiefly useful for tests.\r\n */\r\n devicePixelRatioOverride?: number;\r\n displayRealityTilePreload: boolean;\r\n displayRealityTileRanges: boolean;\r\n logRealityTiles: boolean;\r\n freezeRealityTiles: boolean;\r\n /** Obtain a summary of the render commands required to draw the scene currently displayed.\r\n * Each entry specifies the type of command and the number of such commands required by the current scene.\r\n */\r\n getRenderCommands(): Array<{ name: string, count: number }>;\r\n}\r\n\r\n/** A RenderTarget connects a [[Viewport]] to a WebGLRenderingContext to enable the viewport's contents to be displayed on the screen.\r\n * Application code rarely interacts directly with a RenderTarget - instead, it interacts with a Viewport which forwards requests to the implementation\r\n * of the RenderTarget.\r\n * @internal\r\n */\r\nexport abstract class RenderTarget implements IDisposable, RenderMemory.Consumer {\r\n public pickOverlayDecoration(_pt: XAndY): CanvasDecoration | undefined { return undefined; }\r\n\r\n public abstract get renderSystem(): RenderSystem;\r\n\r\n /** NB: *Device pixels*, not CSS pixels! */\r\n public abstract get viewRect(): ViewRect;\r\n\r\n public get devicePixelRatio(): number { return 1; }\r\n public cssPixelsToDevicePixels(cssPixels: number, floor = true): number {\r\n const pix = cssPixels * this.devicePixelRatio;\r\n return floor ? Math.floor(pix) : pix;\r\n }\r\n\r\n /** Given the size of a logical pixel in meters, convert it to the size of a physical pixel in meters, if [[RenderSystem.dpiAwareLOD]] is `true`.\r\n * Used when computing LOD for graphics.\r\n */\r\n public adjustPixelSizeForLOD(cssPixelSize: number): number {\r\n return this.renderSystem.dpiAwareLOD ? this.cssPixelsToDevicePixels(cssPixelSize, false) : cssPixelSize;\r\n }\r\n\r\n public abstract get wantInvertBlackBackground(): boolean;\r\n\r\n public abstract get analysisFraction(): number;\r\n public abstract set analysisFraction(fraction: number);\r\n\r\n public get animationBranches(): AnimationBranchStates | undefined { return undefined; }\r\n public set animationBranches(_transforms: AnimationBranchStates | undefined) { }\r\n\r\n public get antialiasSamples(): number { return 1; }\r\n public set antialiasSamples(_numSamples: number) { }\r\n\r\n public assignFrameStatsCollector(_collector: FrameStatsCollector) { }\r\n\r\n /** Update the solar shadow map. If a SceneContext is supplied, shadows are enabled; otherwise, shadows are disabled. */\r\n public updateSolarShadows(_context: SceneContext | undefined): void { }\r\n public getPlanarClassifier(_id: Id64String): RenderPlanarClassifier | undefined { return undefined; }\r\n public createPlanarClassifier(_properties?: SpatialClassifier): RenderPlanarClassifier | undefined { return undefined; }\r\n public getTextureDrape(_id: Id64String): RenderTextureDrape | undefined { return undefined; }\r\n\r\n public createGraphicBuilder(options: CustomGraphicBuilderOptions | ViewportGraphicBuilderOptions) {\r\n return this.renderSystem.createGraphic(options);\r\n }\r\n\r\n public dispose(): void { }\r\n public reset(): void { }\r\n public abstract changeScene(scene: Scene): void;\r\n public abstract changeDynamics(dynamics?: GraphicList): void;\r\n public abstract changeDecorations(decorations: Decorations): void;\r\n public abstract changeRenderPlan(plan: RenderPlan): void;\r\n public abstract drawFrame(sceneMilSecElapsed?: number): void;\r\n public overrideFeatureSymbology(_ovr: FeatureSymbology.Overrides): void { }\r\n public setHiliteSet(_hilited: HiliteSet): void { }\r\n public setFlashed(_elementId: Id64String, _intensity: number): void { }\r\n public onBeforeRender(_viewport: Viewport, _setSceneNeedRedraw: (redraw: boolean) => void): void { }\r\n public abstract setViewRect(_rect: ViewRect, _temporary: boolean): void;\r\n public onResized(): void { }\r\n public abstract updateViewRect(): boolean; // force a RenderTarget viewRect to resize if necessary since last draw\r\n /** `rect` is specified in *CSS* pixels. */\r\n public abstract readPixels(rect: ViewRect, selector: Pixel.Selector, receiver: Pixel.Receiver, excludeNonLocatable: boolean): void;\r\n /** @deprecated use readImageBuffer */\r\n public readImage(_rect: ViewRect, _targetSize: Point2d, _flipVertically: boolean): ImageBuffer | undefined { return undefined; }\r\n public readImageBuffer(_args?: ReadImageBufferArgs): ImageBuffer | undefined { return undefined; }\r\n public readImageToCanvas(): HTMLCanvasElement { return document.createElement(\"canvas\"); }\r\n public collectStatistics(_stats: RenderMemory.Statistics): void { }\r\n\r\n /** Specify whether webgl content should be rendered directly to the screen.\r\n * If rendering to screen becomes enabled, returns the canvas to which to render the webgl content.\r\n * Returns undefined if rendering to screen becomes disabled, or is not supported by this RenderTarget.\r\n */\r\n public setRenderToScreen(_toScreen: boolean): HTMLCanvasElement | undefined { return undefined; }\r\n\r\n public get debugControl(): RenderTargetDebugControl | undefined { return undefined; }\r\n\r\n /** An ordered list of names of screen-space post-processing effects to be applied to the image produced by this target.\r\n * The effects are applied in the order in which they appear in the list. Any names not corresponding to a registered effect are ignored.\r\n * This may have no effect if this target does not support screen-space effects.\r\n * @see [[RenderSystem.createScreenSpaceEffectBuilder]] to create and register new effects.\r\n */\r\n public abstract get screenSpaceEffects(): Iterable<string>;\r\n public abstract set screenSpaceEffects(_effectNames: Iterable<string>);\r\n\r\n /** Implementation for [[Viewport.queryVisibleFeatures]]. Not intended for direct usage. The returned iterable remains valid only for the duration of the\r\n * Viewport.queryVisibleFeatures call.\r\n */\r\n public queryVisibleTileFeatures(_options: QueryTileFeaturesOptions, _iModel: IModelConnection, callback: QueryVisibleFeaturesCallback): void {\r\n callback([]);\r\n }\r\n}\r\n"]}
|
|
@@ -1,23 +1,8 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module Rendering
|
|
3
3
|
*/
|
|
4
|
-
import { Gradient, ImageBuffer, ImageSource, RenderTexture } from "@itwin/core-common";
|
|
4
|
+
import { Gradient, ImageBuffer, ImageSource, RenderTexture, TextureTransparency } from "@itwin/core-common";
|
|
5
5
|
import { IModelConnection } from "../IModelConnection";
|
|
6
|
-
/** Describes the type of transparency in the pixels of a [[TextureImage]].
|
|
7
|
-
* Each pixel can be classified as either 100% opaque, 100% transparent, or semi-transparent ("translucent").
|
|
8
|
-
* The transparency of the image as a whole is based on the combination of pixel transparencies.
|
|
9
|
-
* If this information is known, it should be supplied when creating a texture for more efficient rendering.
|
|
10
|
-
* @see [[TextureImage.transparency]].
|
|
11
|
-
* @public
|
|
12
|
-
*/
|
|
13
|
-
export declare enum TextureTransparency {
|
|
14
|
-
/** All pixels are either 100% opaque or 100% transparent. */
|
|
15
|
-
Opaque = 0,
|
|
16
|
-
/** All pixels are fully or partially transparent - no opaque pixels are present. */
|
|
17
|
-
Translucent = 1,
|
|
18
|
-
/** Both opaque and semi-transparent pixels are present. Rendering this type of transparency is somewhat more expensive. */
|
|
19
|
-
Mixed = 2
|
|
20
|
-
}
|
|
21
6
|
/** A key that uniquely identifies a [RenderTexture]($common) in the context of an [[IModelConnection]], used for caching.
|
|
22
7
|
* @see [[TextureCacheOwnership]].
|
|
23
8
|
* @public
|
|
@@ -86,7 +71,7 @@ export interface CreateTextureFromSourceArgs {
|
|
|
86
71
|
/** The image from which to create the texture. */
|
|
87
72
|
source: ImageSource;
|
|
88
73
|
/** Describes the transparency of the image. If this information can be supplied, it can improve performance.
|
|
89
|
-
* If not supplied, PNGs will default to [
|
|
74
|
+
* If not supplied, PNGs will default to [TextureTransparency.Mixed]($common) and JPEGs (which do not support transparency) to [TextureTransparency.Opaque]($common).
|
|
90
75
|
*/
|
|
91
76
|
transparency?: TextureTransparency;
|
|
92
77
|
/** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderTexture.d.ts","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"RenderTexture.d.ts","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;GAGG;AACH,oBAAY,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,sDAAsD;IACtD,MAAM,EAAE,gBAAgB,CAAC;IACzB,0FAA0F;IAC1F,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,oBAAY,gBAAgB,GAAG,qBAAqB,GAAG,UAAU,CAAC;AAElE;;;GAGG;AACH,oBAAY,kBAAkB,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,kDAAkD;IAClD,MAAM,EAAE,kBAAkB,CAAC;IAC3B;;OAEG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,IAAI,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC;IAC1B,kDAAkD;IAClD,KAAK,EAAE,YAAY,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,oFAAoF;IACpF,IAAI,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC;IAC1B,kDAAkD;IAClD,MAAM,EAAE,WAAW,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,qBAAqB,GAAG;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,CAAC;CAClE"}
|
|
@@ -7,21 +7,4 @@
|
|
|
7
7
|
* @module Rendering
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.TextureTransparency = void 0;
|
|
11
|
-
/** Describes the type of transparency in the pixels of a [[TextureImage]].
|
|
12
|
-
* Each pixel can be classified as either 100% opaque, 100% transparent, or semi-transparent ("translucent").
|
|
13
|
-
* The transparency of the image as a whole is based on the combination of pixel transparencies.
|
|
14
|
-
* If this information is known, it should be supplied when creating a texture for more efficient rendering.
|
|
15
|
-
* @see [[TextureImage.transparency]].
|
|
16
|
-
* @public
|
|
17
|
-
*/
|
|
18
|
-
var TextureTransparency;
|
|
19
|
-
(function (TextureTransparency) {
|
|
20
|
-
/** All pixels are either 100% opaque or 100% transparent. */
|
|
21
|
-
TextureTransparency[TextureTransparency["Opaque"] = 0] = "Opaque";
|
|
22
|
-
/** All pixels are fully or partially transparent - no opaque pixels are present. */
|
|
23
|
-
TextureTransparency[TextureTransparency["Translucent"] = 1] = "Translucent";
|
|
24
|
-
/** Both opaque and semi-transparent pixels are present. Rendering this type of transparency is somewhat more expensive. */
|
|
25
|
-
TextureTransparency[TextureTransparency["Mixed"] = 2] = "Mixed";
|
|
26
|
-
})(TextureTransparency = exports.TextureTransparency || (exports.TextureTransparency = {}));
|
|
27
10
|
//# sourceMappingURL=RenderTexture.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderTexture.js","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG
|
|
1
|
+
{"version":3,"file":"RenderTexture.js","sourceRoot":"","sources":["../../../src/render/RenderTexture.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 Rendering\r\n */\r\n\r\nimport { Gradient, ImageBuffer, ImageSource, RenderTexture, TextureTransparency } from \"@itwin/core-common\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\n\r\n/** A key that uniquely identifies a [RenderTexture]($common) in the context of an [[IModelConnection]], used for caching.\r\n * @see [[TextureCacheOwnership]].\r\n * @public\r\n */\r\nexport type TextureCacheKey = string | Gradient.Symb;\r\n\r\n/** Specifies that a [RenderTexture]($common) should be kept in memory until the corresponding [[IModelConnection]] is closed, at\r\n * which point it will be disposed.\r\n * @see [[TextureOwnership]]\r\n * @public\r\n */\r\nexport interface TextureCacheOwnership {\r\n /** The iModel on which the texture will be cached. */\r\n iModel: IModelConnection;\r\n /** The key uniquely identifying the texture amongst all textures cached on the iModel. */\r\n key: string | Gradient.Symb;\r\n}\r\n\r\n/** Describes the ownership of a [RenderTexture]($common), which controls when the texture is disposed of.\r\n * - [[TextureCacheOwnership]] indicates that the texture will be disposed of when the [[IModelConnection]] is closed, and that attempting\r\n * to create or look up a texture with the same `key` as an existing cached texture will always return the cached texture instead of creating\r\n * a new one.\r\n * - \"external\" indicates that the lifetime of the texture will be controlled externally, e.g. by a [[Decorator]], in which case the owner of the\r\n * texture is responsible for calling its `dispose` method when it is no longer needed.\r\n * @see [[CreateTextureArgs.ownership]]\r\n * @public\r\n */\r\nexport type TextureOwnership = TextureCacheOwnership | \"external\";\r\n\r\n/** An object from which a [RenderTexture]($common) can be created.\r\n * @see [[TextureImage.source]]\r\n * @public\r\n */\r\nexport type TextureImageSource = HTMLImageElement | ImageBuffer; // ###TODO | HTMLCanvasElement etc\r\n\r\n/** Describes the image from which to create a [RenderTexture]($common).\r\n * @see [[CreateTextureArgs.image]]\r\n * @public\r\n */\r\nexport interface TextureImage {\r\n /** The object that supplies the texture image. */\r\n source: TextureImageSource;\r\n /** Describes the transparency of the image. If this information can be supplied, it can improve performance.\r\n * If this information is not available at the call site, omit it - it defaults to \"mixed\" if it cannot be inferred from the source.\r\n */\r\n transparency?: TextureTransparency;\r\n}\r\n\r\n/** Arguments supplied to [[RenderSystem.createTexture]] to create a [RenderTexture]($common).\r\n * @public\r\n */\r\nexport interface CreateTextureArgs {\r\n /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */\r\n type?: RenderTexture.Type;\r\n /** The image from which to create the texture. */\r\n image: TextureImage;\r\n /** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it\r\n * becomes associated, such that disposing of the graphic will also dispose of the texture.\r\n * Applications typically create textures for use with [[Decorator]]s, which recreate their graphics quite frequently.\r\n * Ideally, the decorator will take ownership of the texture by specifying \"external\" and disposing of the texture when it is no longer needed,\r\n * rather than recreating the texture every time it creates its decoration graphics.\r\n */\r\n ownership?: TextureOwnership;\r\n}\r\n\r\n/** Arguments supplied to [[RenderSystem.createTextureFromSource]].\r\n * @public\r\n */\r\nexport interface CreateTextureFromSourceArgs {\r\n /** The type of texture to create. Default: [RenderTexture.Type.Normal]($common). */\r\n type?: RenderTexture.Type;\r\n /** The image from which to create the texture. */\r\n source: ImageSource;\r\n /** Describes the transparency of the image. If this information can be supplied, it can improve performance.\r\n * If not supplied, PNGs will default to [TextureTransparency.Mixed]($common) and JPEGs (which do not support transparency) to [TextureTransparency.Opaque]($common).\r\n */\r\n transparency?: TextureTransparency;\r\n /** The ownership of the texture. If `undefined`, the texture's lifetime will be controlled by the first [[RenderGraphic]] with which it\r\n * becomes associated, such that disposing of the graphic will also dispose of the texture.\r\n * Applications typically create textures for use with [[Decorator]]s, which recreate their graphics quite frequently.\r\n * Ideally, the decorator will take ownership of the texture by specifying \"external\" and disposing of the texture when it is no longer needed,\r\n * rather than recreating the texture every time it creates its decoration graphics.\r\n */\r\n ownership?: TextureCacheOwnership & { key: string } | \"external\";\r\n}\r\n"]}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Rendering
|
|
3
|
+
*/
|
|
4
|
+
import { LinePixels } from "@itwin/core-common";
|
|
5
|
+
import { MeshArgs } from "./mesh/MeshPrimitives";
|
|
6
|
+
import { VertexIndices } from "./VertexTable";
|
|
7
|
+
import { TesselatedPolyline } from "./PolylineParams";
|
|
8
|
+
/**
|
|
9
|
+
* Describes a set of line segments representing edges of a mesh.
|
|
10
|
+
* Each segment is expanded into a quad defined by two triangles.
|
|
11
|
+
* The positions are adjusted in the shader to account for the edge width.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export interface SegmentEdgeParams {
|
|
15
|
+
/** The 24-bit indices of the tesselated line segment */
|
|
16
|
+
readonly indices: VertexIndices;
|
|
17
|
+
/**
|
|
18
|
+
* For each 24-bit index, 4 bytes:
|
|
19
|
+
* the 24-bit index of the vertex at the other end of the segment, followed by
|
|
20
|
+
* an 8-bit 'quad index' in [0..3] indicating which point in the expanded quad the vertex represents.
|
|
21
|
+
*/
|
|
22
|
+
readonly endPointAndQuadIndices: Uint8Array;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A set of line segments representing edges of curved portions of a mesh.
|
|
26
|
+
* Each vertex is augmented with a pair of oct-encoded normals used in the shader
|
|
27
|
+
* to determine whether or not the edge should be displayed.
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
export interface SilhouetteParams extends SegmentEdgeParams {
|
|
31
|
+
/** Per index, 2 16-bit oct-encoded normals */
|
|
32
|
+
readonly normalPairs: Uint8Array;
|
|
33
|
+
}
|
|
34
|
+
/** A lookup table of edges for a mesh. The table is partitioned such that the lower partition contains simple segment edges
|
|
35
|
+
* and the upper partition contains silhouette edges. Each entry in the lower partition consists of 2 24-bit indices into
|
|
36
|
+
* a [[VertexTable]] from which to obtain the endpoints of the edge. Each entry in the upper partition consists of 2 24-bit
|
|
37
|
+
* vertex indices followed by two 16-bit [[OctEncodedNormal]]s.
|
|
38
|
+
* If both partitions exist then one row may exist between them containing a mix of segments and silhouettes; in this case a handful
|
|
39
|
+
* of padding bytes may exist between the last segment and the first silhouette.
|
|
40
|
+
* @see [[IndexedEdgeParams.edges]].
|
|
41
|
+
* @internal
|
|
42
|
+
*/
|
|
43
|
+
export interface EdgeTable {
|
|
44
|
+
/** The rectangular lookup table. */
|
|
45
|
+
readonly data: Uint8Array;
|
|
46
|
+
/** Width of the table. */
|
|
47
|
+
readonly width: number;
|
|
48
|
+
/** Height of the table. */
|
|
49
|
+
readonly height: number;
|
|
50
|
+
/** The number of segments in the lower partition. */
|
|
51
|
+
readonly numSegments: number;
|
|
52
|
+
/** The number of padding bytes inserted between the partitions to preserve alignment of data. */
|
|
53
|
+
readonly silhouettePadding: number;
|
|
54
|
+
}
|
|
55
|
+
/** Describes the edges of a surface as a lookup table. Each edge consists of six identical indices into the lookup table, forming a quad.
|
|
56
|
+
* @see [[EdgeParams.indexed]].
|
|
57
|
+
* @internal
|
|
58
|
+
*/
|
|
59
|
+
export interface IndexedEdgeParams {
|
|
60
|
+
/** The indices into [[edges]]. */
|
|
61
|
+
readonly indices: VertexIndices;
|
|
62
|
+
/** The lookup table indexed by [[indices]]. */
|
|
63
|
+
readonly edges: EdgeTable;
|
|
64
|
+
}
|
|
65
|
+
/** Describes the edges of a mesh. */
|
|
66
|
+
export interface EdgeParams {
|
|
67
|
+
/** The edge width in pixels. */
|
|
68
|
+
readonly weight: number;
|
|
69
|
+
/** The line pattern in which edges are drawn. */
|
|
70
|
+
readonly linePixels: LinePixels;
|
|
71
|
+
/** Simple single-segment edges, always displayed when edge display is enabled. */
|
|
72
|
+
readonly segments?: SegmentEdgeParams;
|
|
73
|
+
/** Single-segment edges of curved surfaces, displayed based on edge normal relative to eye. */
|
|
74
|
+
readonly silhouettes?: SilhouetteParams;
|
|
75
|
+
/** Polyline edges, always displayed when edge display is enabled. */
|
|
76
|
+
readonly polylines?: TesselatedPolyline;
|
|
77
|
+
/** Silhouettes and simple-segment edges, compactly represented as indices into a lookup table. */
|
|
78
|
+
readonly indexed?: IndexedEdgeParams;
|
|
79
|
+
}
|
|
80
|
+
/** @internal */
|
|
81
|
+
export declare namespace EdgeParams {
|
|
82
|
+
function fromMeshArgs(meshArgs: MeshArgs, maxWidth?: number): EdgeParams | undefined;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=EdgeParams.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EdgeParams.d.ts","sourceRoot":"","sources":["../../../../src/render/primitives/EdgeParams.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAgD,MAAM,oBAAoB,CAAC;AAC9F,OAAO,EAAE,QAAQ,EAAiB,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAsB,MAAM,kBAAkB,CAAC;AAG1E;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,sBAAsB,EAAE,UAAU,CAAC;CAC7C;AAiED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,8CAA8C;IAC9C,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;CAClC;AAyBD;;;;;;;;GAQG;AACH,MAAM,WAAW,SAAS;IACxB,oCAAoC;IACpC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2BAA2B;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qDAAqD;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;CAC3B;AAmHD,qCAAqC;AACrC,MAAM,WAAW,UAAU;IACzB,gCAAgC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,iDAAiD;IACjD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,kFAAkF;IAClF,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IACtC,+FAA+F;IAC/F,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IACxC,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACxC,kGAAkG;IAClG,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;CACtC;AAED,gBAAgB;AAChB,yBAAiB,UAAU,CAAC;IAC1B,SAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CA2B1F;CACF"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*---------------------------------------------------------------------------------------------
|
|
3
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
+
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
/** @packageDocumentation
|
|
7
|
+
* @module Rendering
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.EdgeParams = void 0;
|
|
11
|
+
const core_bentley_1 = require("@itwin/core-bentley");
|
|
12
|
+
const VertexTable_1 = require("./VertexTable");
|
|
13
|
+
const PolylineParams_1 = require("./PolylineParams");
|
|
14
|
+
const IModelApp_1 = require("../../IModelApp");
|
|
15
|
+
function convertPolylinesAndEdges(polylines, edges) {
|
|
16
|
+
let numIndices = undefined !== edges ? edges.length : 0;
|
|
17
|
+
if (undefined !== polylines)
|
|
18
|
+
for (const pd of polylines)
|
|
19
|
+
numIndices += (pd.vertIndices.length - 1);
|
|
20
|
+
if (0 === numIndices)
|
|
21
|
+
return undefined;
|
|
22
|
+
numIndices *= 6;
|
|
23
|
+
const indexBytes = new Uint8Array(numIndices * 3);
|
|
24
|
+
const endPointAndQuadIndexBytes = new Uint8Array(numIndices * 4);
|
|
25
|
+
let ndx = 0;
|
|
26
|
+
let ndx2 = 0;
|
|
27
|
+
const addPoint = (p0, p1, quadIndex) => {
|
|
28
|
+
VertexTable_1.VertexIndices.encodeIndex(p0, indexBytes, ndx);
|
|
29
|
+
ndx += 3;
|
|
30
|
+
VertexTable_1.VertexIndices.encodeIndex(p1, endPointAndQuadIndexBytes, ndx2);
|
|
31
|
+
endPointAndQuadIndexBytes[ndx2 + 3] = quadIndex;
|
|
32
|
+
ndx2 += 4;
|
|
33
|
+
};
|
|
34
|
+
if (undefined !== polylines) {
|
|
35
|
+
for (const pd of polylines) {
|
|
36
|
+
const num = pd.vertIndices.length - 1;
|
|
37
|
+
for (let i = 0; i < num; ++i) {
|
|
38
|
+
let p0 = pd.vertIndices[i];
|
|
39
|
+
let p1 = pd.vertIndices[i + 1];
|
|
40
|
+
if (p1 < p0) { // swap so that lower index is first.
|
|
41
|
+
p0 = p1;
|
|
42
|
+
p1 = pd.vertIndices[i];
|
|
43
|
+
}
|
|
44
|
+
addPoint(p0, p1, 0);
|
|
45
|
+
addPoint(p1, p0, 2);
|
|
46
|
+
addPoint(p0, p1, 1);
|
|
47
|
+
addPoint(p0, p1, 1);
|
|
48
|
+
addPoint(p1, p0, 2);
|
|
49
|
+
addPoint(p1, p0, 3);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (undefined !== edges) {
|
|
54
|
+
for (const meshEdge of edges) {
|
|
55
|
+
const p0 = meshEdge.indices[0];
|
|
56
|
+
const p1 = meshEdge.indices[1];
|
|
57
|
+
addPoint(p0, p1, 0);
|
|
58
|
+
addPoint(p1, p0, 2);
|
|
59
|
+
addPoint(p0, p1, 1);
|
|
60
|
+
addPoint(p0, p1, 1);
|
|
61
|
+
addPoint(p1, p0, 2);
|
|
62
|
+
addPoint(p1, p0, 3);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return {
|
|
66
|
+
indices: new VertexTable_1.VertexIndices(indexBytes),
|
|
67
|
+
endPointAndQuadIndices: endPointAndQuadIndexBytes,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function convertSilhouettes(edges, normalPairs) {
|
|
71
|
+
const base = convertPolylinesAndEdges(undefined, edges);
|
|
72
|
+
if (undefined === base)
|
|
73
|
+
return undefined;
|
|
74
|
+
const normalPairBytes = new Uint8Array(normalPairs.length * 6 * 4);
|
|
75
|
+
const normalPair16 = new Uint16Array(normalPairBytes.buffer);
|
|
76
|
+
let ndx = 0;
|
|
77
|
+
for (const pair of normalPairs) {
|
|
78
|
+
for (let i = 0; i < 6; i++) {
|
|
79
|
+
normalPair16[ndx++] = pair.first.value;
|
|
80
|
+
normalPair16[ndx++] = pair.second.value;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return {
|
|
84
|
+
indices: base.indices,
|
|
85
|
+
endPointAndQuadIndices: base.endPointAndQuadIndices,
|
|
86
|
+
normalPairs: normalPairBytes,
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function buildIndexedEdges(args, doPolylines, maxSize) {
|
|
90
|
+
var _a, _b, _c, _d, _e;
|
|
91
|
+
const hardEdges = (_a = args.edges) === null || _a === void 0 ? void 0 : _a.edges;
|
|
92
|
+
const silhouettes = args.silhouettes;
|
|
93
|
+
const polylines = doPolylines ? (_b = args.polylines) === null || _b === void 0 ? void 0 : _b.lines : undefined;
|
|
94
|
+
const numHardEdges = (_c = hardEdges === null || hardEdges === void 0 ? void 0 : hardEdges.length) !== null && _c !== void 0 ? _c : 0;
|
|
95
|
+
const numSilhouettes = (_e = (_d = silhouettes === null || silhouettes === void 0 ? void 0 : silhouettes.edges) === null || _d === void 0 ? void 0 : _d.length) !== null && _e !== void 0 ? _e : 0;
|
|
96
|
+
const numPolylines = polylines ? polylines.reduce((count, pd) => count + Math.max(0, pd.vertIndices.length - 1), 0) : 0;
|
|
97
|
+
const numSegmentEdges = numHardEdges + numPolylines;
|
|
98
|
+
const numTotalEdges = numSegmentEdges + numSilhouettes;
|
|
99
|
+
if (numTotalEdges === 0)
|
|
100
|
+
return undefined;
|
|
101
|
+
// Each edge is a quad consisting of six vertices. Each vertex is an identical 24-bit index into the lookup table.
|
|
102
|
+
const indices = new VertexTable_1.VertexIndices(new Uint8Array(numTotalEdges * 6 * 3));
|
|
103
|
+
for (let i = 0; i < numTotalEdges; i++)
|
|
104
|
+
for (let j = 0; j < 6; j++)
|
|
105
|
+
indices.setNthIndex(i * 6 + j, i);
|
|
106
|
+
// Each segment edge requires 2 24-bit indices = 6 bytes = 1.5 RGBA values.
|
|
107
|
+
// Each silhouette requires the same as segment edge plus 2 16-bit oct-encoded normals = 10 bytes = 2.5 RGBA values.
|
|
108
|
+
let nRgbaRequired = Math.ceil(1.5 * numSegmentEdges + 2.5 * numSilhouettes);
|
|
109
|
+
let dimensions;
|
|
110
|
+
const silhouetteStartByteIndex = numSegmentEdges * 6;
|
|
111
|
+
let silhouettePadding = 0;
|
|
112
|
+
if (nRgbaRequired < maxSize) {
|
|
113
|
+
dimensions = { width: nRgbaRequired, height: 1 };
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
// Make roughly square to reduce unused space in last row.
|
|
117
|
+
let width = Math.ceil(Math.sqrt(nRgbaRequired));
|
|
118
|
+
// Each entry's data must fit on the same row. 15 RGBA = 60 bytes = lowest common multiple of 6, 10, and 4.
|
|
119
|
+
const remainder = width % 15;
|
|
120
|
+
if (0 !== remainder)
|
|
121
|
+
width += 15 - remainder;
|
|
122
|
+
// If the table contains both segments and silhouettes, there may be one row containing a mix of the two where padding
|
|
123
|
+
// is required between them.
|
|
124
|
+
if (numSilhouettes > 0 && numSegmentEdges > 0) {
|
|
125
|
+
const silOffset = silhouetteStartByteIndex % 60; // some multiple of 6.
|
|
126
|
+
silhouettePadding = (60 - silOffset) % 10;
|
|
127
|
+
nRgbaRequired += Math.ceil(silhouettePadding / 4);
|
|
128
|
+
}
|
|
129
|
+
let height = Math.ceil(nRgbaRequired / width);
|
|
130
|
+
if (width * height < nRgbaRequired)
|
|
131
|
+
height++;
|
|
132
|
+
dimensions = { width, height };
|
|
133
|
+
}
|
|
134
|
+
const data = new Uint8Array(dimensions.width * dimensions.height * 4);
|
|
135
|
+
function setUint24(byteIndex, value) {
|
|
136
|
+
data[byteIndex + 0] = value & 0x0000ff;
|
|
137
|
+
data[byteIndex + 1] = (value & 0x00ff00) >>> 8;
|
|
138
|
+
data[byteIndex + 2] = (value & 0xff0000) >>> 16;
|
|
139
|
+
}
|
|
140
|
+
function setEdge(index, startPointIndex, endPointIndex) {
|
|
141
|
+
const byteIndex = index * 6;
|
|
142
|
+
setUint24(byteIndex, startPointIndex);
|
|
143
|
+
setUint24(byteIndex + 3, endPointIndex);
|
|
144
|
+
}
|
|
145
|
+
let curIndex = 0;
|
|
146
|
+
if (hardEdges)
|
|
147
|
+
for (const edge of hardEdges)
|
|
148
|
+
setEdge(curIndex++, edge.indices[0], edge.indices[1]);
|
|
149
|
+
if (polylines) {
|
|
150
|
+
for (const pd of polylines) {
|
|
151
|
+
const num = pd.vertIndices.length - 1;
|
|
152
|
+
for (let i = 0; i < num; i++) {
|
|
153
|
+
const p0 = pd.vertIndices[i];
|
|
154
|
+
const p1 = pd.vertIndices[i + 1];
|
|
155
|
+
// Ensure lower index is first.
|
|
156
|
+
if (p0 < p1)
|
|
157
|
+
setEdge(curIndex++, p0, p1);
|
|
158
|
+
else
|
|
159
|
+
setEdge(curIndex++, p1, p0);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
if (silhouettes === null || silhouettes === void 0 ? void 0 : silhouettes.edges) {
|
|
164
|
+
(0, core_bentley_1.assert)(undefined !== silhouettes.normals);
|
|
165
|
+
(0, core_bentley_1.assert)(silhouettes.normals.length === silhouettes.edges.length);
|
|
166
|
+
function setSilhouette(index, start, end, normals) {
|
|
167
|
+
const byteIndex = silhouetteStartByteIndex + silhouettePadding + index * 10;
|
|
168
|
+
setUint24(byteIndex, start);
|
|
169
|
+
setUint24(byteIndex + 3, end);
|
|
170
|
+
data[byteIndex + 6] = normals.first.value & 0xff;
|
|
171
|
+
data[byteIndex + 7] = (normals.first.value & 0xff00) >>> 8;
|
|
172
|
+
data[byteIndex + 8] = normals.second.value & 0xff;
|
|
173
|
+
data[byteIndex + 9] = (normals.second.value & 0xff00) >>> 8;
|
|
174
|
+
}
|
|
175
|
+
curIndex = 0;
|
|
176
|
+
for (let i = 0; i < silhouettes.edges.length; i++)
|
|
177
|
+
setSilhouette(curIndex++, silhouettes.edges[i].indices[0], silhouettes.edges[i].indices[1], silhouettes.normals[i]);
|
|
178
|
+
}
|
|
179
|
+
return {
|
|
180
|
+
indices,
|
|
181
|
+
edges: {
|
|
182
|
+
data,
|
|
183
|
+
width: dimensions.width,
|
|
184
|
+
height: dimensions.height,
|
|
185
|
+
numSegments: numSegmentEdges,
|
|
186
|
+
silhouettePadding,
|
|
187
|
+
},
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
/** @internal */
|
|
191
|
+
var EdgeParams;
|
|
192
|
+
(function (EdgeParams) {
|
|
193
|
+
function fromMeshArgs(meshArgs, maxWidth) {
|
|
194
|
+
const args = meshArgs.edges;
|
|
195
|
+
const doJoints = (0, PolylineParams_1.wantJointTriangles)(args.width, meshArgs.is2d);
|
|
196
|
+
const polylines = doJoints ? PolylineParams_1.TesselatedPolyline.fromMesh(meshArgs) : undefined;
|
|
197
|
+
let segments;
|
|
198
|
+
let silhouettes;
|
|
199
|
+
let indexed;
|
|
200
|
+
if (IModelApp_1.IModelApp.tileAdmin.enableIndexedEdges) {
|
|
201
|
+
indexed = buildIndexedEdges(args, !doJoints, maxWidth !== null && maxWidth !== void 0 ? maxWidth : IModelApp_1.IModelApp.renderSystem.maxTextureSize);
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
segments = convertPolylinesAndEdges(undefined, args.edges.edges);
|
|
205
|
+
silhouettes = args.silhouettes.edges && args.silhouettes.normals ? convertSilhouettes(args.silhouettes.edges, args.silhouettes.normals) : undefined;
|
|
206
|
+
}
|
|
207
|
+
if (!segments && !silhouettes && !polylines && !indexed)
|
|
208
|
+
return undefined;
|
|
209
|
+
return {
|
|
210
|
+
weight: args.width,
|
|
211
|
+
linePixels: args.linePixels,
|
|
212
|
+
segments,
|
|
213
|
+
silhouettes,
|
|
214
|
+
polylines,
|
|
215
|
+
indexed,
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
EdgeParams.fromMeshArgs = fromMeshArgs;
|
|
219
|
+
})(EdgeParams = exports.EdgeParams || (exports.EdgeParams = {}));
|
|
220
|
+
//# sourceMappingURL=EdgeParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EdgeParams.js","sourceRoot":"","sources":["../../../../src/render/primitives/EdgeParams.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 Rendering\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { LinePixels, MeshEdge, OctEncodedNormalPair, PolylineData } from \"@itwin/core-common\";\r\nimport { MeshArgs, MeshArgsEdges } from \"./mesh/MeshPrimitives\";\r\nimport { VertexIndices } from \"./VertexTable\";\r\nimport { TesselatedPolyline, wantJointTriangles } from \"./PolylineParams\";\r\nimport { IModelApp } from \"../../IModelApp\";\r\n\r\n/**\r\n * Describes a set of line segments representing edges of a mesh.\r\n * Each segment is expanded into a quad defined by two triangles.\r\n * The positions are adjusted in the shader to account for the edge width.\r\n * @internal\r\n */\r\nexport interface SegmentEdgeParams {\r\n /** The 24-bit indices of the tesselated line segment */\r\n readonly indices: VertexIndices;\r\n /**\r\n * For each 24-bit index, 4 bytes:\r\n * the 24-bit index of the vertex at the other end of the segment, followed by\r\n * an 8-bit 'quad index' in [0..3] indicating which point in the expanded quad the vertex represents.\r\n */\r\n readonly endPointAndQuadIndices: Uint8Array;\r\n}\r\n\r\nfunction convertPolylinesAndEdges(polylines?: PolylineData[], edges?: MeshEdge[]): SegmentEdgeParams | undefined {\r\n let numIndices = undefined !== edges ? edges.length : 0;\r\n if (undefined !== polylines)\r\n for (const pd of polylines)\r\n numIndices += (pd.vertIndices.length - 1);\r\n\r\n if (0 === numIndices)\r\n return undefined;\r\n\r\n numIndices *= 6;\r\n const indexBytes = new Uint8Array(numIndices * 3);\r\n const endPointAndQuadIndexBytes = new Uint8Array(numIndices * 4);\r\n\r\n let ndx: number = 0;\r\n let ndx2: number = 0;\r\n\r\n const addPoint = (p0: number, p1: number, quadIndex: number) => {\r\n VertexIndices.encodeIndex(p0, indexBytes, ndx);\r\n ndx += 3;\r\n VertexIndices.encodeIndex(p1, endPointAndQuadIndexBytes, ndx2);\r\n endPointAndQuadIndexBytes[ndx2 + 3] = quadIndex;\r\n ndx2 += 4;\r\n };\r\n\r\n if (undefined !== polylines) {\r\n for (const pd of polylines) {\r\n const num = pd.vertIndices.length - 1;\r\n for (let i = 0; i < num; ++i) {\r\n let p0 = pd.vertIndices[i];\r\n let p1 = pd.vertIndices[i + 1];\r\n if (p1 < p0) { // swap so that lower index is first.\r\n p0 = p1;\r\n p1 = pd.vertIndices[i];\r\n }\r\n addPoint(p0, p1, 0);\r\n addPoint(p1, p0, 2);\r\n addPoint(p0, p1, 1);\r\n addPoint(p0, p1, 1);\r\n addPoint(p1, p0, 2);\r\n addPoint(p1, p0, 3);\r\n }\r\n }\r\n }\r\n\r\n if (undefined !== edges) {\r\n for (const meshEdge of edges) {\r\n const p0 = meshEdge.indices[0];\r\n const p1 = meshEdge.indices[1];\r\n addPoint(p0, p1, 0);\r\n addPoint(p1, p0, 2);\r\n addPoint(p0, p1, 1);\r\n addPoint(p0, p1, 1);\r\n addPoint(p1, p0, 2);\r\n addPoint(p1, p0, 3);\r\n }\r\n }\r\n\r\n return {\r\n indices: new VertexIndices(indexBytes),\r\n endPointAndQuadIndices: endPointAndQuadIndexBytes,\r\n };\r\n}\r\n\r\n/**\r\n * A set of line segments representing edges of curved portions of a mesh.\r\n * Each vertex is augmented with a pair of oct-encoded normals used in the shader\r\n * to determine whether or not the edge should be displayed.\r\n * @internal\r\n */\r\nexport interface SilhouetteParams extends SegmentEdgeParams {\r\n /** Per index, 2 16-bit oct-encoded normals */\r\n readonly normalPairs: Uint8Array;\r\n}\r\n\r\nfunction convertSilhouettes(edges: MeshEdge[], normalPairs: OctEncodedNormalPair[]): SilhouetteParams | undefined {\r\n const base = convertPolylinesAndEdges(undefined, edges);\r\n if (undefined === base)\r\n return undefined;\r\n\r\n const normalPairBytes = new Uint8Array(normalPairs.length * 6 * 4);\r\n const normalPair16 = new Uint16Array(normalPairBytes.buffer);\r\n\r\n let ndx = 0;\r\n for (const pair of normalPairs) {\r\n for (let i = 0; i < 6; i++) {\r\n normalPair16[ndx++] = pair.first.value;\r\n normalPair16[ndx++] = pair.second.value;\r\n }\r\n }\r\n\r\n return {\r\n indices: base.indices,\r\n endPointAndQuadIndices: base.endPointAndQuadIndices,\r\n normalPairs: normalPairBytes,\r\n };\r\n}\r\n\r\n/** A lookup table of edges for a mesh. The table is partitioned such that the lower partition contains simple segment edges\r\n * and the upper partition contains silhouette edges. Each entry in the lower partition consists of 2 24-bit indices into\r\n * a [[VertexTable]] from which to obtain the endpoints of the edge. Each entry in the upper partition consists of 2 24-bit\r\n * vertex indices followed by two 16-bit [[OctEncodedNormal]]s.\r\n * If both partitions exist then one row may exist between them containing a mix of segments and silhouettes; in this case a handful\r\n * of padding bytes may exist between the last segment and the first silhouette.\r\n * @see [[IndexedEdgeParams.edges]].\r\n * @internal\r\n */\r\nexport interface EdgeTable {\r\n /** The rectangular lookup table. */\r\n readonly data: Uint8Array;\r\n /** Width of the table. */\r\n readonly width: number;\r\n /** Height of the table. */\r\n readonly height: number;\r\n /** The number of segments in the lower partition. */\r\n readonly numSegments: number;\r\n /** The number of padding bytes inserted between the partitions to preserve alignment of data. */\r\n readonly silhouettePadding: number;\r\n}\r\n\r\n/** Describes the edges of a surface as a lookup table. Each edge consists of six identical indices into the lookup table, forming a quad.\r\n * @see [[EdgeParams.indexed]].\r\n * @internal\r\n */\r\nexport interface IndexedEdgeParams {\r\n /** The indices into [[edges]]. */\r\n readonly indices: VertexIndices;\r\n /** The lookup table indexed by [[indices]]. */\r\n readonly edges: EdgeTable;\r\n}\r\n\r\nfunction buildIndexedEdges(args: MeshArgsEdges, doPolylines: boolean, maxSize: number): IndexedEdgeParams | undefined {\r\n const hardEdges = args.edges?.edges;\r\n const silhouettes = args.silhouettes;\r\n const polylines = doPolylines ? args.polylines?.lines : undefined;\r\n\r\n const numHardEdges = hardEdges?.length ?? 0;\r\n const numSilhouettes = silhouettes?.edges?.length ?? 0;\r\n const numPolylines = polylines ? polylines.reduce((count: number, pd: PolylineData) => count + Math.max(0, pd.vertIndices.length - 1), 0) : 0;\r\n const numSegmentEdges = numHardEdges + numPolylines;\r\n const numTotalEdges = numSegmentEdges + numSilhouettes;\r\n if (numTotalEdges === 0)\r\n return undefined;\r\n\r\n // Each edge is a quad consisting of six vertices. Each vertex is an identical 24-bit index into the lookup table.\r\n const indices = new VertexIndices(new Uint8Array(numTotalEdges * 6 * 3));\r\n for (let i = 0; i < numTotalEdges; i++)\r\n for (let j = 0; j < 6; j++)\r\n indices.setNthIndex(i * 6 + j, i);\r\n\r\n // Each segment edge requires 2 24-bit indices = 6 bytes = 1.5 RGBA values.\r\n // Each silhouette requires the same as segment edge plus 2 16-bit oct-encoded normals = 10 bytes = 2.5 RGBA values.\r\n let nRgbaRequired = Math.ceil(1.5 * numSegmentEdges + 2.5 * numSilhouettes);\r\n let dimensions;\r\n const silhouetteStartByteIndex = numSegmentEdges * 6;\r\n let silhouettePadding = 0;\r\n if (nRgbaRequired < maxSize) {\r\n dimensions = { width: nRgbaRequired, height: 1 };\r\n } else {\r\n // Make roughly square to reduce unused space in last row.\r\n let width = Math.ceil(Math.sqrt(nRgbaRequired));\r\n // Each entry's data must fit on the same row. 15 RGBA = 60 bytes = lowest common multiple of 6, 10, and 4.\r\n const remainder = width % 15;\r\n if (0 !== remainder)\r\n width += 15 - remainder;\r\n\r\n // If the table contains both segments and silhouettes, there may be one row containing a mix of the two where padding\r\n // is required between them.\r\n if (numSilhouettes > 0 && numSegmentEdges > 0) {\r\n const silOffset = silhouetteStartByteIndex % 60; // some multiple of 6.\r\n silhouettePadding = (60 - silOffset) % 10;\r\n nRgbaRequired += Math.ceil(silhouettePadding / 4);\r\n }\r\n\r\n let height = Math.ceil(nRgbaRequired / width);\r\n if (width * height < nRgbaRequired)\r\n height++;\r\n\r\n dimensions = { width, height };\r\n }\r\n\r\n const data = new Uint8Array(dimensions.width * dimensions.height * 4);\r\n function setUint24(byteIndex: number, value: number): void {\r\n data[byteIndex + 0] = value & 0x0000ff;\r\n data[byteIndex + 1] = (value & 0x00ff00) >>> 8;\r\n data[byteIndex + 2] = (value & 0xff0000) >>> 16;\r\n }\r\n\r\n function setEdge(index: number, startPointIndex: number, endPointIndex: number): void {\r\n const byteIndex = index * 6;\r\n setUint24(byteIndex, startPointIndex);\r\n setUint24(byteIndex + 3, endPointIndex);\r\n }\r\n\r\n let curIndex = 0;\r\n if (hardEdges)\r\n for (const edge of hardEdges)\r\n setEdge(curIndex++, edge.indices[0], edge.indices[1]);\r\n\r\n if (polylines) {\r\n for (const pd of polylines) {\r\n const num = pd.vertIndices.length - 1;\r\n for (let i = 0; i < num; i++) {\r\n const p0 = pd.vertIndices[i];\r\n const p1 = pd.vertIndices[i + 1];\r\n // Ensure lower index is first.\r\n if (p0 < p1)\r\n setEdge(curIndex++, p0, p1);\r\n else\r\n setEdge(curIndex++, p1, p0);\r\n }\r\n }\r\n }\r\n\r\n if (silhouettes?.edges) {\r\n assert(undefined !== silhouettes.normals);\r\n assert(silhouettes.normals.length === silhouettes.edges.length);\r\n function setSilhouette(index: number, start: number, end: number, normals: OctEncodedNormalPair): void {\r\n const byteIndex = silhouetteStartByteIndex + silhouettePadding + index * 10;\r\n setUint24(byteIndex, start);\r\n setUint24(byteIndex + 3, end);\r\n data[byteIndex + 6] = normals.first.value & 0xff;\r\n data[byteIndex + 7] = (normals.first.value & 0xff00) >>> 8;\r\n data[byteIndex + 8] = normals.second.value & 0xff;\r\n data[byteIndex + 9] = (normals.second.value & 0xff00) >>> 8;\r\n }\r\n\r\n curIndex = 0;\r\n for (let i = 0; i < silhouettes.edges.length; i++)\r\n setSilhouette(curIndex++, silhouettes.edges[i].indices[0], silhouettes.edges[i].indices[1], silhouettes.normals[i]);\r\n }\r\n\r\n return {\r\n indices,\r\n edges: {\r\n data,\r\n width: dimensions.width,\r\n height: dimensions.height,\r\n numSegments: numSegmentEdges,\r\n silhouettePadding,\r\n },\r\n };\r\n}\r\n\r\n/** Describes the edges of a mesh. */\r\nexport interface EdgeParams {\r\n /** The edge width in pixels. */\r\n readonly weight: number;\r\n /** The line pattern in which edges are drawn. */\r\n readonly linePixels: LinePixels;\r\n /** Simple single-segment edges, always displayed when edge display is enabled. */\r\n readonly segments?: SegmentEdgeParams;\r\n /** Single-segment edges of curved surfaces, displayed based on edge normal relative to eye. */\r\n readonly silhouettes?: SilhouetteParams;\r\n /** Polyline edges, always displayed when edge display is enabled. */\r\n readonly polylines?: TesselatedPolyline;\r\n /** Silhouettes and simple-segment edges, compactly represented as indices into a lookup table. */\r\n readonly indexed?: IndexedEdgeParams;\r\n}\r\n\r\n/** @internal */\r\nexport namespace EdgeParams {\r\n export function fromMeshArgs(meshArgs: MeshArgs, maxWidth?: number): EdgeParams | undefined {\r\n const args = meshArgs.edges;\r\n const doJoints = wantJointTriangles(args.width, meshArgs.is2d);\r\n const polylines = doJoints ? TesselatedPolyline.fromMesh(meshArgs) : undefined;\r\n\r\n let segments: SegmentEdgeParams | undefined;\r\n let silhouettes: SilhouetteParams | undefined;\r\n let indexed: IndexedEdgeParams | undefined;\r\n\r\n if (IModelApp.tileAdmin.enableIndexedEdges) {\r\n indexed = buildIndexedEdges(args, !doJoints, maxWidth ?? IModelApp.renderSystem.maxTextureSize);\r\n } else {\r\n segments = convertPolylinesAndEdges(undefined, args.edges.edges);\r\n silhouettes = args.silhouettes.edges && args.silhouettes.normals ? convertSilhouettes(args.silhouettes.edges, args.silhouettes.normals) : undefined;\r\n }\r\n\r\n if (!segments && !silhouettes && !polylines && !indexed)\r\n return undefined;\r\n\r\n return {\r\n weight: args.width,\r\n linePixels: args.linePixels,\r\n segments,\r\n silhouettes,\r\n polylines,\r\n indexed,\r\n };\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Rendering
|
|
3
|
+
*/
|
|
4
|
+
import { PolylineArgs } from "./mesh/MeshPrimitives";
|
|
5
|
+
import { VertexIndices, VertexTable } from "./VertexTable";
|
|
6
|
+
/** Describes point string geometry to be submitted to the rendering system.
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare class PointStringParams {
|
|
10
|
+
readonly vertices: VertexTable;
|
|
11
|
+
readonly indices: VertexIndices;
|
|
12
|
+
readonly weight: number;
|
|
13
|
+
constructor(vertices: VertexTable, indices: VertexIndices, weight: number);
|
|
14
|
+
static create(args: PolylineArgs): PointStringParams | undefined;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=PointStringParams.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PointStringParams.d.ts","sourceRoot":"","sources":["../../../../src/render/primitives/PointStringParams.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE3D;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,SAAgB,QAAQ,EAAE,WAAW,CAAC;IACtC,SAAgB,OAAO,EAAE,aAAa,CAAC;IACvC,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAEZ,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM;WAMlE,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,iBAAiB,GAAG,SAAS;CAuBxE"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*---------------------------------------------------------------------------------------------
|
|
3
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
+
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
/** @packageDocumentation
|
|
7
|
+
* @module Rendering
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.PointStringParams = void 0;
|
|
11
|
+
const core_bentley_1 = require("@itwin/core-bentley");
|
|
12
|
+
const VertexTable_1 = require("./VertexTable");
|
|
13
|
+
/** Describes point string geometry to be submitted to the rendering system.
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
class PointStringParams {
|
|
17
|
+
constructor(vertices, indices, weight) {
|
|
18
|
+
this.vertices = vertices;
|
|
19
|
+
this.indices = indices;
|
|
20
|
+
this.weight = weight;
|
|
21
|
+
}
|
|
22
|
+
static create(args) {
|
|
23
|
+
if (!args.flags.isDisjoint)
|
|
24
|
+
return undefined;
|
|
25
|
+
const vertices = VertexTable_1.VertexTable.createForPolylines(args);
|
|
26
|
+
if (undefined === vertices)
|
|
27
|
+
return undefined;
|
|
28
|
+
const polylines = args.polylines;
|
|
29
|
+
let vertIndices = polylines[0].vertIndices;
|
|
30
|
+
if (1 < polylines.length) {
|
|
31
|
+
// We used to assert this wouldn't happen - apparently it does...
|
|
32
|
+
vertIndices = [];
|
|
33
|
+
for (const polyline of polylines)
|
|
34
|
+
for (const vertIndex of polyline.vertIndices)
|
|
35
|
+
vertIndices.push(vertIndex);
|
|
36
|
+
}
|
|
37
|
+
const vertexIndices = VertexTable_1.VertexIndices.fromArray(vertIndices);
|
|
38
|
+
(0, core_bentley_1.assert)(vertexIndices.length === vertIndices.length);
|
|
39
|
+
return new PointStringParams(vertices, vertexIndices, args.width);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.PointStringParams = PointStringParams;
|
|
43
|
+
//# sourceMappingURL=PointStringParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PointStringParams.js","sourceRoot":"","sources":["../../../../src/render/primitives/PointStringParams.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAA6C;AAE7C,+CAA2D;AAE3D;;GAEG;AACH,MAAa,iBAAiB;IAK5B,YAAmB,QAAqB,EAAE,OAAsB,EAAE,MAAc;QAC9E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,IAAkB;QACrC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU;YACxB,OAAO,SAAS,CAAC;QAEnB,MAAM,QAAQ,GAAG,yBAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,SAAS,KAAK,QAAQ;YACxB,OAAO,SAAS,CAAC;QAEnB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE;YACxB,iEAAiE;YACjE,WAAW,GAAG,EAAE,CAAC;YACjB,KAAK,MAAM,QAAQ,IAAI,SAAS;gBAC9B,KAAK,MAAM,SAAS,IAAI,QAAQ,CAAC,WAAW;oBAC1C,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACjC;QAED,MAAM,aAAa,GAAG,2BAAa,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAA,qBAAM,EAAC,aAAa,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC;QAEpD,OAAO,IAAI,iBAAiB,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACpE,CAAC;CACF;AAlCD,8CAkCC","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 Rendering\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { PolylineArgs } from \"./mesh/MeshPrimitives\";\r\nimport { VertexIndices, VertexTable } from \"./VertexTable\";\r\n\r\n/** Describes point string geometry to be submitted to the rendering system.\r\n * @internal\r\n */\r\nexport class PointStringParams {\r\n public readonly vertices: VertexTable;\r\n public readonly indices: VertexIndices;\r\n public readonly weight: number;\r\n\r\n public constructor(vertices: VertexTable, indices: VertexIndices, weight: number) {\r\n this.vertices = vertices;\r\n this.indices = indices;\r\n this.weight = weight;\r\n }\r\n\r\n public static create(args: PolylineArgs): PointStringParams | undefined {\r\n if (!args.flags.isDisjoint)\r\n return undefined;\r\n\r\n const vertices = VertexTable.createForPolylines(args);\r\n if (undefined === vertices)\r\n return undefined;\r\n\r\n const polylines = args.polylines;\r\n let vertIndices = polylines[0].vertIndices;\r\n if (1 < polylines.length) {\r\n // We used to assert this wouldn't happen - apparently it does...\r\n vertIndices = [];\r\n for (const polyline of polylines)\r\n for (const vertIndex of polyline.vertIndices)\r\n vertIndices.push(vertIndex);\r\n }\r\n\r\n const vertexIndices = VertexIndices.fromArray(vertIndices);\r\n assert(vertexIndices.length === vertIndices.length);\r\n\r\n return new PointStringParams(vertices, vertexIndices, args.width);\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Rendering
|
|
3
|
+
*/
|
|
4
|
+
import { LinePixels, PolylineData, PolylineTypeFlags, QPoint3dList } from "@itwin/core-common";
|
|
5
|
+
import { MeshArgs, PolylineArgs } from "./mesh/MeshPrimitives";
|
|
6
|
+
import { VertexIndices, VertexTable } from "./VertexTable";
|
|
7
|
+
/**
|
|
8
|
+
* Represents a tesselated polyline.
|
|
9
|
+
* Given a polyline as a line string, each segment of the line string is triangulated into a quad.
|
|
10
|
+
* Based on the angle between two segments, additional joint triangles may be inserted in between to enable smoothly-rounded corners.
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export interface TesselatedPolyline {
|
|
14
|
+
/** 24-bit index of each vertex. */
|
|
15
|
+
readonly indices: VertexIndices;
|
|
16
|
+
/** 24-bit index of the previous vertex in the polyline. */
|
|
17
|
+
readonly prevIndices: VertexIndices;
|
|
18
|
+
/** 24-bit index of the next vertex in the polyline, plus 8-bit parameter describing the semantics of this vertex. */
|
|
19
|
+
readonly nextIndicesAndParams: Uint8Array;
|
|
20
|
+
}
|
|
21
|
+
export declare namespace TesselatedPolyline {
|
|
22
|
+
function fromMesh(args: MeshArgs): TesselatedPolyline | undefined;
|
|
23
|
+
}
|
|
24
|
+
/** Strictly for tests. @internal */
|
|
25
|
+
export declare function tesselatePolyline(polylines: PolylineData[], points: QPoint3dList, doJointTriangles: boolean): TesselatedPolyline;
|
|
26
|
+
/**
|
|
27
|
+
* Describes a set of tesselated polylines.
|
|
28
|
+
* Each segment of each polyline is triangulated into a quad. Additional triangles may be inserted
|
|
29
|
+
* between segments to enable rounded corners.
|
|
30
|
+
*/
|
|
31
|
+
export declare class PolylineParams {
|
|
32
|
+
readonly vertices: VertexTable;
|
|
33
|
+
readonly polyline: TesselatedPolyline;
|
|
34
|
+
readonly isPlanar: boolean;
|
|
35
|
+
readonly type: PolylineTypeFlags;
|
|
36
|
+
readonly weight: number;
|
|
37
|
+
readonly linePixels: LinePixels;
|
|
38
|
+
/** Directly construct a PolylineParams. The PolylineParams takes ownership of all input data. */
|
|
39
|
+
constructor(vertices: VertexTable, polyline: TesselatedPolyline, weight: number, linePixels: LinePixels, isPlanar: boolean, type?: PolylineTypeFlags);
|
|
40
|
+
/** Construct from an PolylineArgs. */
|
|
41
|
+
static create(args: PolylineArgs): PolylineParams | undefined;
|
|
42
|
+
}
|
|
43
|
+
export declare function wantJointTriangles(weight: number, is2d: boolean): boolean;
|
|
44
|
+
//# sourceMappingURL=PolylineParams.d.ts.map
|