@itwin/core-frontend 4.1.0-dev.7 → 4.1.0-dev.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +105 -1
- package/lib/cjs/AccuDraw.d.ts +3 -4
- package/lib/cjs/AccuDraw.d.ts.map +1 -1
- package/lib/cjs/AccuDraw.js +6 -7
- package/lib/cjs/AccuDraw.js.map +1 -1
- package/lib/cjs/AccuSnap.d.ts +17 -2
- package/lib/cjs/AccuSnap.d.ts.map +1 -1
- package/lib/cjs/AccuSnap.js +35 -8
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.d.ts +3 -2
- package/lib/cjs/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js +47 -7
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.d.ts +3 -3
- package/lib/cjs/BriefcaseConnection.js +3 -3
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/BriefcaseTxns.d.ts +2 -2
- package/lib/cjs/BriefcaseTxns.d.ts.map +1 -1
- package/lib/cjs/BriefcaseTxns.js +3 -3
- package/lib/cjs/BriefcaseTxns.js.map +1 -1
- package/lib/cjs/ChangeFlags.d.ts +25 -12
- package/lib/cjs/ChangeFlags.d.ts.map +1 -1
- package/lib/cjs/ChangeFlags.js +24 -11
- package/lib/cjs/ChangeFlags.js.map +1 -1
- package/lib/cjs/CheckpointConnection.js +1 -1
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
- package/lib/cjs/DisplayStyleState.js +2 -1
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/DrawingViewState.d.ts +2 -2
- package/lib/cjs/DrawingViewState.d.ts.map +1 -1
- package/lib/cjs/DrawingViewState.js +3 -3
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/ElementLocateManager.d.ts +0 -1
- package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
- package/lib/cjs/ElementLocateManager.js +11 -19
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js +1 -1
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/FrustumAnimator.js.map +1 -1
- package/lib/cjs/GeoServices.d.ts +37 -7
- package/lib/cjs/GeoServices.d.ts.map +1 -1
- package/lib/cjs/GeoServices.js +75 -25
- package/lib/cjs/GeoServices.js.map +1 -1
- package/lib/cjs/GraphicalEditingScope.d.ts +2 -2
- package/lib/cjs/GraphicalEditingScope.d.ts.map +1 -1
- package/lib/cjs/GraphicalEditingScope.js +1 -1
- package/lib/cjs/GraphicalEditingScope.js.map +1 -1
- package/lib/cjs/HitDetail.d.ts +100 -29
- package/lib/cjs/HitDetail.d.ts.map +1 -1
- package/lib/cjs/HitDetail.js +89 -36
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.d.ts +18 -14
- package/lib/cjs/IModelApp.d.ts.map +1 -1
- package/lib/cjs/IModelApp.js +22 -18
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.d.ts +64 -19
- package/lib/cjs/IModelConnection.d.ts.map +1 -1
- package/lib/cjs/IModelConnection.js +131 -20
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IpcApp.d.ts +1 -1
- package/lib/cjs/IpcApp.d.ts.map +1 -1
- package/lib/cjs/IpcApp.js +4 -4
- package/lib/cjs/IpcApp.js.map +1 -1
- package/lib/cjs/LocalhostIpcApp.js +1 -1
- package/lib/cjs/LocalhostIpcApp.js.map +1 -1
- package/lib/cjs/Marker.d.ts +1 -1
- package/lib/cjs/Marker.d.ts.map +1 -1
- package/lib/cjs/Marker.js +3 -3
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/NativeApp.d.ts.map +1 -1
- package/lib/cjs/NativeApp.js +4 -4
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NoRenderApp.d.ts +1 -1
- package/lib/cjs/NoRenderApp.d.ts.map +1 -1
- package/lib/cjs/NoRenderApp.js +1 -1
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/RealityDataSource.js +1 -1
- package/lib/cjs/RealityDataSource.js.map +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/cjs/SheetViewState.d.ts +9 -7
- package/lib/cjs/SheetViewState.d.ts.map +1 -1
- package/lib/cjs/SheetViewState.js +22 -7
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts +20 -5
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +13 -5
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/Sprites.js +2 -2
- package/lib/cjs/Sprites.js.map +1 -1
- package/lib/cjs/TentativePoint.d.ts.map +1 -1
- package/lib/cjs/TentativePoint.js +10 -1
- package/lib/cjs/TentativePoint.js.map +1 -1
- package/lib/cjs/ViewContext.d.ts +19 -0
- package/lib/cjs/ViewContext.d.ts.map +1 -1
- package/lib/cjs/ViewContext.js +9 -0
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator3d.d.ts +3 -6
- package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
- package/lib/cjs/ViewCreator3d.js +12 -33
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewGlobalLocation.d.ts.map +1 -1
- package/lib/cjs/ViewGlobalLocation.js +4 -3
- package/lib/cjs/ViewGlobalLocation.js.map +1 -1
- package/lib/cjs/ViewManager.d.ts +4 -2
- package/lib/cjs/ViewManager.d.ts.map +1 -1
- package/lib/cjs/ViewManager.js +4 -2
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/ViewPose.d.ts +11 -11
- package/lib/cjs/ViewPose.d.ts.map +1 -1
- package/lib/cjs/ViewPose.js +17 -11
- package/lib/cjs/ViewPose.js.map +1 -1
- package/lib/cjs/ViewState.d.ts +44 -26
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +52 -25
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewingSpace.js +1 -1
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.d.ts +59 -21
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +68 -25
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/ViewportSync.d.ts +2 -2
- package/lib/cjs/ViewportSync.d.ts.map +1 -1
- package/lib/cjs/ViewportSync.js +2 -2
- package/lib/cjs/ViewportSync.js.map +1 -1
- package/lib/cjs/common/FrontendLoggerCategory.d.ts.map +1 -0
- package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -0
- package/lib/cjs/common/ImageUtil.d.ts.map +1 -0
- package/lib/cjs/{ImageUtil.js → common/ImageUtil.js} +2 -0
- package/lib/cjs/common/ImageUtil.js.map +1 -0
- package/lib/cjs/common/ViewRect.d.ts.map +1 -0
- package/lib/cjs/common/ViewRect.js.map +1 -0
- package/lib/cjs/common/WorkerProxy.d.ts +73 -0
- package/lib/cjs/common/WorkerProxy.d.ts.map +1 -0
- package/lib/cjs/common/WorkerProxy.js +54 -0
- package/lib/cjs/common/WorkerProxy.js.map +1 -0
- package/lib/{esm → cjs/common}/gltf/GltfModel.d.ts +1 -1
- package/lib/cjs/common/gltf/GltfModel.d.ts.map +1 -0
- package/lib/cjs/common/gltf/GltfModel.js.map +1 -0
- package/lib/cjs/common/gltf/GltfParser.d.ts.map +1 -0
- package/lib/cjs/common/gltf/GltfParser.js.map +1 -0
- package/lib/cjs/common/gltf/GltfSchema.d.ts.map +1 -0
- package/lib/cjs/common/gltf/GltfSchema.js.map +1 -0
- package/lib/cjs/common/imdl/CompactEdges.d.ts +27 -0
- package/lib/cjs/common/imdl/CompactEdges.d.ts.map +1 -0
- package/lib/cjs/common/imdl/CompactEdges.js +96 -0
- package/lib/cjs/common/imdl/CompactEdges.js.map +1 -0
- package/lib/cjs/{imdl → common/imdl}/ImdlModel.d.ts +5 -0
- package/lib/cjs/common/imdl/ImdlModel.d.ts.map +1 -0
- package/lib/cjs/common/imdl/ImdlModel.js +71 -0
- package/lib/cjs/common/imdl/ImdlModel.js.map +1 -0
- package/lib/{esm → cjs/common}/imdl/ImdlSchema.d.ts +68 -36
- package/lib/cjs/common/imdl/ImdlSchema.d.ts.map +1 -0
- package/lib/cjs/common/imdl/ImdlSchema.js +23 -0
- package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -0
- package/lib/cjs/{imdl/ImdlParser.d.ts → common/imdl/ParseImdlDocument.d.ts} +13 -8
- package/lib/cjs/common/imdl/ParseImdlDocument.d.ts.map +1 -0
- package/lib/cjs/{imdl/ImdlParser.js → common/imdl/ParseImdlDocument.js} +52 -37
- package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -0
- package/lib/cjs/common/render/AnimationNodeId.d.ts +11 -0
- package/lib/cjs/common/render/AnimationNodeId.d.ts.map +1 -0
- package/lib/cjs/common/render/AnimationNodeId.js +19 -0
- package/lib/cjs/common/render/AnimationNodeId.js.map +1 -0
- package/lib/{esm/render/RenderMaterial.d.ts → cjs/common/render/MaterialParams.d.ts} +7 -20
- package/lib/cjs/common/render/MaterialParams.d.ts.map +1 -0
- package/lib/cjs/{render/RenderMaterial.js → common/render/MaterialParams.js} +1 -1
- package/lib/cjs/common/render/MaterialParams.js.map +1 -0
- package/lib/cjs/common/render/TextureParams.d.ts +30 -0
- package/lib/cjs/common/render/TextureParams.d.ts.map +1 -0
- package/lib/cjs/{render/RenderTexture.js → common/render/TextureParams.js} +1 -1
- package/lib/cjs/common/render/TextureParams.js.map +1 -0
- package/lib/{esm → cjs/common}/render/primitives/AuxChannelTable.d.ts +8 -8
- package/lib/cjs/common/render/primitives/AuxChannelTable.d.ts.map +1 -0
- package/lib/cjs/{render → common/render}/primitives/AuxChannelTable.js +9 -9
- package/lib/cjs/common/render/primitives/AuxChannelTable.js.map +1 -0
- package/lib/cjs/common/render/primitives/DisplayParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/DisplayParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/EdgeParams.d.ts +94 -0
- package/lib/cjs/common/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/EdgeParams.js +46 -0
- package/lib/cjs/common/render/primitives/EdgeParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/MeshParams.d.ts +20 -0
- package/lib/cjs/common/render/primitives/MeshParams.d.ts.map +1 -0
- package/lib/cjs/{imdl/ImdlModel.js → common/render/primitives/MeshParams.js} +2 -2
- package/lib/cjs/common/render/primitives/MeshParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.d.ts +29 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.js +18 -0
- package/lib/cjs/common/render/primitives/MeshPrimitive.js.map +1 -0
- package/lib/cjs/common/render/primitives/PointStringParams.d.ts +14 -0
- package/lib/cjs/common/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/PointStringParams.js +10 -0
- package/lib/cjs/common/render/primitives/PointStringParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/PolylineParams.d.ts +29 -0
- package/lib/cjs/common/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/PolylineParams.js +10 -0
- package/lib/cjs/common/render/primitives/PolylineParams.js.map +1 -0
- package/lib/{esm → cjs/common}/render/primitives/SurfaceParams.d.ts +1 -1
- package/lib/cjs/common/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/cjs/common/render/primitives/VertexIndices.d.ts +26 -0
- package/lib/cjs/common/render/primitives/VertexIndices.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/VertexIndices.js +64 -0
- package/lib/cjs/common/render/primitives/VertexIndices.js.map +1 -0
- package/lib/cjs/common/render/primitives/VertexTable.d.ts +45 -0
- package/lib/cjs/common/render/primitives/VertexTable.d.ts.map +1 -0
- package/lib/cjs/common/render/primitives/VertexTable.js +38 -0
- package/lib/cjs/common/render/primitives/VertexTable.js.map +1 -0
- package/lib/{esm → cjs/common}/render/primitives/VertexTableSplitter.d.ts +20 -3
- package/lib/cjs/common/render/primitives/VertexTableSplitter.d.ts.map +1 -0
- package/lib/cjs/{render → common/render}/primitives/VertexTableSplitter.js +33 -23
- package/lib/cjs/common/render/primitives/VertexTableSplitter.js.map +1 -0
- package/lib/cjs/core-frontend.d.ts +45 -11
- package/lib/cjs/core-frontend.d.ts.map +1 -1
- package/lib/cjs/core-frontend.js +45 -11
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
- package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/render/CanvasDecoration.d.ts +6 -2
- package/lib/cjs/render/CanvasDecoration.d.ts.map +1 -1
- package/lib/cjs/render/CanvasDecoration.js.map +1 -1
- package/lib/cjs/render/CreateRenderMaterialArgs.d.ts +24 -0
- package/lib/cjs/render/CreateRenderMaterialArgs.d.ts.map +1 -0
- package/lib/cjs/render/CreateRenderMaterialArgs.js +10 -0
- package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -0
- package/lib/{esm/render/RenderTexture.d.ts → cjs/render/CreateTextureArgs.d.ts} +4 -28
- package/lib/cjs/render/CreateTextureArgs.d.ts.map +1 -0
- package/lib/cjs/render/CreateTextureArgs.js +10 -0
- package/lib/cjs/render/CreateTextureArgs.js.map +1 -0
- package/lib/cjs/render/GraphicBranch.d.ts +5 -7
- package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.js +1 -9
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/InstancedGraphicParams.d.ts +3 -4
- package/lib/cjs/render/InstancedGraphicParams.d.ts.map +1 -1
- package/lib/cjs/render/InstancedGraphicParams.js.map +1 -1
- package/lib/cjs/render/MockRender.d.ts +4 -4
- package/lib/cjs/render/MockRender.d.ts.map +1 -1
- package/lib/cjs/render/MockRender.js +1 -1
- package/lib/cjs/render/MockRender.js.map +1 -1
- package/lib/cjs/render/ParticleCollectionBuilder.d.ts.map +1 -1
- package/lib/cjs/render/ParticleCollectionBuilder.js +5 -5
- package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/cjs/render/Pixel.d.ts +57 -0
- package/lib/cjs/render/Pixel.d.ts.map +1 -1
- package/lib/cjs/render/Pixel.js +41 -0
- package/lib/cjs/render/Pixel.js.map +1 -1
- package/lib/cjs/render/RealityMeshParams.js +2 -2
- package/lib/cjs/render/RealityMeshParams.js.map +1 -1
- package/lib/cjs/render/RenderSystem.d.ts +24 -10
- package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
- package/lib/cjs/render/RenderSystem.js +7 -8
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/RenderTarget.d.ts +1 -1
- package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/cjs/render/VisibleFeature.d.ts +1 -1
- package/lib/cjs/render/VisibleFeature.d.ts.map +1 -1
- package/lib/cjs/render/VisibleFeature.js.map +1 -1
- package/lib/cjs/render/primitives/EdgeParams.d.ts +2 -89
- package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -1
- package/lib/cjs/render/primitives/EdgeParams.js +44 -80
- package/lib/cjs/render/primitives/EdgeParams.js.map +1 -1
- package/lib/cjs/render/primitives/PointCloudPrimitive.d.ts +1 -0
- package/lib/cjs/render/primitives/PointCloudPrimitive.d.ts.map +1 -1
- package/lib/cjs/render/primitives/PointCloudPrimitive.js.map +1 -1
- package/lib/cjs/render/primitives/PointStringParams.d.ts +3 -11
- package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -1
- package/lib/cjs/render/primitives/PointStringParams.js +27 -30
- package/lib/cjs/render/primitives/PointStringParams.js.map +1 -1
- package/lib/cjs/render/primitives/Polyface.d.ts +1 -1
- package/lib/cjs/render/primitives/Polyface.d.ts.map +1 -1
- package/lib/cjs/render/primitives/Polyface.js.map +1 -1
- package/lib/cjs/render/primitives/PolylineParams.d.ts +8 -37
- package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -1
- package/lib/cjs/render/primitives/PolylineParams.js +40 -48
- package/lib/cjs/render/primitives/PolylineParams.js.map +1 -1
- package/lib/cjs/render/primitives/Strokes.d.ts +1 -1
- package/lib/cjs/render/primitives/Strokes.d.ts.map +1 -1
- package/lib/cjs/render/primitives/Strokes.js.map +1 -1
- package/lib/cjs/render/primitives/VertexTableBuilder.d.ts +31 -0
- package/lib/cjs/render/primitives/VertexTableBuilder.d.ts.map +1 -0
- package/lib/cjs/render/primitives/{VertexTable.js → VertexTableBuilder.js} +62 -173
- package/lib/cjs/render/primitives/VertexTableBuilder.js.map +1 -0
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts +2 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilder.js +5 -2
- package/lib/cjs/render/primitives/mesh/MeshBuilder.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts +6 -5
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js +7 -4
- package/lib/cjs/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +58 -31
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +25 -29
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/cjs/render/webgl/BatchState.js +1 -1
- package/lib/cjs/render/webgl/BatchState.js.map +1 -1
- package/lib/cjs/render/webgl/BranchState.d.ts +3 -0
- package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchState.js +2 -0
- package/lib/cjs/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/ColorInfo.d.ts +1 -1
- package/lib/cjs/render/webgl/ColorInfo.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ColorInfo.js.map +1 -1
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts +2 -2
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/render/webgl/Graphic.d.ts +7 -1
- package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Graphic.js +7 -2
- package/lib/cjs/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/Material.d.ts +1 -1
- package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Material.js.map +1 -1
- package/lib/cjs/render/webgl/Mesh.d.ts +2 -2
- package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Mesh.js +1 -1
- package/lib/cjs/render/webgl/Mesh.js.map +1 -1
- package/lib/cjs/render/webgl/MeshData.d.ts +2 -2
- package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -1
- package/lib/cjs/render/webgl/MeshData.js.map +1 -1
- package/lib/cjs/render/webgl/MeshGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointString.d.ts +1 -1
- package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/Polyline.d.ts +1 -1
- package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts +2 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.js +5 -2
- package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.js +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/System.d.ts +7 -6
- package/lib/cjs/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/render/webgl/System.js +2 -2
- package/lib/cjs/render/webgl/System.js.map +1 -1
- package/lib/cjs/render/webgl/Target.d.ts +1 -1
- package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Target.js +14 -12
- package/lib/cjs/render/webgl/Target.js.map +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Texture.js +1 -1
- package/lib/cjs/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/render/webgl/UniformHandle.js +1 -1
- package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
- package/lib/cjs/render/webgl/VertexLUT.d.ts +2 -2
- package/lib/cjs/render/webgl/VertexLUT.d.ts.map +1 -1
- package/lib/cjs/render/webgl/VertexLUT.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.js +32 -19
- package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/tile/B3dmReader.d.ts +1 -1
- package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
- package/lib/cjs/tile/B3dmReader.js +1 -1
- package/lib/cjs/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/tile/FetchCloudStorage.d.ts +15 -0
- package/lib/cjs/tile/FetchCloudStorage.d.ts.map +1 -0
- package/lib/cjs/tile/FetchCloudStorage.js +35 -0
- package/lib/cjs/tile/FetchCloudStorage.js.map +1 -0
- package/lib/cjs/tile/GltfReader.d.ts +13 -4
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +80 -28
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTile.js +4 -9
- package/lib/cjs/tile/IModelTile.js.map +1 -1
- package/lib/cjs/tile/IModelTileTree.d.ts +4 -1
- package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTileTree.js +15 -0
- package/lib/cjs/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/tile/ImdlDecoder.d.ts +52 -0
- package/lib/cjs/tile/ImdlDecoder.d.ts.map +1 -0
- package/lib/cjs/tile/ImdlDecoder.js +35 -0
- package/lib/cjs/tile/ImdlDecoder.js.map +1 -0
- package/lib/{esm/imdl → cjs/tile}/ImdlGraphicsCreator.d.ts +1 -1
- package/lib/cjs/tile/ImdlGraphicsCreator.d.ts.map +1 -0
- package/lib/cjs/{imdl → tile}/ImdlGraphicsCreator.js +13 -13
- package/lib/cjs/tile/ImdlGraphicsCreator.js.map +1 -0
- package/lib/cjs/tile/ImdlParser.d.ts +26 -0
- package/lib/cjs/tile/ImdlParser.d.ts.map +1 -0
- package/lib/cjs/tile/ImdlParser.js +72 -0
- package/lib/cjs/tile/ImdlParser.js.map +1 -0
- package/lib/cjs/tile/ImdlReader.d.ts +6 -1
- package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
- package/lib/cjs/tile/ImdlReader.js +16 -11
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/OPCFormatInterpreter.js +1 -1
- package/lib/cjs/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/cjs/tile/PntsReader.js +1 -1
- package/lib/cjs/tile/PntsReader.js.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.js +2 -1
- package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTile.d.ts +8 -3
- package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTile.js +4 -1
- package/lib/cjs/tile/RealityTile.js.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +10 -5
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.js +1 -1
- package/lib/cjs/tile/RealityTileTree.js.map +1 -1
- package/lib/cjs/tile/ThreeDTileFormatInterpreter.js +1 -1
- package/lib/cjs/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.d.ts +14 -11
- package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
- package/lib/cjs/tile/TileAdmin.js +9 -52
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileContent.d.ts +6 -0
- package/lib/cjs/tile/TileContent.d.ts.map +1 -1
- package/lib/cjs/tile/TileContent.js.map +1 -1
- package/lib/cjs/tile/TileStorage.js.map +1 -1
- package/lib/cjs/tile/internal.d.ts +9 -0
- package/lib/cjs/tile/internal.d.ts.map +1 -1
- package/lib/cjs/tile/internal.js +9 -0
- package/lib/cjs/tile/internal.js.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts +8 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.js +21 -0
- package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts +6 -4
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.js +6 -4
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts +2 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +55 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +96 -23
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts +11 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts.map +1 -0
- package/lib/cjs/{imdl/ImdlSchema.js → tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js} +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts +15 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js +59 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts +47 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.js +126 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGeometryRenderer.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts +27 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js +135 -0
- package/lib/cjs/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.d.ts +6 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.d.ts.map +1 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.js +22 -0
- package/lib/cjs/tile/map/ImageryProviders/WebMercator.js.map +1 -0
- package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -1
- package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +16 -9
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapFeatureInfo.d.ts +67 -7
- package/lib/cjs/tile/map/MapFeatureInfo.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapFeatureInfo.js +16 -2
- package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.js +3 -0
- package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +4 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js +3 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.d.ts +4 -1
- package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js +3 -0
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +9 -1
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js +1 -15
- package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts +12 -3
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +33 -20
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +2 -3
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +3 -4
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.d.ts +4 -4
- package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js +4 -4
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/QuadId.js.map +1 -1
- package/lib/cjs/tools/ElementSetTool.js +1 -1
- package/lib/cjs/tools/ElementSetTool.js.map +1 -1
- package/lib/cjs/tools/SelectTool.js +1 -1
- package/lib/cjs/tools/SelectTool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.d.ts +8 -6
- package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js +11 -8
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ToolAssistance.d.ts +18 -0
- package/lib/cjs/tools/ToolAssistance.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAssistance.js +8 -0
- package/lib/cjs/tools/ToolAssistance.js.map +1 -1
- package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
- package/lib/cjs/tools/ViewTool.js +3 -2
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/workers/ImdlParser/Worker.d.ts +20 -0
- package/lib/cjs/workers/ImdlParser/Worker.d.ts.map +1 -0
- package/lib/cjs/workers/ImdlParser/Worker.js +32 -0
- package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -0
- package/lib/cjs/workers/ImdlParser/webpack.config.js +40 -0
- package/lib/cjs/workers/RegisterWorker.d.ts +9 -0
- package/lib/cjs/workers/RegisterWorker.d.ts.map +1 -0
- package/lib/cjs/workers/RegisterWorker.js +36 -0
- package/lib/cjs/workers/RegisterWorker.js.map +1 -0
- package/lib/esm/AccuDraw.d.ts +3 -4
- package/lib/esm/AccuDraw.d.ts.map +1 -1
- package/lib/esm/AccuDraw.js +6 -7
- package/lib/esm/AccuDraw.js.map +1 -1
- package/lib/esm/AccuSnap.d.ts +17 -2
- package/lib/esm/AccuSnap.d.ts.map +1 -1
- package/lib/esm/AccuSnap.js +35 -8
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/BackgroundMapGeometry.d.ts +3 -2
- package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/esm/BackgroundMapGeometry.js +47 -7
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BriefcaseConnection.d.ts +3 -3
- package/lib/esm/BriefcaseConnection.js +3 -3
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/BriefcaseTxns.d.ts +2 -2
- package/lib/esm/BriefcaseTxns.d.ts.map +1 -1
- package/lib/esm/BriefcaseTxns.js +3 -3
- package/lib/esm/BriefcaseTxns.js.map +1 -1
- package/lib/esm/ChangeFlags.d.ts +25 -12
- package/lib/esm/ChangeFlags.d.ts.map +1 -1
- package/lib/esm/ChangeFlags.js +24 -11
- package/lib/esm/ChangeFlags.js.map +1 -1
- package/lib/esm/CheckpointConnection.js +1 -1
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/DisplayStyleState.d.ts.map +1 -1
- package/lib/esm/DisplayStyleState.js +2 -1
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/DrawingViewState.d.ts +2 -2
- package/lib/esm/DrawingViewState.d.ts.map +1 -1
- package/lib/esm/DrawingViewState.js +3 -3
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/ElementLocateManager.d.ts +0 -1
- package/lib/esm/ElementLocateManager.d.ts.map +1 -1
- package/lib/esm/ElementLocateManager.js +12 -20
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.js +1 -1
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/FrustumAnimator.js.map +1 -1
- package/lib/esm/GeoServices.d.ts +37 -7
- package/lib/esm/GeoServices.d.ts.map +1 -1
- package/lib/esm/GeoServices.js +75 -25
- package/lib/esm/GeoServices.js.map +1 -1
- package/lib/esm/GraphicalEditingScope.d.ts +2 -2
- package/lib/esm/GraphicalEditingScope.d.ts.map +1 -1
- package/lib/esm/GraphicalEditingScope.js +2 -2
- package/lib/esm/GraphicalEditingScope.js.map +1 -1
- package/lib/esm/HitDetail.d.ts +100 -29
- package/lib/esm/HitDetail.d.ts.map +1 -1
- package/lib/esm/HitDetail.js +90 -37
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.d.ts +18 -14
- package/lib/esm/IModelApp.d.ts.map +1 -1
- package/lib/esm/IModelApp.js +22 -18
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.d.ts +64 -19
- package/lib/esm/IModelConnection.d.ts.map +1 -1
- package/lib/esm/IModelConnection.js +132 -21
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IpcApp.d.ts +1 -1
- package/lib/esm/IpcApp.d.ts.map +1 -1
- package/lib/esm/IpcApp.js +5 -5
- package/lib/esm/IpcApp.js.map +1 -1
- package/lib/esm/LocalhostIpcApp.js +2 -2
- package/lib/esm/LocalhostIpcApp.js.map +1 -1
- package/lib/esm/Marker.d.ts +1 -1
- package/lib/esm/Marker.d.ts.map +1 -1
- package/lib/esm/Marker.js +3 -3
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/NativeApp.d.ts.map +1 -1
- package/lib/esm/NativeApp.js +5 -5
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NoRenderApp.d.ts +1 -1
- package/lib/esm/NoRenderApp.d.ts.map +1 -1
- package/lib/esm/NoRenderApp.js +1 -1
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/RealityDataSource.js +1 -1
- package/lib/esm/RealityDataSource.js.map +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/esm/SheetViewState.d.ts +9 -7
- package/lib/esm/SheetViewState.d.ts.map +1 -1
- package/lib/esm/SheetViewState.js +22 -7
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts +20 -5
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +13 -5
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/Sprites.js +2 -2
- package/lib/esm/Sprites.js.map +1 -1
- package/lib/esm/TentativePoint.d.ts.map +1 -1
- package/lib/esm/TentativePoint.js +10 -1
- package/lib/esm/TentativePoint.js.map +1 -1
- package/lib/esm/ViewContext.d.ts +19 -0
- package/lib/esm/ViewContext.d.ts.map +1 -1
- package/lib/esm/ViewContext.js +9 -0
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator3d.d.ts +3 -6
- package/lib/esm/ViewCreator3d.d.ts.map +1 -1
- package/lib/esm/ViewCreator3d.js +14 -35
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewGlobalLocation.d.ts.map +1 -1
- package/lib/esm/ViewGlobalLocation.js +4 -3
- package/lib/esm/ViewGlobalLocation.js.map +1 -1
- package/lib/esm/ViewManager.d.ts +4 -2
- package/lib/esm/ViewManager.d.ts.map +1 -1
- package/lib/esm/ViewManager.js +4 -2
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/ViewPose.d.ts +11 -11
- package/lib/esm/ViewPose.d.ts.map +1 -1
- package/lib/esm/ViewPose.js +17 -11
- package/lib/esm/ViewPose.js.map +1 -1
- package/lib/esm/ViewState.d.ts +44 -26
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +52 -25
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewingSpace.js +1 -1
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.d.ts +59 -21
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +68 -25
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/ViewportSync.d.ts +2 -2
- package/lib/esm/ViewportSync.d.ts.map +1 -1
- package/lib/esm/ViewportSync.js +2 -2
- package/lib/esm/ViewportSync.js.map +1 -1
- package/lib/esm/common/FrontendLoggerCategory.d.ts.map +1 -0
- package/lib/esm/common/FrontendLoggerCategory.js.map +1 -0
- package/lib/esm/common/ImageUtil.d.ts.map +1 -0
- package/lib/esm/{ImageUtil.js → common/ImageUtil.js} +2 -0
- package/lib/esm/common/ImageUtil.js.map +1 -0
- package/lib/esm/common/ViewRect.d.ts.map +1 -0
- package/lib/esm/common/ViewRect.js.map +1 -0
- package/lib/esm/common/WorkerProxy.d.ts +73 -0
- package/lib/esm/common/WorkerProxy.d.ts.map +1 -0
- package/lib/esm/common/WorkerProxy.js +50 -0
- package/lib/esm/common/WorkerProxy.js.map +1 -0
- package/lib/{cjs → esm/common}/gltf/GltfModel.d.ts +1 -1
- package/lib/esm/common/gltf/GltfModel.d.ts.map +1 -0
- package/lib/esm/common/gltf/GltfModel.js.map +1 -0
- package/lib/esm/common/gltf/GltfParser.d.ts.map +1 -0
- package/lib/esm/common/gltf/GltfParser.js.map +1 -0
- package/lib/esm/common/gltf/GltfSchema.d.ts.map +1 -0
- package/lib/esm/common/gltf/GltfSchema.js.map +1 -0
- package/lib/esm/common/imdl/CompactEdges.d.ts +27 -0
- package/lib/esm/common/imdl/CompactEdges.d.ts.map +1 -0
- package/lib/esm/common/imdl/CompactEdges.js +92 -0
- package/lib/esm/common/imdl/CompactEdges.js.map +1 -0
- package/lib/esm/{imdl → common/imdl}/ImdlModel.d.ts +5 -0
- package/lib/esm/common/imdl/ImdlModel.d.ts.map +1 -0
- package/lib/esm/common/imdl/ImdlModel.js +67 -0
- package/lib/esm/common/imdl/ImdlModel.js.map +1 -0
- package/lib/{cjs → esm/common}/imdl/ImdlSchema.d.ts +68 -36
- package/lib/esm/common/imdl/ImdlSchema.d.ts.map +1 -0
- package/lib/esm/common/imdl/ImdlSchema.js +20 -0
- package/lib/esm/common/imdl/ImdlSchema.js.map +1 -0
- package/lib/esm/{imdl/ImdlParser.d.ts → common/imdl/ParseImdlDocument.d.ts} +13 -8
- package/lib/esm/common/imdl/ParseImdlDocument.d.ts.map +1 -0
- package/lib/esm/{imdl/ImdlParser.js → common/imdl/ParseImdlDocument.js} +40 -25
- package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -0
- package/lib/esm/common/render/AnimationNodeId.d.ts +11 -0
- package/lib/esm/common/render/AnimationNodeId.d.ts.map +1 -0
- package/lib/esm/common/render/AnimationNodeId.js +16 -0
- package/lib/esm/common/render/AnimationNodeId.js.map +1 -0
- package/lib/{cjs/render/RenderMaterial.d.ts → esm/common/render/MaterialParams.d.ts} +7 -20
- package/lib/esm/common/render/MaterialParams.d.ts.map +1 -0
- package/lib/esm/{render/RenderMaterial.js → common/render/MaterialParams.js} +1 -1
- package/lib/esm/common/render/MaterialParams.js.map +1 -0
- package/lib/esm/common/render/TextureParams.d.ts +30 -0
- package/lib/esm/common/render/TextureParams.d.ts.map +1 -0
- package/lib/esm/{render/RenderTexture.js → common/render/TextureParams.js} +1 -1
- package/lib/esm/common/render/TextureParams.js.map +1 -0
- package/lib/{cjs → esm/common}/render/primitives/AuxChannelTable.d.ts +8 -8
- package/lib/esm/common/render/primitives/AuxChannelTable.d.ts.map +1 -0
- package/lib/esm/{render → common/render}/primitives/AuxChannelTable.js +9 -9
- package/lib/esm/common/render/primitives/AuxChannelTable.js.map +1 -0
- package/lib/esm/common/render/primitives/DisplayParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/DisplayParams.js.map +1 -0
- package/lib/esm/common/render/primitives/EdgeParams.d.ts +94 -0
- package/lib/esm/common/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/EdgeParams.js +42 -0
- package/lib/esm/common/render/primitives/EdgeParams.js.map +1 -0
- package/lib/esm/common/render/primitives/MeshParams.d.ts +20 -0
- package/lib/esm/common/render/primitives/MeshParams.d.ts.map +1 -0
- package/lib/esm/{imdl/ImdlSchema.js → common/render/primitives/MeshParams.js} +2 -2
- package/lib/esm/common/render/primitives/MeshParams.js.map +1 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.d.ts +29 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.js +15 -0
- package/lib/esm/common/render/primitives/MeshPrimitive.js.map +1 -0
- package/lib/esm/common/render/primitives/PointStringParams.d.ts +14 -0
- package/lib/esm/common/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/PointStringParams.js +9 -0
- package/lib/esm/common/render/primitives/PointStringParams.js.map +1 -0
- package/lib/esm/common/render/primitives/PolylineParams.d.ts +29 -0
- package/lib/esm/common/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/PolylineParams.js +9 -0
- package/lib/esm/common/render/primitives/PolylineParams.js.map +1 -0
- package/lib/{cjs → esm/common}/render/primitives/SurfaceParams.d.ts +1 -1
- package/lib/esm/common/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/esm/common/render/primitives/VertexIndices.d.ts +26 -0
- package/lib/esm/common/render/primitives/VertexIndices.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/VertexIndices.js +60 -0
- package/lib/esm/common/render/primitives/VertexIndices.js.map +1 -0
- package/lib/esm/common/render/primitives/VertexTable.d.ts +45 -0
- package/lib/esm/common/render/primitives/VertexTable.d.ts.map +1 -0
- package/lib/esm/common/render/primitives/VertexTable.js +34 -0
- package/lib/esm/common/render/primitives/VertexTable.js.map +1 -0
- package/lib/{cjs → esm/common}/render/primitives/VertexTableSplitter.d.ts +20 -3
- package/lib/esm/common/render/primitives/VertexTableSplitter.d.ts.map +1 -0
- package/lib/esm/{render → common/render}/primitives/VertexTableSplitter.js +31 -21
- package/lib/esm/common/render/primitives/VertexTableSplitter.js.map +1 -0
- package/lib/esm/core-frontend.d.ts +45 -11
- package/lib/esm/core-frontend.d.ts.map +1 -1
- package/lib/esm/core-frontend.js +45 -11
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/extension/ExtensionAdmin.js +1 -1
- package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
- package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/render/CanvasDecoration.d.ts +6 -2
- package/lib/esm/render/CanvasDecoration.d.ts.map +1 -1
- package/lib/esm/render/CanvasDecoration.js.map +1 -1
- package/lib/esm/render/CreateRenderMaterialArgs.d.ts +24 -0
- package/lib/esm/render/CreateRenderMaterialArgs.d.ts.map +1 -0
- package/lib/esm/render/CreateRenderMaterialArgs.js +9 -0
- package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -0
- package/lib/{cjs/render/RenderTexture.d.ts → esm/render/CreateTextureArgs.d.ts} +4 -28
- package/lib/esm/render/CreateTextureArgs.d.ts.map +1 -0
- package/lib/esm/render/CreateTextureArgs.js +9 -0
- package/lib/esm/render/CreateTextureArgs.js.map +1 -0
- package/lib/esm/render/GraphicBranch.d.ts +5 -7
- package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.js +0 -8
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/InstancedGraphicParams.d.ts +3 -4
- package/lib/esm/render/InstancedGraphicParams.d.ts.map +1 -1
- package/lib/esm/render/InstancedGraphicParams.js.map +1 -1
- package/lib/esm/render/MockRender.d.ts +4 -4
- package/lib/esm/render/MockRender.d.ts.map +1 -1
- package/lib/esm/render/MockRender.js +1 -1
- package/lib/esm/render/MockRender.js.map +1 -1
- package/lib/esm/render/ParticleCollectionBuilder.d.ts.map +1 -1
- package/lib/esm/render/ParticleCollectionBuilder.js +5 -5
- package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/esm/render/Pixel.d.ts +57 -0
- package/lib/esm/render/Pixel.d.ts.map +1 -1
- package/lib/esm/render/Pixel.js +41 -0
- package/lib/esm/render/Pixel.js.map +1 -1
- package/lib/esm/render/RealityMeshParams.js +2 -2
- package/lib/esm/render/RealityMeshParams.js.map +1 -1
- package/lib/esm/render/RenderSystem.d.ts +24 -10
- package/lib/esm/render/RenderSystem.d.ts.map +1 -1
- package/lib/esm/render/RenderSystem.js +8 -9
- package/lib/esm/render/RenderSystem.js.map +1 -1
- package/lib/esm/render/RenderTarget.d.ts +1 -1
- package/lib/esm/render/RenderTarget.d.ts.map +1 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/esm/render/VisibleFeature.d.ts +1 -1
- package/lib/esm/render/VisibleFeature.d.ts.map +1 -1
- package/lib/esm/render/VisibleFeature.js.map +1 -1
- package/lib/esm/render/primitives/EdgeParams.d.ts +2 -89
- package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -1
- package/lib/esm/render/primitives/EdgeParams.js +38 -74
- package/lib/esm/render/primitives/EdgeParams.js.map +1 -1
- package/lib/esm/render/primitives/PointCloudPrimitive.d.ts +1 -0
- package/lib/esm/render/primitives/PointCloudPrimitive.d.ts.map +1 -1
- package/lib/esm/render/primitives/PointCloudPrimitive.js.map +1 -1
- package/lib/esm/render/primitives/PointStringParams.d.ts +3 -11
- package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -1
- package/lib/esm/render/primitives/PointStringParams.js +25 -28
- package/lib/esm/render/primitives/PointStringParams.js.map +1 -1
- package/lib/esm/render/primitives/Polyface.d.ts +1 -1
- package/lib/esm/render/primitives/Polyface.d.ts.map +1 -1
- package/lib/esm/render/primitives/Polyface.js.map +1 -1
- package/lib/esm/render/primitives/PolylineParams.d.ts +8 -37
- package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -1
- package/lib/esm/render/primitives/PolylineParams.js +34 -43
- package/lib/esm/render/primitives/PolylineParams.js.map +1 -1
- package/lib/esm/render/primitives/Strokes.d.ts +1 -1
- package/lib/esm/render/primitives/Strokes.d.ts.map +1 -1
- package/lib/esm/render/primitives/Strokes.js.map +1 -1
- package/lib/esm/render/primitives/VertexTableBuilder.d.ts +31 -0
- package/lib/esm/render/primitives/VertexTableBuilder.d.ts.map +1 -0
- package/lib/esm/render/primitives/{VertexTable.js → VertexTableBuilder.js} +62 -170
- package/lib/esm/render/primitives/VertexTableBuilder.js.map +1 -0
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.js +1 -1
- package/lib/esm/render/primitives/geometry/GeometryPrimitives.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts +2 -1
- package/lib/esm/render/primitives/mesh/MeshBuilder.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilder.js +5 -2
- package/lib/esm/render/primitives/mesh/MeshBuilder.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts +6 -5
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.js +8 -5
- package/lib/esm/render/primitives/mesh/MeshBuilderMap.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +58 -31
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js +26 -30
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/esm/render/webgl/BatchState.js +1 -1
- package/lib/esm/render/webgl/BatchState.js.map +1 -1
- package/lib/esm/render/webgl/BranchState.d.ts +3 -0
- package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchState.js +2 -0
- package/lib/esm/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/ColorInfo.d.ts +1 -1
- package/lib/esm/render/webgl/ColorInfo.d.ts.map +1 -1
- package/lib/esm/render/webgl/ColorInfo.js.map +1 -1
- package/lib/esm/render/webgl/EdgeGeometry.d.ts +2 -2
- package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/render/webgl/Graphic.d.ts +7 -1
- package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/esm/render/webgl/Graphic.js +7 -2
- package/lib/esm/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/Material.d.ts +1 -1
- package/lib/esm/render/webgl/Material.d.ts.map +1 -1
- package/lib/esm/render/webgl/Material.js.map +1 -1
- package/lib/esm/render/webgl/Mesh.d.ts +2 -2
- package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/Mesh.js +1 -1
- package/lib/esm/render/webgl/Mesh.js.map +1 -1
- package/lib/esm/render/webgl/MeshData.d.ts +2 -2
- package/lib/esm/render/webgl/MeshData.d.ts.map +1 -1
- package/lib/esm/render/webgl/MeshData.js.map +1 -1
- package/lib/esm/render/webgl/MeshGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointString.d.ts +1 -1
- package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointString.js.map +1 -1
- package/lib/esm/render/webgl/Polyline.d.ts +1 -1
- package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/esm/render/webgl/Polyline.js.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.js +1 -1
- package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts +2 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.js +5 -2
- package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.js +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/esm/render/webgl/System.d.ts +7 -6
- package/lib/esm/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/render/webgl/System.js +2 -2
- package/lib/esm/render/webgl/System.js.map +1 -1
- package/lib/esm/render/webgl/Target.d.ts +1 -1
- package/lib/esm/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/render/webgl/Target.js +13 -11
- package/lib/esm/render/webgl/Target.js.map +1 -1
- package/lib/esm/render/webgl/Texture.d.ts +1 -1
- package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
- package/lib/esm/render/webgl/Texture.js +1 -1
- package/lib/esm/render/webgl/Texture.js.map +1 -1
- package/lib/esm/render/webgl/UniformHandle.js +1 -1
- package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
- package/lib/esm/render/webgl/VertexLUT.d.ts +2 -2
- package/lib/esm/render/webgl/VertexLUT.d.ts.map +1 -1
- package/lib/esm/render/webgl/VertexLUT.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.js +32 -19
- package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/tile/B3dmReader.d.ts +1 -1
- package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
- package/lib/esm/tile/B3dmReader.js +1 -1
- package/lib/esm/tile/B3dmReader.js.map +1 -1
- package/lib/esm/tile/DynamicIModelTile.js +1 -1
- package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/tile/FetchCloudStorage.d.ts +15 -0
- package/lib/esm/tile/FetchCloudStorage.d.ts.map +1 -0
- package/lib/esm/tile/FetchCloudStorage.js +31 -0
- package/lib/esm/tile/FetchCloudStorage.js.map +1 -0
- package/lib/esm/tile/GltfReader.d.ts +13 -4
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +81 -29
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/IModelTile.d.ts.map +1 -1
- package/lib/esm/tile/IModelTile.js +5 -10
- package/lib/esm/tile/IModelTile.js.map +1 -1
- package/lib/esm/tile/IModelTileTree.d.ts +4 -1
- package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/IModelTileTree.js +16 -1
- package/lib/esm/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/tile/ImdlDecoder.d.ts +52 -0
- package/lib/esm/tile/ImdlDecoder.d.ts.map +1 -0
- package/lib/esm/tile/ImdlDecoder.js +31 -0
- package/lib/esm/tile/ImdlDecoder.js.map +1 -0
- package/lib/{cjs/imdl → esm/tile}/ImdlGraphicsCreator.d.ts +1 -1
- package/lib/esm/tile/ImdlGraphicsCreator.d.ts.map +1 -0
- package/lib/esm/{imdl → tile}/ImdlGraphicsCreator.js +5 -5
- package/lib/esm/tile/ImdlGraphicsCreator.js.map +1 -0
- package/lib/esm/tile/ImdlParser.d.ts +26 -0
- package/lib/esm/tile/ImdlParser.d.ts.map +1 -0
- package/lib/esm/tile/ImdlParser.js +68 -0
- package/lib/esm/tile/ImdlParser.js.map +1 -0
- package/lib/esm/tile/ImdlReader.d.ts +6 -1
- package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
- package/lib/esm/tile/ImdlReader.js +13 -9
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/OPCFormatInterpreter.js +1 -1
- package/lib/esm/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/esm/tile/PntsReader.js +1 -1
- package/lib/esm/tile/PntsReader.js.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.js +2 -1
- package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTile.d.ts +8 -3
- package/lib/esm/tile/RealityTile.d.ts.map +1 -1
- package/lib/esm/tile/RealityTile.js +4 -1
- package/lib/esm/tile/RealityTile.js.map +1 -1
- package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +10 -5
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.js +1 -1
- package/lib/esm/tile/RealityTileTree.js.map +1 -1
- package/lib/esm/tile/ThreeDTileFormatInterpreter.js +1 -1
- package/lib/esm/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/esm/tile/TileAdmin.d.ts +14 -11
- package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
- package/lib/esm/tile/TileAdmin.js +10 -30
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileContent.d.ts +6 -0
- package/lib/esm/tile/TileContent.d.ts.map +1 -1
- package/lib/esm/tile/TileContent.js.map +1 -1
- package/lib/esm/tile/TileStorage.js.map +1 -1
- package/lib/esm/tile/internal.d.ts +9 -0
- package/lib/esm/tile/internal.d.ts.map +1 -1
- package/lib/esm/tile/internal.js +9 -0
- package/lib/esm/tile/internal.js.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts +8 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.js +21 -0
- package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts +6 -4
- package/lib/esm/tile/map/EllipsoidTerrainProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/EllipsoidTerrainProvider.js +6 -4
- package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts +2 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js +4 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +55 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +96 -24
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts +11 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.d.ts.map +1 -0
- package/lib/esm/{imdl/ImdlModel.js → tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js} +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGisAttributeDrivenSymbology.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts +15 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js +55 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts +47 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.js +122 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGeometryRenderer.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts +27 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js +131 -0
- package/lib/esm/tile/map/ImageryProviders/ArcGisGraphicsRenderer.js.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.d.ts +6 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.d.ts.map +1 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.js +18 -0
- package/lib/esm/tile/map/ImageryProviders/WebMercator.js.map +1 -0
- package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -1
- package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +16 -9
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapFeatureInfo.d.ts +67 -7
- package/lib/esm/tile/map/MapFeatureInfo.d.ts.map +1 -1
- package/lib/esm/tile/map/MapFeatureInfo.js +14 -1
- package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.js +3 -0
- package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +4 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js +3 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.d.ts +4 -1
- package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js +3 -0
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTile.js +9 -1
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.js +1 -15
- package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts +12 -3
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +34 -21
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +2 -3
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js +3 -4
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.d.ts +4 -4
- package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js +4 -4
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/QuadId.js.map +1 -1
- package/lib/esm/tools/ElementSetTool.js +1 -1
- package/lib/esm/tools/ElementSetTool.js.map +1 -1
- package/lib/esm/tools/SelectTool.js +1 -1
- package/lib/esm/tools/SelectTool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.d.ts +8 -6
- package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/esm/tools/ToolAdmin.js +11 -8
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ToolAssistance.d.ts +18 -0
- package/lib/esm/tools/ToolAssistance.d.ts.map +1 -1
- package/lib/esm/tools/ToolAssistance.js +8 -0
- package/lib/esm/tools/ToolAssistance.js.map +1 -1
- package/lib/esm/tools/ViewTool.d.ts.map +1 -1
- package/lib/esm/tools/ViewTool.js +3 -2
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/esm/workers/ImdlParser/Worker.d.ts +20 -0
- package/lib/esm/workers/ImdlParser/Worker.d.ts.map +1 -0
- package/lib/esm/workers/ImdlParser/Worker.js +30 -0
- package/lib/esm/workers/ImdlParser/Worker.js.map +1 -0
- package/lib/esm/workers/ImdlParser/webpack.config.js +40 -0
- package/lib/esm/workers/RegisterWorker.d.ts +9 -0
- package/lib/esm/workers/RegisterWorker.d.ts.map +1 -0
- package/lib/esm/workers/RegisterWorker.js +32 -0
- package/lib/esm/workers/RegisterWorker.js.map +1 -0
- package/lib/public/scripts/parse-imdl-worker.js +1 -0
- package/lib/workers/webpack/parse-imdl-worker.js +1 -0
- package/package.json +32 -69
- package/lib/cjs/FrontendLoggerCategory.d.ts.map +0 -1
- package/lib/cjs/FrontendLoggerCategory.js.map +0 -1
- package/lib/cjs/ImageUtil.d.ts.map +0 -1
- package/lib/cjs/ImageUtil.js.map +0 -1
- package/lib/cjs/ViewRect.d.ts.map +0 -1
- package/lib/cjs/ViewRect.js.map +0 -1
- package/lib/cjs/WebWorkerManager.d.ts +0 -49
- package/lib/cjs/WebWorkerManager.d.ts.map +0 -1
- package/lib/cjs/WebWorkerManager.js +0 -155
- package/lib/cjs/WebWorkerManager.js.map +0 -1
- package/lib/cjs/gltf/GltfModel.d.ts.map +0 -1
- package/lib/cjs/gltf/GltfModel.js.map +0 -1
- package/lib/cjs/gltf/GltfParser.d.ts.map +0 -1
- package/lib/cjs/gltf/GltfParser.js.map +0 -1
- package/lib/cjs/gltf/GltfSchema.d.ts.map +0 -1
- package/lib/cjs/gltf/GltfSchema.js.map +0 -1
- package/lib/cjs/imdl/ImdlGraphicsCreator.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlGraphicsCreator.js.map +0 -1
- package/lib/cjs/imdl/ImdlModel.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlModel.js.map +0 -1
- package/lib/cjs/imdl/ImdlParser.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlParser.js.map +0 -1
- package/lib/cjs/imdl/ImdlSchema.d.ts.map +0 -1
- package/lib/cjs/imdl/ImdlSchema.js.map +0 -1
- package/lib/cjs/render/RenderMaterial.d.ts.map +0 -1
- package/lib/cjs/render/RenderMaterial.js.map +0 -1
- package/lib/cjs/render/RenderTexture.d.ts.map +0 -1
- package/lib/cjs/render/RenderTexture.js.map +0 -1
- package/lib/cjs/render/primitives/AuxChannelTable.d.ts.map +0 -1
- package/lib/cjs/render/primitives/AuxChannelTable.js.map +0 -1
- package/lib/cjs/render/primitives/DisplayParams.d.ts.map +0 -1
- package/lib/cjs/render/primitives/DisplayParams.js.map +0 -1
- package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +0 -1
- package/lib/cjs/render/primitives/SurfaceParams.js.map +0 -1
- package/lib/cjs/render/primitives/VertexTable.d.ts +0 -152
- package/lib/cjs/render/primitives/VertexTable.d.ts.map +0 -1
- package/lib/cjs/render/primitives/VertexTable.js.map +0 -1
- package/lib/cjs/render/primitives/VertexTableSplitter.d.ts.map +0 -1
- package/lib/cjs/render/primitives/VertexTableSplitter.js.map +0 -1
- package/lib/cjs/render-primitives.d.ts +0 -21
- package/lib/cjs/render-primitives.d.ts.map +0 -1
- package/lib/cjs/render-primitives.js +0 -41
- package/lib/cjs/render-primitives.js.map +0 -1
- package/lib/esm/FrontendLoggerCategory.d.ts.map +0 -1
- package/lib/esm/FrontendLoggerCategory.js.map +0 -1
- package/lib/esm/ImageUtil.d.ts.map +0 -1
- package/lib/esm/ImageUtil.js.map +0 -1
- package/lib/esm/ViewRect.d.ts.map +0 -1
- package/lib/esm/ViewRect.js.map +0 -1
- package/lib/esm/WebWorkerManager.d.ts +0 -49
- package/lib/esm/WebWorkerManager.d.ts.map +0 -1
- package/lib/esm/WebWorkerManager.js +0 -150
- package/lib/esm/WebWorkerManager.js.map +0 -1
- package/lib/esm/gltf/GltfModel.d.ts.map +0 -1
- package/lib/esm/gltf/GltfModel.js.map +0 -1
- package/lib/esm/gltf/GltfParser.d.ts.map +0 -1
- package/lib/esm/gltf/GltfParser.js.map +0 -1
- package/lib/esm/gltf/GltfSchema.d.ts.map +0 -1
- package/lib/esm/gltf/GltfSchema.js.map +0 -1
- package/lib/esm/imdl/ImdlGraphicsCreator.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlGraphicsCreator.js.map +0 -1
- package/lib/esm/imdl/ImdlModel.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlModel.js.map +0 -1
- package/lib/esm/imdl/ImdlParser.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlParser.js.map +0 -1
- package/lib/esm/imdl/ImdlSchema.d.ts.map +0 -1
- package/lib/esm/imdl/ImdlSchema.js.map +0 -1
- package/lib/esm/render/RenderMaterial.d.ts.map +0 -1
- package/lib/esm/render/RenderMaterial.js.map +0 -1
- package/lib/esm/render/RenderTexture.d.ts.map +0 -1
- package/lib/esm/render/RenderTexture.js.map +0 -1
- package/lib/esm/render/primitives/AuxChannelTable.d.ts.map +0 -1
- package/lib/esm/render/primitives/AuxChannelTable.js.map +0 -1
- package/lib/esm/render/primitives/DisplayParams.d.ts.map +0 -1
- package/lib/esm/render/primitives/DisplayParams.js.map +0 -1
- package/lib/esm/render/primitives/SurfaceParams.d.ts.map +0 -1
- package/lib/esm/render/primitives/SurfaceParams.js.map +0 -1
- package/lib/esm/render/primitives/VertexTable.d.ts +0 -152
- package/lib/esm/render/primitives/VertexTable.d.ts.map +0 -1
- package/lib/esm/render/primitives/VertexTable.js.map +0 -1
- package/lib/esm/render/primitives/VertexTableSplitter.d.ts.map +0 -1
- package/lib/esm/render/primitives/VertexTableSplitter.js.map +0 -1
- package/lib/esm/render-primitives.d.ts +0 -21
- package/lib/esm/render-primitives.d.ts.map +0 -1
- package/lib/esm/render-primitives.js +0 -25
- package/lib/esm/render-primitives.js.map +0 -1
- /package/lib/cjs/{FrontendLoggerCategory.d.ts → common/FrontendLoggerCategory.d.ts} +0 -0
- /package/lib/cjs/{FrontendLoggerCategory.js → common/FrontendLoggerCategory.js} +0 -0
- /package/lib/cjs/{ImageUtil.d.ts → common/ImageUtil.d.ts} +0 -0
- /package/lib/cjs/{ViewRect.d.ts → common/ViewRect.d.ts} +0 -0
- /package/lib/cjs/{ViewRect.js → common/ViewRect.js} +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfModel.js +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfParser.d.ts +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfParser.js +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfSchema.d.ts +0 -0
- /package/lib/cjs/{gltf → common/gltf}/GltfSchema.js +0 -0
- /package/lib/cjs/{render → common/render}/primitives/DisplayParams.d.ts +0 -0
- /package/lib/cjs/{render → common/render}/primitives/DisplayParams.js +0 -0
- /package/lib/cjs/{render → common/render}/primitives/SurfaceParams.js +0 -0
- /package/lib/esm/{FrontendLoggerCategory.d.ts → common/FrontendLoggerCategory.d.ts} +0 -0
- /package/lib/esm/{FrontendLoggerCategory.js → common/FrontendLoggerCategory.js} +0 -0
- /package/lib/esm/{ImageUtil.d.ts → common/ImageUtil.d.ts} +0 -0
- /package/lib/esm/{ViewRect.d.ts → common/ViewRect.d.ts} +0 -0
- /package/lib/esm/{ViewRect.js → common/ViewRect.js} +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfModel.js +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfParser.d.ts +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfParser.js +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfSchema.d.ts +0 -0
- /package/lib/esm/{gltf → common/gltf}/GltfSchema.js +0 -0
- /package/lib/esm/{render → common/render}/primitives/DisplayParams.d.ts +0 -0
- /package/lib/esm/{render → common/render}/primitives/DisplayParams.js +0 -0
- /package/lib/esm/{render → common/render}/primitives/SurfaceParams.js +0 -0
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ArcGisAttributeDrivenSymbology, ArcGisGeometryBaseRenderer } from "../../internal";
|
|
2
|
+
import { GraphicPrimitive } from "../../../render/GraphicPrimitive";
|
|
3
|
+
import { IModelConnection } from "../../../IModelConnection";
|
|
4
|
+
/** ArcGIS geometry renderer implementation that will "render" a list of [GraphicPrimitive]($frontend)
|
|
5
|
+
* This renderer initial objective is to read geometries when a call to [[MapLayerImageryProvider.getFeatureInfo]] is performed.
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export declare class ArcGisGraphicsRenderer extends ArcGisGeometryBaseRenderer {
|
|
9
|
+
private _scratchPointsArray;
|
|
10
|
+
private _scratchPaths;
|
|
11
|
+
private _graphics;
|
|
12
|
+
private _iModel;
|
|
13
|
+
get attributeSymbology(): ArcGisAttributeDrivenSymbology | undefined;
|
|
14
|
+
constructor(iModel: IModelConnection);
|
|
15
|
+
moveGraphics(): GraphicPrimitive[];
|
|
16
|
+
protected beginPath(): void;
|
|
17
|
+
protected closePath(): void;
|
|
18
|
+
protected lineTo(x: number, y: number): Promise<void>;
|
|
19
|
+
protected moveTo(x: number, y: number): Promise<void>;
|
|
20
|
+
protected fill(): Promise<void>;
|
|
21
|
+
protected stroke(): Promise<void>;
|
|
22
|
+
protected drawPoint(x: number, y: number): void;
|
|
23
|
+
protected finishPoints(): Promise<void>;
|
|
24
|
+
private toSpatialFromGcs;
|
|
25
|
+
private toSpatialFromEcf;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=ArcGisGraphicsRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArcGisGraphicsRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/ArcGisGraphicsRenderer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,8BAA8B,EAAE,0BAA0B,EAAe,MAAM,gBAAgB,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAI7D;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,0BAA0B;IACpE,OAAO,CAAC,mBAAmB,CAA0B;IACrD,OAAO,CAAC,aAAa,CAAmB;IACxC,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,OAAO,CAAmB;IAElC,IAAoB,kBAAkB,IAAI,8BAA8B,GAAG,SAAS,CAAoB;gBAE5F,MAAM,EAAE,gBAAgB;IAK7B,YAAY;IAMnB,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,SAAS;cAOH,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;cAI3B,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;cAU3B,IAAI;cA8BJ,MAAM;cAyBH,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;cAI/B,YAAY;YAmBvB,gBAAgB;IAI9B,OAAO,CAAC,gBAAgB;CAQzB"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Logger } from "@itwin/core-bentley";
|
|
6
|
+
import { Cartographic } from "@itwin/core-common";
|
|
7
|
+
import { GrowableXYZArray, LineString3d, Loop, Point3dArray, RegionOps } from "@itwin/core-geometry";
|
|
8
|
+
import { ArcGisGeometryBaseRenderer, WebMercator } from "../../internal";
|
|
9
|
+
const loggerCategory = "MapLayerImageryProvider.ArcGisGraphicsRenderer";
|
|
10
|
+
/** ArcGIS geometry renderer implementation that will "render" a list of [GraphicPrimitive]($frontend)
|
|
11
|
+
* This renderer initial objective is to read geometries when a call to [[MapLayerImageryProvider.getFeatureInfo]] is performed.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export class ArcGisGraphicsRenderer extends ArcGisGeometryBaseRenderer {
|
|
15
|
+
get attributeSymbology() { return undefined; } // No symbology is applied in this renderer
|
|
16
|
+
constructor(iModel) {
|
|
17
|
+
super();
|
|
18
|
+
this._scratchPointsArray = new GrowableXYZArray();
|
|
19
|
+
this._scratchPaths = [];
|
|
20
|
+
this._graphics = [];
|
|
21
|
+
this._iModel = iModel;
|
|
22
|
+
}
|
|
23
|
+
moveGraphics() {
|
|
24
|
+
const graphics = this._graphics;
|
|
25
|
+
this._graphics = [];
|
|
26
|
+
return graphics;
|
|
27
|
+
}
|
|
28
|
+
beginPath() {
|
|
29
|
+
this._scratchPointsArray.clear();
|
|
30
|
+
this._scratchPaths = [];
|
|
31
|
+
}
|
|
32
|
+
closePath() {
|
|
33
|
+
if (this._scratchPointsArray.length > 0) {
|
|
34
|
+
this._scratchPaths.push(this._scratchPointsArray.getArray());
|
|
35
|
+
this._scratchPointsArray.clear();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
async lineTo(x, y) {
|
|
39
|
+
this._scratchPointsArray.push({ x, y, z: 0 });
|
|
40
|
+
}
|
|
41
|
+
async moveTo(x, y) {
|
|
42
|
+
if (this._scratchPointsArray.length > 0) {
|
|
43
|
+
this._scratchPaths.push(this._scratchPointsArray.getArray());
|
|
44
|
+
this._scratchPointsArray.clear();
|
|
45
|
+
}
|
|
46
|
+
this._scratchPointsArray.push({ x, y, z: 0 });
|
|
47
|
+
}
|
|
48
|
+
async fill() {
|
|
49
|
+
if (this._scratchPaths.length > 0) {
|
|
50
|
+
const loops = [];
|
|
51
|
+
if (this._iModel.noGcsDefined) {
|
|
52
|
+
for (const points of this._scratchPaths) {
|
|
53
|
+
loops.push(Loop.create(LineString3d.create(this.toSpatialFromEcf(points))));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const pathPromises = [];
|
|
58
|
+
for (const points of this._scratchPaths) {
|
|
59
|
+
pathPromises.push(this.toSpatialFromGcs(points));
|
|
60
|
+
}
|
|
61
|
+
const pathsArray = await Promise.all(pathPromises);
|
|
62
|
+
for (const pointsArray of pathsArray) {
|
|
63
|
+
loops.push(Loop.create(LineString3d.create(pointsArray)));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const mergedLoops = RegionOps.constructAllXYRegionLoops(loops);
|
|
67
|
+
for (const loop of mergedLoops) {
|
|
68
|
+
for (const negativeLoop of loop.negativeAreaLoops) {
|
|
69
|
+
this._graphics.push({ type: "loop", loop: negativeLoop });
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
this._scratchPaths = [];
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
async stroke() {
|
|
76
|
+
if (this._scratchPointsArray.length > 0) {
|
|
77
|
+
this._scratchPaths.push(this._scratchPointsArray.getArray());
|
|
78
|
+
this._scratchPointsArray.clear();
|
|
79
|
+
}
|
|
80
|
+
if (this._iModel.noGcsDefined) {
|
|
81
|
+
for (const linestring of this._scratchPaths) {
|
|
82
|
+
this._graphics.push({ type: "linestring", points: this.toSpatialFromEcf(linestring) });
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
const pathPromises = [];
|
|
87
|
+
for (const noGcsDefined of this._scratchPaths) {
|
|
88
|
+
pathPromises.push(this.toSpatialFromGcs(noGcsDefined));
|
|
89
|
+
}
|
|
90
|
+
const reprojectedPaths = await Promise.all(pathPromises);
|
|
91
|
+
for (const path of reprojectedPaths) {
|
|
92
|
+
this._graphics.push({ type: "linestring", points: Point3dArray.clonePoint3dArray(path) });
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
this._scratchPaths = [];
|
|
96
|
+
}
|
|
97
|
+
drawPoint(x, y) {
|
|
98
|
+
this._scratchPointsArray.push({ x, y, z: 0 });
|
|
99
|
+
}
|
|
100
|
+
async finishPoints() {
|
|
101
|
+
if (this._scratchPointsArray.length > 0) {
|
|
102
|
+
if (this._iModel.noGcsDefined) {
|
|
103
|
+
this._graphics.push({ type: "pointstring", points: this.toSpatialFromEcf(this._scratchPointsArray.getArray()) });
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
// Backend reprojection
|
|
107
|
+
const pointsArray = this._scratchPointsArray.getArray();
|
|
108
|
+
try {
|
|
109
|
+
const spatialPoints = await this.toSpatialFromGcs(pointsArray);
|
|
110
|
+
this._graphics.push({ type: "pointstring", points: spatialPoints });
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
Logger.logError(loggerCategory, "ArcGisFeatureGraphicsRenderer: Could not reproject points");
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
this._scratchPointsArray.clear();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async toSpatialFromGcs(geoPoints) {
|
|
120
|
+
return this._iModel.toSpatialFromGcs(geoPoints, { horizontalCRS: { epsg: 3857 }, verticalCRS: { id: "ELLIPSOID" } });
|
|
121
|
+
}
|
|
122
|
+
toSpatialFromEcf(geoPoints) {
|
|
123
|
+
const spatials = [];
|
|
124
|
+
for (const pt of geoPoints) {
|
|
125
|
+
const carto = { longitude: WebMercator.getEPSG4326Lon(pt.x), latitude: WebMercator.getEPSG4326Lat(pt.y), height: pt.z };
|
|
126
|
+
spatials.push(this._iModel.cartographicToSpatialFromEcef(Cartographic.fromDegrees(carto)));
|
|
127
|
+
}
|
|
128
|
+
return spatials;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=ArcGisGraphicsRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArcGisGraphicsRenderer.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/ArcGisGraphicsRenderer.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\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { Cartographic } from \"@itwin/core-common\";\r\nimport { GrowableXYZArray, LineString3d, Loop, Point3d, Point3dArray, RegionOps } from \"@itwin/core-geometry\";\r\nimport { ArcGisAttributeDrivenSymbology, ArcGisGeometryBaseRenderer, WebMercator } from \"../../internal\";\r\nimport { GraphicPrimitive } from \"../../../render/GraphicPrimitive\";\r\nimport { IModelConnection } from \"../../../IModelConnection\";\r\n\r\nconst loggerCategory = \"MapLayerImageryProvider.ArcGisGraphicsRenderer\";\r\n\r\n/** ArcGIS geometry renderer implementation that will \"render\" a list of [GraphicPrimitive]($frontend)\r\n * This renderer initial objective is to read geometries when a call to [[MapLayerImageryProvider.getFeatureInfo]] is performed.\r\n * @internal\r\n */\r\nexport class ArcGisGraphicsRenderer extends ArcGisGeometryBaseRenderer {\r\n private _scratchPointsArray = new GrowableXYZArray();\r\n private _scratchPaths: Point3d[][] = [];\r\n private _graphics: GraphicPrimitive[] = [];\r\n private _iModel: IModelConnection;\r\n\r\n public override get attributeSymbology(): ArcGisAttributeDrivenSymbology | undefined {return undefined;} // No symbology is applied in this renderer\r\n\r\n constructor(iModel: IModelConnection) {\r\n super();\r\n this._iModel = iModel;\r\n }\r\n\r\n public moveGraphics() {\r\n const graphics = this._graphics;\r\n this._graphics = [];\r\n return graphics;\r\n }\r\n\r\n protected beginPath() {\r\n this._scratchPointsArray.clear();\r\n this._scratchPaths = [];\r\n }\r\n\r\n protected closePath() {\r\n if (this._scratchPointsArray.length > 0) {\r\n this._scratchPaths.push(this._scratchPointsArray.getArray());\r\n this._scratchPointsArray.clear();\r\n }\r\n }\r\n\r\n protected async lineTo(x: number, y: number) {\r\n this._scratchPointsArray.push({ x, y, z: 0 });\r\n }\r\n\r\n protected async moveTo(x: number, y: number) {\r\n\r\n if (this._scratchPointsArray.length > 0) {\r\n this._scratchPaths.push(this._scratchPointsArray.getArray());\r\n this._scratchPointsArray.clear();\r\n }\r\n\r\n this._scratchPointsArray.push({ x, y, z: 0 });\r\n }\r\n\r\n protected async fill() {\r\n if (this._scratchPaths.length > 0) {\r\n const loops = [];\r\n if (this._iModel.noGcsDefined) {\r\n for (const points of this._scratchPaths) {\r\n loops.push(Loop.create(LineString3d.create(this.toSpatialFromEcf(points))));\r\n }\r\n } else {\r\n const pathPromises = [];\r\n for (const points of this._scratchPaths) {\r\n pathPromises.push(this.toSpatialFromGcs(points));\r\n }\r\n\r\n const pathsArray = await Promise.all(pathPromises);\r\n for (const pointsArray of pathsArray) {\r\n loops.push(Loop.create(LineString3d.create(pointsArray)));\r\n }\r\n }\r\n\r\n const mergedLoops = RegionOps.constructAllXYRegionLoops(loops);\r\n for (const loop of mergedLoops) {\r\n for (const negativeLoop of loop.negativeAreaLoops) {\r\n this._graphics.push({ type: \"loop\", loop: negativeLoop });\r\n }\r\n }\r\n\r\n this._scratchPaths = [];\r\n }\r\n }\r\n\r\n protected async stroke() {\r\n\r\n if (this._scratchPointsArray.length > 0) {\r\n this._scratchPaths.push(this._scratchPointsArray.getArray());\r\n this._scratchPointsArray.clear();\r\n }\r\n\r\n if (this._iModel.noGcsDefined) {\r\n for (const linestring of this._scratchPaths) {\r\n this._graphics.push({ type: \"linestring\", points: this.toSpatialFromEcf(linestring) });\r\n }\r\n } else {\r\n const pathPromises = [];\r\n for (const noGcsDefined of this._scratchPaths) {\r\n pathPromises.push(this.toSpatialFromGcs(noGcsDefined));\r\n }\r\n\r\n const reprojectedPaths = await Promise.all(pathPromises);\r\n for (const path of reprojectedPaths) {\r\n this._graphics.push({ type: \"linestring\", points: Point3dArray.clonePoint3dArray(path) });\r\n }\r\n }\r\n this._scratchPaths = [];\r\n }\r\n\r\n protected override drawPoint(x: number, y: number): void {\r\n this._scratchPointsArray.push({ x, y, z: 0 });\r\n }\r\n\r\n protected override async finishPoints() {\r\n if (this._scratchPointsArray.length > 0) {\r\n\r\n if (this._iModel.noGcsDefined) {\r\n this._graphics.push({ type: \"pointstring\", points: this.toSpatialFromEcf(this._scratchPointsArray.getArray()) });\r\n } else {\r\n // Backend reprojection\r\n const pointsArray = this._scratchPointsArray.getArray();\r\n try {\r\n const spatialPoints = await this.toSpatialFromGcs(pointsArray);\r\n this._graphics.push({ type: \"pointstring\", points: spatialPoints });\r\n } catch (error) {\r\n Logger.logError(loggerCategory, \"ArcGisFeatureGraphicsRenderer: Could not reproject points\");\r\n }\r\n }\r\n this._scratchPointsArray.clear();\r\n }\r\n }\r\n\r\n private async toSpatialFromGcs(geoPoints: Point3d[]) {\r\n return this._iModel.toSpatialFromGcs(geoPoints, { horizontalCRS: { epsg: 3857 }, verticalCRS: { id: \"ELLIPSOID\" } });\r\n }\r\n\r\n private toSpatialFromEcf(geoPoints: Point3d[]) {\r\n const spatials = [];\r\n for (const pt of geoPoints) {\r\n const carto = { longitude: WebMercator.getEPSG4326Lon(pt.x), latitude: WebMercator.getEPSG4326Lat(pt.y), height: pt.z };\r\n spatials.push(this._iModel.cartographicToSpatialFromEcef(Cartographic.fromDegrees(carto)));\r\n }\r\n return spatials;\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebMercator.d.ts","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/WebMercator.ts"],"names":[],"mappings":"AAOA,gBAAgB;AAChB,qBAAa,WAAW;WAGR,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;WAKrC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAIpD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Angle, Constant } from "@itwin/core-geometry";
|
|
6
|
+
/** @internal */
|
|
7
|
+
export class WebMercator {
|
|
8
|
+
// calculates the longitude in EPSG:4326 (WGS84) from the projected x cartesian coordinate in EPSG:3857
|
|
9
|
+
static getEPSG4326Lon(x3857) {
|
|
10
|
+
return Angle.radiansToDegrees(x3857 / Constant.earthRadiusWGS84.equator);
|
|
11
|
+
}
|
|
12
|
+
// calculates the latitude in EPSG:4326 (WGS84) from the projected y cartesian coordinate in EPSG:3857
|
|
13
|
+
static getEPSG4326Lat(y3857) {
|
|
14
|
+
const y = 2 * Math.atan(Math.exp(y3857 / Constant.earthRadiusWGS84.equator)) - (Math.PI / 2);
|
|
15
|
+
return Angle.radiansToDegrees(y);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=WebMercator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebMercator.js","sourceRoot":"","sources":["../../../../../src/tile/map/ImageryProviders/WebMercator.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEvD,gBAAgB;AAChB,MAAM,OAAO,WAAW;IAEtB,uGAAuG;IAChG,MAAM,CAAC,cAAc,CAAC,KAAa;QACxC,OAAO,KAAK,CAAC,gBAAgB,CAAC,KAAK,GAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,sGAAsG;IAC/F,MAAM,CAAC,cAAc,CAAC,KAAa;QACxC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAC,CAAC,CAAC,CAAC;QAC3F,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;CACF","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\r\nimport { Angle, Constant } from \"@itwin/core-geometry\";\r\n\r\n/** @internal */\r\nexport class WebMercator {\r\n\r\n // calculates the longitude in EPSG:4326 (WGS84) from the projected x cartesian coordinate in EPSG:3857\r\n public static getEPSG4326Lon(x3857: number): number {\r\n return Angle.radiansToDegrees(x3857/Constant.earthRadiusWGS84.equator);\r\n }\r\n\r\n // calculates the latitude in EPSG:4326 (WGS84) from the projected y cartesian coordinate in EPSG:3857\r\n public static getEPSG4326Lat(y3857: number): number {\r\n const y = 2 * Math.atan(Math.exp(y3857 / Constant.earthRadiusWGS84.equator)) - (Math.PI/2);\r\n return Angle.radiansToDegrees(y);\r\n }\r\n}\r\n"]}
|
|
@@ -7,6 +7,7 @@ import { RenderMemory } from "../../render/RenderMemory";
|
|
|
7
7
|
import { RenderSystem } from "../../render/RenderSystem";
|
|
8
8
|
import { ScreenViewport } from "../../Viewport";
|
|
9
9
|
import { MapCartoRectangle, MapLayerFeatureInfo, MapLayerImageryProvider, MapLayerTileTreeReference, MapTile, MapTileTreeScaleRangeVisibility, MapTilingScheme, QuadId, RealityTile, RealityTileLoader, RealityTileTree, RealityTileTreeParams, Tile, TileContent, TileDrawArgs, TileLoadPriority, TileParams, TileRequest, TileTreeLoadStatus, TileTreeOwner } from "../internal";
|
|
10
|
+
import { HitDetail } from "../../HitDetail";
|
|
10
11
|
/** @internal */
|
|
11
12
|
export interface ImageryTileContent extends TileContent {
|
|
12
13
|
imageryTexture?: RenderTexture;
|
|
@@ -91,7 +92,7 @@ declare class ImageryTileLoader extends RealityTileLoader {
|
|
|
91
92
|
get maximumScreenSize(): number;
|
|
92
93
|
get imageryProvider(): MapLayerImageryProvider;
|
|
93
94
|
getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void>;
|
|
94
|
-
getMapFeatureInfo(featureInfos: MapLayerFeatureInfo[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void>;
|
|
95
|
+
getMapFeatureInfo(featureInfos: MapLayerFeatureInfo[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree, hit: HitDetail): Promise<void>;
|
|
95
96
|
generateChildIds(tile: ImageryMapTile, resolveChildren: (childIds: QuadId[]) => void): void;
|
|
96
97
|
/** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */
|
|
97
98
|
loadChildren(_tile: RealityTile): Promise<Tile[] | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageryTileTree.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/ImageryTileTree.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAsC,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE1I,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,iBAAiB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,OAAO,EAAE,+BAA+B,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,eAAe,EAC9M,qBAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAY,kBAAkB,EAAE,aAAa,EAE/I,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ImageryTileTree.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/ImageryTileTree.ts"],"names":[],"mappings":"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"}
|
|
@@ -224,8 +224,8 @@ class ImageryTileLoader extends RealityTileLoader {
|
|
|
224
224
|
get maximumScreenSize() { return this._imageryProvider.maximumScreenSize; }
|
|
225
225
|
get imageryProvider() { return this._imageryProvider; }
|
|
226
226
|
async getToolTip(strings, quadId, carto, tree) { await this._imageryProvider.getToolTip(strings, quadId, carto, tree); }
|
|
227
|
-
async getMapFeatureInfo(featureInfos, quadId, carto, tree) {
|
|
228
|
-
await this._imageryProvider.getFeatureInfo(featureInfos, quadId, carto, tree);
|
|
227
|
+
async getMapFeatureInfo(featureInfos, quadId, carto, tree, hit) {
|
|
228
|
+
await this._imageryProvider.getFeatureInfo(featureInfos, quadId, carto, tree, hit);
|
|
229
229
|
}
|
|
230
230
|
generateChildIds(tile, resolveChildren) { return this._imageryProvider.generateChildIds(tile, resolveChildren); }
|
|
231
231
|
/** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */
|
|
@@ -271,18 +271,25 @@ class ImageryMapLayerTreeSupplier {
|
|
|
271
271
|
* This allows the ID to serve as a lookup key to find the corresponding TileTree.
|
|
272
272
|
*/
|
|
273
273
|
compareTileTreeIds(lhs, rhs) {
|
|
274
|
-
let cmp = compareStrings(lhs.settings.
|
|
274
|
+
let cmp = compareStrings(lhs.settings.formatId, rhs.settings.formatId);
|
|
275
275
|
if (0 === cmp) {
|
|
276
|
-
cmp =
|
|
276
|
+
cmp = compareStrings(lhs.settings.url, rhs.settings.url);
|
|
277
277
|
if (0 === cmp) {
|
|
278
|
-
cmp = compareStringsOrUndefined(lhs.settings.
|
|
278
|
+
cmp = compareStringsOrUndefined(lhs.settings.userName, rhs.settings.userName);
|
|
279
279
|
if (0 === cmp) {
|
|
280
|
-
cmp =
|
|
280
|
+
cmp = compareStringsOrUndefined(lhs.settings.password, rhs.settings.password);
|
|
281
281
|
if (0 === cmp) {
|
|
282
|
-
cmp =
|
|
282
|
+
cmp = compareBooleans(lhs.settings.transparentBackground, rhs.settings.transparentBackground);
|
|
283
283
|
if (0 === cmp) {
|
|
284
|
-
|
|
285
|
-
|
|
284
|
+
cmp = compareNumbers(lhs.settings.subLayers.length, rhs.settings.subLayers.length);
|
|
285
|
+
if (0 === cmp) {
|
|
286
|
+
for (let i = 0; i < lhs.settings.subLayers.length && 0 === cmp; i++) {
|
|
287
|
+
cmp = compareStrings(lhs.settings.subLayers[i].name, rhs.settings.subLayers[i].name);
|
|
288
|
+
if (0 === cmp) {
|
|
289
|
+
cmp = compareBooleans(lhs.settings.subLayers[i].visible, rhs.settings.subLayers[i].visible);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
286
293
|
}
|
|
287
294
|
}
|
|
288
295
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageryTileTree.js","sourceRoot":"","sources":["../../../../src/tile/map/ImageryTileTree.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tiles\r\n */\r\n\r\nimport { assert, compareBooleans, compareNumbers, compareStrings, compareStringsOrUndefined, dispose } from \"@itwin/core-bentley\";\r\nimport { Angle, Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport { Cartographic, ImageMapLayerSettings, ImageSource, MapLayerSettings, RenderTexture, ViewFlagOverrides } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../../IModelApp\";\r\nimport { IModelConnection } from \"../../IModelConnection\";\r\nimport { RenderMemory } from \"../../render/RenderMemory\";\r\nimport { RenderSystem } from \"../../render/RenderSystem\";\r\nimport { ScreenViewport } from \"../../Viewport\";\r\nimport {\r\n MapCartoRectangle, MapLayerFeatureInfo, MapLayerImageryProvider, MapLayerTileTreeReference, MapTile, MapTileTreeScaleRangeVisibility, MapTilingScheme, QuadId, RealityTile, RealityTileLoader, RealityTileTree,\r\n RealityTileTreeParams, Tile, TileContent, TileDrawArgs, TileLoadPriority, TileParams, TileRequest, TileTree, TileTreeLoadStatus, TileTreeOwner,\r\n TileTreeSupplier,\r\n} from \"../internal\";\r\n\r\n/** @internal */\r\nexport interface ImageryTileContent extends TileContent {\r\n imageryTexture?: RenderTexture;\r\n}\r\n\r\n/** @internal */\r\nexport class ImageryMapTile extends RealityTile {\r\n private _texture?: RenderTexture;\r\n private _mapTileUsageCount = 0;\r\n\r\n private readonly _outOfLodRange: boolean;\r\n\r\n constructor(params: TileParams, public imageryTree: ImageryMapTileTree, public quadId: QuadId, public rectangle: MapCartoRectangle) {\r\n super(params, imageryTree);\r\n\r\n this._outOfLodRange = this.depth < imageryTree.minDepth;\r\n }\r\n\r\n public get texture() { return this._texture; }\r\n public get tilingScheme() { return this.imageryTree.tilingScheme; }\r\n public override get isDisplayable() { return (this.depth > 1) && super.isDisplayable; }\r\n public override get isOutOfLodRange(): boolean { return this._outOfLodRange;}\r\n\r\n public override setContent(content: ImageryTileContent): void {\r\n this._texture = content.imageryTexture; // No dispose - textures may be shared by terrain tiles so let garbage collector dispose them.\r\n if (undefined === content.imageryTexture)\r\n (this.parent! as ImageryMapTile).setLeaf(); // Avoid traversing bing branches after no graphics is found.\r\n\r\n this.setIsReady();\r\n }\r\n\r\n public selectCartoDrapeTiles(drapeTiles: ImageryMapTile[], highResolutionReplacementTiles: ImageryMapTile[], rectangleToDrape: MapCartoRectangle, drapePixelSize: number, args: TileDrawArgs): TileTreeLoadStatus {\r\n // Base draping overlap on width rather than height so that tiling schemes with multiple root nodes overlay correctly.\r\n const isSmallerThanDrape = (this.rectangle.xLength() / this.maximumSize) < drapePixelSize;\r\n if ( (this.isLeaf ) // Include leaves so tiles get stretched past max LOD levels. (Only for base imagery layer)\r\n || isSmallerThanDrape\r\n || this._anyChildNotFound) {\r\n if (this.isOutOfLodRange ) {\r\n drapeTiles.push(this);\r\n this.setIsReady();\r\n } else if (this.isLeaf && !isSmallerThanDrape && !this._anyChildNotFound) {\r\n // These tiles are selected because we are beyond the max LOD of the tile tree,\r\n // might be used to display \"stretched\" tiles instead of having blank.\r\n highResolutionReplacementTiles.push(this);\r\n } else {\r\n drapeTiles.push(this);\r\n }\r\n return TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n let status = this.loadChildren();\r\n if (TileTreeLoadStatus.Loading === status) {\r\n args.markChildrenLoading();\r\n } else if (TileTreeLoadStatus.Loaded === status) {\r\n if (undefined !== this.children) {\r\n for (const child of this.children) {\r\n const mapChild = child as ImageryMapTile;\r\n if (mapChild.rectangle.intersectsRange(rectangleToDrape))\r\n status = mapChild.selectCartoDrapeTiles(drapeTiles, highResolutionReplacementTiles, rectangleToDrape, drapePixelSize, args);\r\n if (TileTreeLoadStatus.Loaded !== status)\r\n break;\r\n }\r\n }\r\n }\r\n return status;\r\n }\r\n public markMapTileUsage() {\r\n this._mapTileUsageCount++;\r\n }\r\n public releaseMapTileUsage() {\r\n assert(!this._texture || this._mapTileUsageCount > 0);\r\n if (this._mapTileUsageCount)\r\n this._mapTileUsageCount--;\r\n }\r\n\r\n /** @internal */\r\n public override setLeaf(): void {\r\n // Don't potentially re-request the children later.\r\n this.disposeChildren();\r\n this._isLeaf = true;\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n protected override _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (error: Error) => void): void {\r\n\r\n const imageryTree = this.imageryTree;\r\n const resolveChildren = (childIds: QuadId[]) => {\r\n const children = new Array<Tile>();\r\n const childrenAreLeaves = (this.depth + 1) === imageryTree.maxDepth;\r\n // If children depth is lower than min LOD, mark them as disabled.\r\n // This is important: if those tiles are requested and the server refuse to serve them,\r\n // they will be marked as not found and their descendant will never be displayed.\r\n\r\n childIds.forEach((quadId) => {\r\n const rectangle = imageryTree.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);\r\n const range = Range3d.createXYZXYZ(rectangle.low.x, rectangle.low.x, 0, rectangle.high.x, rectangle.high.y, 0);\r\n const maximumSize = imageryTree.imageryLoader.maximumScreenSize;\r\n const tile = new ImageryMapTile({ parent: this, isLeaf: childrenAreLeaves, contentId: quadId.contentId, range, maximumSize}, imageryTree, quadId, rectangle);\r\n children.push(tile);\r\n });\r\n\r\n resolve(children);\r\n };\r\n\r\n imageryTree.imageryLoader.generateChildIds(this, resolveChildren);\r\n }\r\n\r\n protected override _collectStatistics(stats: RenderMemory.Statistics): void {\r\n super._collectStatistics(stats);\r\n if (this._texture)\r\n stats.addTexture(this._texture.bytesUsed);\r\n }\r\n\r\n public override freeMemory(): void {\r\n // ###TODO MapTiles and ImageryMapTiles share resources and don't currently interact well with TileAdmin.freeMemory(). Opt out for now.\r\n }\r\n\r\n public override disposeContents() {\r\n if (0 === this._mapTileUsageCount) {\r\n super.disposeContents();\r\n this.disposeTexture();\r\n }\r\n }\r\n\r\n private disposeTexture(): void {\r\n this._texture = dispose(this._texture);\r\n }\r\n public override dispose() {\r\n this._mapTileUsageCount = 0;\r\n super.dispose();\r\n }\r\n}\r\n\r\n/** Object that holds various state values for an ImageryTileTree\r\n * @internal */\r\nexport class ImageryTileTreeState {\r\n private _scaleRangeVis: MapTileTreeScaleRangeVisibility;\r\n\r\n constructor() {\r\n this._scaleRangeVis = MapTileTreeScaleRangeVisibility.Unknown;\r\n }\r\n\r\n /** Get the scale range visibility of the imagery tile tree.\r\n * @returns the scale range visibility of the imagery tile tree.\r\n */\r\n public getScaleRangeVisibility() {return this._scaleRangeVis;}\r\n\r\n /** Makes a deep copy of the current object.\r\n */\r\n public clone() {\r\n const clone = new ImageryTileTreeState();\r\n clone._scaleRangeVis = this._scaleRangeVis;\r\n return clone;\r\n }\r\n\r\n /** Reset the scale range visibility of imagery tile tree (i.e. unknown)\r\n */\r\n public reset() {\r\n this._scaleRangeVis = MapTileTreeScaleRangeVisibility.Unknown;\r\n }\r\n\r\n /** Sets the scale range visibility of the current imagery tile tree.\r\n * The state will be derived based on the previous visibility values:\r\n * Initial state: 'Unknown'\r\n * The first call will set the state to either: 'Visible' or 'Hidden'.\r\n * If subsequent visibility values are not consistent with the first visibility state, the state become 'Partial',\r\n * meaning the imagery tree currently contains a mixed of tiles being in range and out of range.\r\n */\r\n public setScaleRangeVisibility(visible: boolean) {\r\n if (this._scaleRangeVis === MapTileTreeScaleRangeVisibility.Unknown) {\r\n this._scaleRangeVis = (visible ? MapTileTreeScaleRangeVisibility.Visible : MapTileTreeScaleRangeVisibility.Hidden);\r\n } else if ((visible && this._scaleRangeVis === MapTileTreeScaleRangeVisibility.Hidden) || (!visible && this._scaleRangeVis === MapTileTreeScaleRangeVisibility.Visible)) {\r\n this._scaleRangeVis = MapTileTreeScaleRangeVisibility.Partial;\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class ImageryMapTileTree extends RealityTileTree {\r\n constructor(params: RealityTileTreeParams, private _imageryLoader: ImageryTileLoader) {\r\n super(params);\r\n const rootQuadId = new QuadId(_imageryLoader.imageryProvider.tilingScheme.rootLevel, 0, 0);\r\n this._rootTile = new ImageryMapTile(params.rootTile, this, rootQuadId, this.getTileRectangle(rootQuadId));\r\n }\r\n public get tilingScheme(): MapTilingScheme { return this._imageryLoader.imageryProvider.tilingScheme; }\r\n public addLogoCards(cards: HTMLTableElement, vp: ScreenViewport): void {\r\n this._imageryLoader.addLogoCards(cards, vp);\r\n }\r\n\r\n public getTileRectangle(quadId: QuadId): MapCartoRectangle {\r\n return this.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);\r\n }\r\n public get imageryLoader(): ImageryTileLoader { return this._imageryLoader; }\r\n public override get is3d(): boolean {\r\n assert(false);\r\n return false;\r\n }\r\n public override get viewFlagOverrides(): ViewFlagOverrides {\r\n assert(false);\r\n return {};\r\n }\r\n public override get isContentUnbounded(): boolean {\r\n assert(false);\r\n return true;\r\n }\r\n protected override _selectTiles(_args: TileDrawArgs): Tile[] {\r\n assert(false);\r\n return [];\r\n }\r\n public override draw(_args: TileDrawArgs): void { assert(false); }\r\n\r\n private static _scratchDrapeRectangle = MapCartoRectangle.createZero();\r\n private static _drapeIntersectionScale = 1.0 - 1.0E-5;\r\n\r\n public selectCartoDrapeTiles(drapeTiles: ImageryMapTile[], highResolutionReplacementTiles: ImageryMapTile[], tileToDrape: MapTile, args: TileDrawArgs): TileTreeLoadStatus {\r\n const drapeRectangle = tileToDrape.rectangle.clone(ImageryMapTileTree._scratchDrapeRectangle);\r\n // Base draping overlap on width rather than height so that tiling schemes with multiple root nodes overlay correctly.\r\n const drapePixelSize = 1.05 * tileToDrape.rectangle.xLength() / tileToDrape.maximumSize;\r\n drapeRectangle.scaleAboutCenterInPlace(ImageryMapTileTree._drapeIntersectionScale); // Contract slightly to avoid draping adjacent or slivers.\r\n return (this.rootTile as ImageryMapTile).selectCartoDrapeTiles(drapeTiles, highResolutionReplacementTiles, drapeRectangle, drapePixelSize, args);\r\n }\r\n public cartoRectangleFromQuadId(quadId: QuadId): MapCartoRectangle { return this.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level); }\r\n}\r\n\r\nclass ImageryTileLoader extends RealityTileLoader {\r\n constructor(private _imageryProvider: MapLayerImageryProvider, private _iModel: IModelConnection) {\r\n super();\r\n }\r\n public override computeTilePriority(tile: Tile): number {\r\n return 25 * (this._imageryProvider.usesCachedTiles ? 2 : 1) - tile.depth; // Always cached first then descending by depth (high resolution/front first)\r\n } // Prioritized fast, cached tiles first.\r\n\r\n public get maxDepth(): number { return this._imageryProvider.maximumZoomLevel; }\r\n public get minDepth(): number { return this._imageryProvider.minimumZoomLevel; }\r\n public get priority(): TileLoadPriority { return TileLoadPriority.Map; }\r\n public addLogoCards(cards: HTMLTableElement, vp: ScreenViewport): void {\r\n this._imageryProvider.addLogoCards(cards, vp);\r\n }\r\n\r\n public get maximumScreenSize(): number { return this._imageryProvider.maximumScreenSize; }\r\n public get imageryProvider(): MapLayerImageryProvider { return this._imageryProvider; }\r\n public async getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void> { await this._imageryProvider.getToolTip(strings, quadId, carto, tree); }\r\n\r\n public async getMapFeatureInfo(featureInfos: MapLayerFeatureInfo[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void> {\r\n await this._imageryProvider.getFeatureInfo(featureInfos, quadId, carto, tree);\r\n }\r\n\r\n public generateChildIds(tile: ImageryMapTile, resolveChildren: (childIds: QuadId[]) => void) { return this._imageryProvider.generateChildIds(tile, resolveChildren); }\r\n\r\n /** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */\r\n public async loadChildren(_tile: RealityTile): Promise<Tile[] | undefined> {\r\n assert(false);\r\n return undefined;\r\n }\r\n public async requestTileContent(tile: Tile, _isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n return this._imageryProvider.loadTile(quadId.row, quadId.column, quadId.level);\r\n }\r\n\r\n public getRequestChannel(_tile: Tile) {\r\n // ###TODO use hostname from url - but so many layers to go through to get that...\r\n return IModelApp.tileAdmin.channels.getForHttp(\"itwinjs-imagery\");\r\n }\r\n\r\n public override async loadTileContent(tile: Tile, data: TileRequest.ResponseData, system: RenderSystem): Promise<ImageryTileContent> {\r\n assert(data instanceof ImageSource);\r\n assert(tile instanceof ImageryMapTile);\r\n const content: ImageryTileContent = {};\r\n const texture = await this.loadTextureImage(data, system);\r\n if (undefined === texture)\r\n return content;\r\n\r\n content.imageryTexture = texture;\r\n return content;\r\n }\r\n\r\n private async loadTextureImage(source: ImageSource, system: RenderSystem): Promise<RenderTexture | undefined> {\r\n try {\r\n return await system.createTextureFromSource({\r\n type: RenderTexture.Type.FilteredTileSection,\r\n source,\r\n });\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n}\r\n\r\ninterface ImageryMapLayerTreeId {\r\n settings: ImageMapLayerSettings;\r\n}\r\n\r\n/** Supplies a TileTree that can load and draw tiles based on our imagery provider.\r\n * The TileTree is uniquely identified by its imagery type.\r\n */\r\nclass ImageryMapLayerTreeSupplier implements TileTreeSupplier {\r\n /** Return a numeric value indicating how two tree IDs are ordered relative to one another.\r\n * This allows the ID to serve as a lookup key to find the corresponding TileTree.\r\n */\r\n public compareTileTreeIds(lhs: ImageryMapLayerTreeId, rhs: ImageryMapLayerTreeId): number {\r\n let cmp = compareStrings(lhs.settings.url, rhs.settings.url);\r\n if (0 === cmp) {\r\n cmp = compareStringsOrUndefined(lhs.settings.userName, rhs.settings.userName);\r\n if (0 === cmp) {\r\n cmp = compareStringsOrUndefined(lhs.settings.password, rhs.settings.password);\r\n if (0 === cmp) {\r\n cmp = compareBooleans(lhs.settings.transparentBackground, rhs.settings.transparentBackground);\r\n if (0 === cmp) {\r\n cmp = compareNumbers(lhs.settings.subLayers.length, rhs.settings.subLayers.length);\r\n if (0 === cmp) {\r\n for (let i = 0; i < lhs.settings.subLayers.length && 0 === cmp; i++)\r\n cmp = compareBooleans(lhs.settings.subLayers[i].visible, rhs.settings.subLayers[i].visible);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return cmp;\r\n }\r\n\r\n /** The first time a tree of a particular imagery type is requested, this function creates it. */\r\n public async createTileTree(id: ImageryMapLayerTreeId, iModel: IModelConnection): Promise<TileTree | undefined> {\r\n const imageryProvider = IModelApp.mapLayerFormatRegistry.createImageryProvider(id.settings);\r\n if (undefined === imageryProvider)\r\n return undefined;\r\n\r\n await imageryProvider.initialize();\r\n const modelId = iModel.transientIds.getNext();\r\n const tilingScheme = imageryProvider.tilingScheme;\r\n const rootLevel = (1 === tilingScheme.numberOfLevelZeroTilesX && 1 === tilingScheme.numberOfLevelZeroTilesY) ? 0 : -1;\r\n const rootTileId = new QuadId(rootLevel, 0, 0).contentId;\r\n const rootRange = Range3d.createXYZXYZ(-Angle.piRadians, -Angle.piOver2Radians, 0, Angle.piRadians, Angle.piOver2Radians, 0);\r\n const rootTileProps = { contentId: rootTileId, range: rootRange, maximumSize: 0 };\r\n const loader = new ImageryTileLoader(imageryProvider, iModel);\r\n const treeProps = { rootTile: rootTileProps, id: modelId, modelId, iModel, location: Transform.createIdentity(), priority: TileLoadPriority.Map, loader, gcsConverterAvailable: false };\r\n return new ImageryMapTileTree(treeProps, loader);\r\n }\r\n}\r\n\r\nconst imageryTreeSupplier = new ImageryMapLayerTreeSupplier();\r\n\r\n/** A reference to one of our tile trees. The specific TileTree drawn may change when the desired imagery type or target iModel changes.\r\n * @internal\r\n */\r\nexport class ImageryMapLayerTreeReference extends MapLayerTileTreeReference {\r\n public constructor(layerSettings: MapLayerSettings, layerIndex: number, iModel: IModelConnection) {\r\n super(layerSettings, layerIndex, iModel);\r\n }\r\n\r\n public override get castsShadows() { return false; }\r\n\r\n /** Return the owner of the TileTree to draw. */\r\n public get treeOwner(): TileTreeOwner {\r\n return this.iModel.tiles.getTileTreeOwner({ settings: this._layerSettings }, imageryTreeSupplier);\r\n }\r\n\r\n public override resetTreeOwner() {\r\n return this.iModel.tiles.resetTileTreeOwner({ settings: this._layerSettings }, imageryTreeSupplier);\r\n }\r\n\r\n public override get imageryProvider(): MapLayerImageryProvider | undefined {\r\n const tree = this.treeOwner.load();\r\n if (!tree || !(tree instanceof ImageryMapTileTree))\r\n return undefined;\r\n\r\n return tree.imageryLoader.imageryProvider;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ImageryTileTree.js","sourceRoot":"","sources":["../../../../src/tile/map/ImageryTileTree.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tiles\r\n */\r\n\r\nimport { assert, compareBooleans, compareNumbers, compareStrings, compareStringsOrUndefined, dispose } from \"@itwin/core-bentley\";\r\nimport { Angle, Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport { Cartographic, ImageMapLayerSettings, ImageSource, MapLayerSettings, RenderTexture, ViewFlagOverrides } from \"@itwin/core-common\";\r\nimport { IModelApp } from \"../../IModelApp\";\r\nimport { IModelConnection } from \"../../IModelConnection\";\r\nimport { RenderMemory } from \"../../render/RenderMemory\";\r\nimport { RenderSystem } from \"../../render/RenderSystem\";\r\nimport { ScreenViewport } from \"../../Viewport\";\r\nimport {\r\n MapCartoRectangle, MapLayerFeatureInfo, MapLayerImageryProvider, MapLayerTileTreeReference, MapTile, MapTileTreeScaleRangeVisibility, MapTilingScheme, QuadId, RealityTile, RealityTileLoader, RealityTileTree,\r\n RealityTileTreeParams, Tile, TileContent, TileDrawArgs, TileLoadPriority, TileParams, TileRequest, TileTree, TileTreeLoadStatus, TileTreeOwner,\r\n TileTreeSupplier,\r\n} from \"../internal\";\r\nimport { HitDetail } from \"../../HitDetail\";\r\n\r\n/** @internal */\r\nexport interface ImageryTileContent extends TileContent {\r\n imageryTexture?: RenderTexture;\r\n}\r\n\r\n/** @internal */\r\nexport class ImageryMapTile extends RealityTile {\r\n private _texture?: RenderTexture;\r\n private _mapTileUsageCount = 0;\r\n\r\n private readonly _outOfLodRange: boolean;\r\n\r\n constructor(params: TileParams, public imageryTree: ImageryMapTileTree, public quadId: QuadId, public rectangle: MapCartoRectangle) {\r\n super(params, imageryTree);\r\n\r\n this._outOfLodRange = this.depth < imageryTree.minDepth;\r\n }\r\n\r\n public get texture() { return this._texture; }\r\n public get tilingScheme() { return this.imageryTree.tilingScheme; }\r\n public override get isDisplayable() { return (this.depth > 1) && super.isDisplayable; }\r\n public override get isOutOfLodRange(): boolean { return this._outOfLodRange;}\r\n\r\n public override setContent(content: ImageryTileContent): void {\r\n this._texture = content.imageryTexture; // No dispose - textures may be shared by terrain tiles so let garbage collector dispose them.\r\n if (undefined === content.imageryTexture)\r\n (this.parent! as ImageryMapTile).setLeaf(); // Avoid traversing bing branches after no graphics is found.\r\n\r\n this.setIsReady();\r\n }\r\n\r\n public selectCartoDrapeTiles(drapeTiles: ImageryMapTile[], highResolutionReplacementTiles: ImageryMapTile[], rectangleToDrape: MapCartoRectangle, drapePixelSize: number, args: TileDrawArgs): TileTreeLoadStatus {\r\n // Base draping overlap on width rather than height so that tiling schemes with multiple root nodes overlay correctly.\r\n const isSmallerThanDrape = (this.rectangle.xLength() / this.maximumSize) < drapePixelSize;\r\n if ( (this.isLeaf ) // Include leaves so tiles get stretched past max LOD levels. (Only for base imagery layer)\r\n || isSmallerThanDrape\r\n || this._anyChildNotFound) {\r\n if (this.isOutOfLodRange ) {\r\n drapeTiles.push(this);\r\n this.setIsReady();\r\n } else if (this.isLeaf && !isSmallerThanDrape && !this._anyChildNotFound) {\r\n // These tiles are selected because we are beyond the max LOD of the tile tree,\r\n // might be used to display \"stretched\" tiles instead of having blank.\r\n highResolutionReplacementTiles.push(this);\r\n } else {\r\n drapeTiles.push(this);\r\n }\r\n return TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n let status = this.loadChildren();\r\n if (TileTreeLoadStatus.Loading === status) {\r\n args.markChildrenLoading();\r\n } else if (TileTreeLoadStatus.Loaded === status) {\r\n if (undefined !== this.children) {\r\n for (const child of this.children) {\r\n const mapChild = child as ImageryMapTile;\r\n if (mapChild.rectangle.intersectsRange(rectangleToDrape))\r\n status = mapChild.selectCartoDrapeTiles(drapeTiles, highResolutionReplacementTiles, rectangleToDrape, drapePixelSize, args);\r\n if (TileTreeLoadStatus.Loaded !== status)\r\n break;\r\n }\r\n }\r\n }\r\n return status;\r\n }\r\n public markMapTileUsage() {\r\n this._mapTileUsageCount++;\r\n }\r\n public releaseMapTileUsage() {\r\n assert(!this._texture || this._mapTileUsageCount > 0);\r\n if (this._mapTileUsageCount)\r\n this._mapTileUsageCount--;\r\n }\r\n\r\n /** @internal */\r\n public override setLeaf(): void {\r\n // Don't potentially re-request the children later.\r\n this.disposeChildren();\r\n this._isLeaf = true;\r\n this._childrenLoadStatus = TileTreeLoadStatus.Loaded;\r\n }\r\n\r\n protected override _loadChildren(resolve: (children: Tile[] | undefined) => void, _reject: (error: Error) => void): void {\r\n\r\n const imageryTree = this.imageryTree;\r\n const resolveChildren = (childIds: QuadId[]) => {\r\n const children = new Array<Tile>();\r\n const childrenAreLeaves = (this.depth + 1) === imageryTree.maxDepth;\r\n // If children depth is lower than min LOD, mark them as disabled.\r\n // This is important: if those tiles are requested and the server refuse to serve them,\r\n // they will be marked as not found and their descendant will never be displayed.\r\n\r\n childIds.forEach((quadId) => {\r\n const rectangle = imageryTree.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);\r\n const range = Range3d.createXYZXYZ(rectangle.low.x, rectangle.low.x, 0, rectangle.high.x, rectangle.high.y, 0);\r\n const maximumSize = imageryTree.imageryLoader.maximumScreenSize;\r\n const tile = new ImageryMapTile({ parent: this, isLeaf: childrenAreLeaves, contentId: quadId.contentId, range, maximumSize}, imageryTree, quadId, rectangle);\r\n children.push(tile);\r\n });\r\n\r\n resolve(children);\r\n };\r\n\r\n imageryTree.imageryLoader.generateChildIds(this, resolveChildren);\r\n }\r\n\r\n protected override _collectStatistics(stats: RenderMemory.Statistics): void {\r\n super._collectStatistics(stats);\r\n if (this._texture)\r\n stats.addTexture(this._texture.bytesUsed);\r\n }\r\n\r\n public override freeMemory(): void {\r\n // ###TODO MapTiles and ImageryMapTiles share resources and don't currently interact well with TileAdmin.freeMemory(). Opt out for now.\r\n }\r\n\r\n public override disposeContents() {\r\n if (0 === this._mapTileUsageCount) {\r\n super.disposeContents();\r\n this.disposeTexture();\r\n }\r\n }\r\n\r\n private disposeTexture(): void {\r\n this._texture = dispose(this._texture);\r\n }\r\n public override dispose() {\r\n this._mapTileUsageCount = 0;\r\n super.dispose();\r\n }\r\n}\r\n\r\n/** Object that holds various state values for an ImageryTileTree\r\n * @internal */\r\nexport class ImageryTileTreeState {\r\n private _scaleRangeVis: MapTileTreeScaleRangeVisibility;\r\n\r\n constructor() {\r\n this._scaleRangeVis = MapTileTreeScaleRangeVisibility.Unknown;\r\n }\r\n\r\n /** Get the scale range visibility of the imagery tile tree.\r\n * @returns the scale range visibility of the imagery tile tree.\r\n */\r\n public getScaleRangeVisibility() {return this._scaleRangeVis;}\r\n\r\n /** Makes a deep copy of the current object.\r\n */\r\n public clone() {\r\n const clone = new ImageryTileTreeState();\r\n clone._scaleRangeVis = this._scaleRangeVis;\r\n return clone;\r\n }\r\n\r\n /** Reset the scale range visibility of imagery tile tree (i.e. unknown)\r\n */\r\n public reset() {\r\n this._scaleRangeVis = MapTileTreeScaleRangeVisibility.Unknown;\r\n }\r\n\r\n /** Sets the scale range visibility of the current imagery tile tree.\r\n * The state will be derived based on the previous visibility values:\r\n * Initial state: 'Unknown'\r\n * The first call will set the state to either: 'Visible' or 'Hidden'.\r\n * If subsequent visibility values are not consistent with the first visibility state, the state become 'Partial',\r\n * meaning the imagery tree currently contains a mixed of tiles being in range and out of range.\r\n */\r\n public setScaleRangeVisibility(visible: boolean) {\r\n if (this._scaleRangeVis === MapTileTreeScaleRangeVisibility.Unknown) {\r\n this._scaleRangeVis = (visible ? MapTileTreeScaleRangeVisibility.Visible : MapTileTreeScaleRangeVisibility.Hidden);\r\n } else if ((visible && this._scaleRangeVis === MapTileTreeScaleRangeVisibility.Hidden) || (!visible && this._scaleRangeVis === MapTileTreeScaleRangeVisibility.Visible)) {\r\n this._scaleRangeVis = MapTileTreeScaleRangeVisibility.Partial;\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class ImageryMapTileTree extends RealityTileTree {\r\n constructor(params: RealityTileTreeParams, private _imageryLoader: ImageryTileLoader) {\r\n super(params);\r\n const rootQuadId = new QuadId(_imageryLoader.imageryProvider.tilingScheme.rootLevel, 0, 0);\r\n this._rootTile = new ImageryMapTile(params.rootTile, this, rootQuadId, this.getTileRectangle(rootQuadId));\r\n }\r\n public get tilingScheme(): MapTilingScheme { return this._imageryLoader.imageryProvider.tilingScheme; }\r\n public addLogoCards(cards: HTMLTableElement, vp: ScreenViewport): void {\r\n this._imageryLoader.addLogoCards(cards, vp);\r\n }\r\n\r\n public getTileRectangle(quadId: QuadId): MapCartoRectangle {\r\n return this.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);\r\n }\r\n public get imageryLoader(): ImageryTileLoader { return this._imageryLoader; }\r\n public override get is3d(): boolean {\r\n assert(false);\r\n return false;\r\n }\r\n public override get viewFlagOverrides(): ViewFlagOverrides {\r\n assert(false);\r\n return {};\r\n }\r\n public override get isContentUnbounded(): boolean {\r\n assert(false);\r\n return true;\r\n }\r\n protected override _selectTiles(_args: TileDrawArgs): Tile[] {\r\n assert(false);\r\n return [];\r\n }\r\n public override draw(_args: TileDrawArgs): void { assert(false); }\r\n\r\n private static _scratchDrapeRectangle = MapCartoRectangle.createZero();\r\n private static _drapeIntersectionScale = 1.0 - 1.0E-5;\r\n\r\n public selectCartoDrapeTiles(drapeTiles: ImageryMapTile[], highResolutionReplacementTiles: ImageryMapTile[], tileToDrape: MapTile, args: TileDrawArgs): TileTreeLoadStatus {\r\n const drapeRectangle = tileToDrape.rectangle.clone(ImageryMapTileTree._scratchDrapeRectangle);\r\n // Base draping overlap on width rather than height so that tiling schemes with multiple root nodes overlay correctly.\r\n const drapePixelSize = 1.05 * tileToDrape.rectangle.xLength() / tileToDrape.maximumSize;\r\n drapeRectangle.scaleAboutCenterInPlace(ImageryMapTileTree._drapeIntersectionScale); // Contract slightly to avoid draping adjacent or slivers.\r\n return (this.rootTile as ImageryMapTile).selectCartoDrapeTiles(drapeTiles, highResolutionReplacementTiles, drapeRectangle, drapePixelSize, args);\r\n }\r\n public cartoRectangleFromQuadId(quadId: QuadId): MapCartoRectangle { return this.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level); }\r\n}\r\n\r\nclass ImageryTileLoader extends RealityTileLoader {\r\n constructor(private _imageryProvider: MapLayerImageryProvider, private _iModel: IModelConnection) {\r\n super();\r\n }\r\n public override computeTilePriority(tile: Tile): number {\r\n return 25 * (this._imageryProvider.usesCachedTiles ? 2 : 1) - tile.depth; // Always cached first then descending by depth (high resolution/front first)\r\n } // Prioritized fast, cached tiles first.\r\n\r\n public get maxDepth(): number { return this._imageryProvider.maximumZoomLevel; }\r\n public get minDepth(): number { return this._imageryProvider.minimumZoomLevel; }\r\n public get priority(): TileLoadPriority { return TileLoadPriority.Map; }\r\n public addLogoCards(cards: HTMLTableElement, vp: ScreenViewport): void {\r\n this._imageryProvider.addLogoCards(cards, vp);\r\n }\r\n\r\n public get maximumScreenSize(): number { return this._imageryProvider.maximumScreenSize; }\r\n public get imageryProvider(): MapLayerImageryProvider { return this._imageryProvider; }\r\n public async getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void> { await this._imageryProvider.getToolTip(strings, quadId, carto, tree); }\r\n\r\n public async getMapFeatureInfo(featureInfos: MapLayerFeatureInfo[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree, hit: HitDetail): Promise<void> {\r\n await this._imageryProvider.getFeatureInfo(featureInfos, quadId, carto, tree, hit);\r\n }\r\n\r\n public generateChildIds(tile: ImageryMapTile, resolveChildren: (childIds: QuadId[]) => void) { return this._imageryProvider.generateChildIds(tile, resolveChildren); }\r\n\r\n /** Load this tile's children, possibly asynchronously. Pass them to `resolve`, or an error to `reject`. */\r\n public async loadChildren(_tile: RealityTile): Promise<Tile[] | undefined> {\r\n assert(false);\r\n return undefined;\r\n }\r\n public async requestTileContent(tile: Tile, _isCanceled: () => boolean): Promise<TileRequest.Response> {\r\n const quadId = QuadId.createFromContentId(tile.contentId);\r\n return this._imageryProvider.loadTile(quadId.row, quadId.column, quadId.level);\r\n }\r\n\r\n public getRequestChannel(_tile: Tile) {\r\n // ###TODO use hostname from url - but so many layers to go through to get that...\r\n return IModelApp.tileAdmin.channels.getForHttp(\"itwinjs-imagery\");\r\n }\r\n\r\n public override async loadTileContent(tile: Tile, data: TileRequest.ResponseData, system: RenderSystem): Promise<ImageryTileContent> {\r\n assert(data instanceof ImageSource);\r\n assert(tile instanceof ImageryMapTile);\r\n const content: ImageryTileContent = {};\r\n const texture = await this.loadTextureImage(data, system);\r\n if (undefined === texture)\r\n return content;\r\n\r\n content.imageryTexture = texture;\r\n return content;\r\n }\r\n\r\n private async loadTextureImage(source: ImageSource, system: RenderSystem): Promise<RenderTexture | undefined> {\r\n try {\r\n return await system.createTextureFromSource({\r\n type: RenderTexture.Type.FilteredTileSection,\r\n source,\r\n });\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n}\r\n\r\ninterface ImageryMapLayerTreeId {\r\n settings: ImageMapLayerSettings;\r\n}\r\n\r\n/** Supplies a TileTree that can load and draw tiles based on our imagery provider.\r\n * The TileTree is uniquely identified by its imagery type.\r\n */\r\nclass ImageryMapLayerTreeSupplier implements TileTreeSupplier {\r\n /** Return a numeric value indicating how two tree IDs are ordered relative to one another.\r\n * This allows the ID to serve as a lookup key to find the corresponding TileTree.\r\n */\r\n public compareTileTreeIds(lhs: ImageryMapLayerTreeId, rhs: ImageryMapLayerTreeId): number {\r\n let cmp = compareStrings(lhs.settings.formatId, rhs.settings.formatId);\r\n if (0 === cmp) {\r\n cmp = compareStrings(lhs.settings.url, rhs.settings.url);\r\n if (0 === cmp) {\r\n cmp = compareStringsOrUndefined(lhs.settings.userName, rhs.settings.userName);\r\n if (0 === cmp) {\r\n cmp = compareStringsOrUndefined(lhs.settings.password, rhs.settings.password);\r\n if (0 === cmp) {\r\n cmp = compareBooleans(lhs.settings.transparentBackground, rhs.settings.transparentBackground);\r\n if (0 === cmp) {\r\n cmp = compareNumbers(lhs.settings.subLayers.length, rhs.settings.subLayers.length);\r\n if (0 === cmp) {\r\n for (let i = 0; i < lhs.settings.subLayers.length && 0 === cmp; i++) {\r\n cmp = compareStrings(lhs.settings.subLayers[i].name, rhs.settings.subLayers[i].name);\r\n if (0 === cmp) {\r\n cmp = compareBooleans(lhs.settings.subLayers[i].visible, rhs.settings.subLayers[i].visible);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return cmp;\r\n }\r\n\r\n /** The first time a tree of a particular imagery type is requested, this function creates it. */\r\n public async createTileTree(id: ImageryMapLayerTreeId, iModel: IModelConnection): Promise<TileTree | undefined> {\r\n const imageryProvider = IModelApp.mapLayerFormatRegistry.createImageryProvider(id.settings);\r\n if (undefined === imageryProvider)\r\n return undefined;\r\n\r\n await imageryProvider.initialize();\r\n const modelId = iModel.transientIds.getNext();\r\n const tilingScheme = imageryProvider.tilingScheme;\r\n const rootLevel = (1 === tilingScheme.numberOfLevelZeroTilesX && 1 === tilingScheme.numberOfLevelZeroTilesY) ? 0 : -1;\r\n const rootTileId = new QuadId(rootLevel, 0, 0).contentId;\r\n const rootRange = Range3d.createXYZXYZ(-Angle.piRadians, -Angle.piOver2Radians, 0, Angle.piRadians, Angle.piOver2Radians, 0);\r\n const rootTileProps = { contentId: rootTileId, range: rootRange, maximumSize: 0 };\r\n const loader = new ImageryTileLoader(imageryProvider, iModel);\r\n const treeProps = { rootTile: rootTileProps, id: modelId, modelId, iModel, location: Transform.createIdentity(), priority: TileLoadPriority.Map, loader, gcsConverterAvailable: false };\r\n return new ImageryMapTileTree(treeProps, loader);\r\n }\r\n}\r\n\r\nconst imageryTreeSupplier = new ImageryMapLayerTreeSupplier();\r\n\r\n/** A reference to one of our tile trees. The specific TileTree drawn may change when the desired imagery type or target iModel changes.\r\n * @internal\r\n */\r\nexport class ImageryMapLayerTreeReference extends MapLayerTileTreeReference {\r\n public constructor(layerSettings: MapLayerSettings, layerIndex: number, iModel: IModelConnection) {\r\n super(layerSettings, layerIndex, iModel);\r\n }\r\n\r\n public override get castsShadows() { return false; }\r\n\r\n /** Return the owner of the TileTree to draw. */\r\n public get treeOwner(): TileTreeOwner {\r\n return this.iModel.tiles.getTileTreeOwner({ settings: this._layerSettings }, imageryTreeSupplier);\r\n }\r\n\r\n public override resetTreeOwner() {\r\n return this.iModel.tiles.resetTileTreeOwner({ settings: this._layerSettings }, imageryTreeSupplier);\r\n }\r\n\r\n public override get imageryProvider(): MapLayerImageryProvider | undefined {\r\n const tree = this.treeOwner.load();\r\n if (!tree || !(tree instanceof ImageryMapTileTree))\r\n return undefined;\r\n\r\n return tree.imageryLoader.imageryProvider;\r\n }\r\n}\r\n"]}
|
|
@@ -3,24 +3,84 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { PropertyDescription, PropertyRecord, PropertyValue } from "@itwin/appui-abstract";
|
|
5
5
|
import { Cartographic } from "@itwin/core-common";
|
|
6
|
-
|
|
6
|
+
import { GraphicPrimitive } from "../../render/GraphicPrimitive";
|
|
7
|
+
/** Contains record data of a [[MapLayerFeature]] instance .
|
|
8
|
+
* @beta
|
|
9
|
+
*/
|
|
7
10
|
export declare class MapFeatureInfoRecord extends PropertyRecord {
|
|
11
|
+
/** Construct a record from [PropertyValue]($appui-abstract) and [PropertyDescription]($appui-abstract) objects. */
|
|
8
12
|
constructor(value: PropertyValue, property: PropertyDescription);
|
|
9
13
|
}
|
|
10
|
-
/**
|
|
14
|
+
/** Main feature info container for a MapFeatureInfo query.
|
|
15
|
+
* Results are grouped per map-layer instance.
|
|
16
|
+
* @see [[MapLayerFeatureInfo]]
|
|
17
|
+
* @beta
|
|
18
|
+
*/
|
|
11
19
|
export interface MapFeatureInfo {
|
|
12
|
-
|
|
20
|
+
/** Feature info for each layer. */
|
|
21
|
+
layerInfos?: MapLayerFeatureInfo[];
|
|
22
|
+
/** The approximate location in world coordinates on the identified feature. */
|
|
13
23
|
hitPoint?: Cartographic;
|
|
14
24
|
}
|
|
15
|
-
/**
|
|
25
|
+
/** Features container for a given map-layer.
|
|
26
|
+
* Results are grouped per sub-layer instance.
|
|
27
|
+
* @see [[MapSubLayerFeatureInfo]]
|
|
28
|
+
* @beta
|
|
29
|
+
*/
|
|
16
30
|
export interface MapLayerFeatureInfo {
|
|
31
|
+
/** Name of the layer associated with the identified feature. */
|
|
17
32
|
layerName: string;
|
|
18
|
-
info
|
|
33
|
+
/** Feature info for each sub-layer. */
|
|
34
|
+
subLayerInfos?: MapSubLayerFeatureInfo[];
|
|
19
35
|
}
|
|
20
|
-
/**
|
|
36
|
+
/** Features container for a given sub-layer.
|
|
37
|
+
* @see [[MapSubLayerFeatureInfo]]
|
|
38
|
+
* @beta
|
|
39
|
+
*/
|
|
21
40
|
export interface MapSubLayerFeatureInfo {
|
|
41
|
+
/** Name of the layer associated with the identified feature. */
|
|
22
42
|
subLayerName: string;
|
|
43
|
+
/** Name of the field representing the feature label (suggestion only). */
|
|
23
44
|
displayFieldName?: string;
|
|
24
|
-
|
|
45
|
+
/** List of features identified for this sub-layer. */
|
|
46
|
+
features: MapLayerFeature[];
|
|
47
|
+
}
|
|
48
|
+
/** Attributes and graphics container of a given feature instance
|
|
49
|
+
* Results are grouped per sub-layer instance.
|
|
50
|
+
* @see [[GraphicPrimitive]]
|
|
51
|
+
* @see [[MapFeatureInfoRecord]]
|
|
52
|
+
* @beta
|
|
53
|
+
*/
|
|
54
|
+
export interface MapLayerFeature {
|
|
55
|
+
/** List of geometries identified for this feature. */
|
|
56
|
+
geometries?: MapLayerFeatureGeometry[];
|
|
57
|
+
/** List of attributes identified for this feature. */
|
|
58
|
+
attributes: MapLayerFeatureAttribute[];
|
|
59
|
+
}
|
|
60
|
+
/** Geometry of a [[MapLayerFeature]]
|
|
61
|
+
* @see [[MapLayerFeature]]
|
|
62
|
+
* @beta
|
|
63
|
+
*/
|
|
64
|
+
export interface MapLayerFeatureGeometry {
|
|
65
|
+
/** graphic primitive representing a feature. */
|
|
66
|
+
graphic: GraphicPrimitive;
|
|
67
|
+
}
|
|
68
|
+
/** Attribute of a [[MapLayerFeature]]
|
|
69
|
+
* @see [[MapLayerFeature]]
|
|
70
|
+
* @beta
|
|
71
|
+
*/
|
|
72
|
+
export interface MapLayerFeatureAttribute {
|
|
73
|
+
/** Value of a feature attribute. */
|
|
74
|
+
value: PropertyValue;
|
|
75
|
+
/** Property (or field) description of a feature attribute. */
|
|
76
|
+
property: PropertyDescription;
|
|
77
|
+
}
|
|
78
|
+
/** Utility class that creates a [PropertyRecord]($appui-abstract) out of [[MapLayerFeatureAttribute]]
|
|
79
|
+
* @see [[MapLayerFeature]]
|
|
80
|
+
* @beta
|
|
81
|
+
*/
|
|
82
|
+
export declare class MapLayerFeatureRecord {
|
|
83
|
+
/** Convert a [[MapLayerFeatureAttribute]] object into [PropertyRecord]($appui-abstract) object. */
|
|
84
|
+
static createRecordFromAttribute(attribute: MapLayerFeatureAttribute): PropertyRecord;
|
|
25
85
|
}
|
|
26
86
|
//# sourceMappingURL=MapFeatureInfo.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapFeatureInfo.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/MapFeatureInfo.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"MapFeatureInfo.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/MapFeatureInfo.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,cAAc;IACtD,mHAAmH;gBAChG,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,mBAAmB;CAGvE;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACnC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sDAAsD;IACtD,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,UAAU,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACvC,sDAAsD;IACtD,UAAU,EAAE,wBAAwB,EAAE,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,gDAAgD;IAChD,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,KAAK,EAAE,aAAa,CAAC;IACrB,8DAA8D;IAC9D,QAAQ,EAAE,mBAAmB,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,mGAAmG;WACrF,yBAAyB,CAAC,SAAS,EAAE,wBAAwB;CAG5E"}
|
|
@@ -6,10 +6,23 @@
|
|
|
6
6
|
* @module MapLayers
|
|
7
7
|
*/
|
|
8
8
|
import { PropertyRecord } from "@itwin/appui-abstract";
|
|
9
|
-
/**
|
|
9
|
+
/** Contains record data of a [[MapLayerFeature]] instance .
|
|
10
|
+
* @beta
|
|
11
|
+
*/
|
|
10
12
|
export class MapFeatureInfoRecord extends PropertyRecord {
|
|
13
|
+
/** Construct a record from [PropertyValue]($appui-abstract) and [PropertyDescription]($appui-abstract) objects. */
|
|
11
14
|
constructor(value, property) {
|
|
12
15
|
super(value, property);
|
|
13
16
|
}
|
|
14
17
|
}
|
|
18
|
+
/** Utility class that creates a [PropertyRecord]($appui-abstract) out of [[MapLayerFeatureAttribute]]
|
|
19
|
+
* @see [[MapLayerFeature]]
|
|
20
|
+
* @beta
|
|
21
|
+
*/
|
|
22
|
+
export class MapLayerFeatureRecord {
|
|
23
|
+
/** Convert a [[MapLayerFeatureAttribute]] object into [PropertyRecord]($appui-abstract) object. */
|
|
24
|
+
static createRecordFromAttribute(attribute) {
|
|
25
|
+
return new PropertyRecord(attribute.value, attribute.property);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
15
28
|
//# sourceMappingURL=MapFeatureInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapFeatureInfo.js","sourceRoot":"","sources":["../../../../src/tile/map/MapFeatureInfo.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAuB,cAAc,EAAiB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"MapFeatureInfo.js","sourceRoot":"","sources":["../../../../src/tile/map/MapFeatureInfo.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAuB,cAAc,EAAiB,MAAM,uBAAuB,CAAC;AAI3F;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,cAAc;IACtD,mHAAmH;IACnH,YAAmB,KAAoB,EAAE,QAA6B;QACpE,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACzB,CAAC;CACF;AAwED;;;GAGG;AACH,MAAM,OAAO,qBAAqB;IAChC,mGAAmG;IAC5F,MAAM,CAAC,yBAAyB,CAAC,SAAmC;QACzE,OAAO,IAAI,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;CACF","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 MapLayers\r\n */\r\n\r\nimport { PropertyDescription, PropertyRecord, PropertyValue } from \"@itwin/appui-abstract\";\r\nimport { Cartographic } from \"@itwin/core-common\";\r\nimport { GraphicPrimitive } from \"../../render/GraphicPrimitive\";\r\n\r\n/** Contains record data of a [[MapLayerFeature]] instance .\r\n * @beta\r\n */\r\nexport class MapFeatureInfoRecord extends PropertyRecord {\r\n /** Construct a record from [PropertyValue]($appui-abstract) and [PropertyDescription]($appui-abstract) objects. */\r\n public constructor(value: PropertyValue, property: PropertyDescription) {\r\n super(value, property);\r\n }\r\n}\r\n\r\n/** Main feature info container for a MapFeatureInfo query.\r\n * Results are grouped per map-layer instance.\r\n * @see [[MapLayerFeatureInfo]]\r\n * @beta\r\n */\r\nexport interface MapFeatureInfo {\r\n /** Feature info for each layer. */\r\n layerInfos?: MapLayerFeatureInfo[];\r\n /** The approximate location in world coordinates on the identified feature. */\r\n hitPoint?: Cartographic;\r\n}\r\n\r\n/** Features container for a given map-layer.\r\n * Results are grouped per sub-layer instance.\r\n * @see [[MapSubLayerFeatureInfo]]\r\n * @beta\r\n */\r\nexport interface MapLayerFeatureInfo {\r\n /** Name of the layer associated with the identified feature. */\r\n layerName: string;\r\n /** Feature info for each sub-layer. */\r\n subLayerInfos?: MapSubLayerFeatureInfo[];\r\n}\r\n\r\n/** Features container for a given sub-layer.\r\n * @see [[MapSubLayerFeatureInfo]]\r\n * @beta\r\n */\r\nexport interface MapSubLayerFeatureInfo {\r\n /** Name of the layer associated with the identified feature. */\r\n subLayerName: string;\r\n /** Name of the field representing the feature label (suggestion only). */\r\n displayFieldName?: string;\r\n /** List of features identified for this sub-layer. */\r\n features: MapLayerFeature[];\r\n}\r\n\r\n/** Attributes and graphics container of a given feature instance\r\n * Results are grouped per sub-layer instance.\r\n * @see [[GraphicPrimitive]]\r\n * @see [[MapFeatureInfoRecord]]\r\n * @beta\r\n */\r\nexport interface MapLayerFeature {\r\n /** List of geometries identified for this feature. */\r\n geometries?: MapLayerFeatureGeometry[];\r\n /** List of attributes identified for this feature. */\r\n attributes: MapLayerFeatureAttribute[];\r\n}\r\n\r\n/** Geometry of a [[MapLayerFeature]]\r\n * @see [[MapLayerFeature]]\r\n * @beta\r\n */\r\nexport interface MapLayerFeatureGeometry {\r\n /** graphic primitive representing a feature. */\r\n graphic: GraphicPrimitive;\r\n}\r\n\r\n/** Attribute of a [[MapLayerFeature]]\r\n * @see [[MapLayerFeature]]\r\n * @beta\r\n */\r\nexport interface MapLayerFeatureAttribute {\r\n /** Value of a feature attribute. */\r\n value: PropertyValue;\r\n /** Property (or field) description of a feature attribute. */\r\n property: PropertyDescription;\r\n}\r\n\r\n/** Utility class that creates a [PropertyRecord]($appui-abstract) out of [[MapLayerFeatureAttribute]]\r\n * @see [[MapLayerFeature]]\r\n * @beta\r\n */\r\nexport class MapLayerFeatureRecord {\r\n /** Convert a [[MapLayerFeatureAttribute]] object into [PropertyRecord]($appui-abstract) object. */\r\n public static createRecordFromAttribute(attribute: MapLayerFeatureAttribute) {\r\n return new PropertyRecord(attribute.value, attribute.property);\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapLayerImageryFormats.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/MapLayerImageryFormats.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,qBAAqB,EAAoB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAOL,cAAc,EACd,uBAAuB,EAEvB,wBAAwB,EACxB,yBAAyB,EAO1B,MAAM,aAAa,CAAC;AAErB;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,cAAc;IACvD,gBAAgB;WACO,kBAAkB,CAAC,aAAa,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,SAAS;CAGrK;AAED,cAAM,iBAAkB,SAAQ,qBAAqB;IACnD,OAAuB,QAAQ,SAAS;WAEjB,qBAAqB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,uBAAuB,GAAG,SAAS;WAGrF,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC;CA0DzJ;
|
|
1
|
+
{"version":3,"file":"MapLayerImageryFormats.d.ts","sourceRoot":"","sources":["../../../../src/tile/map/MapLayerImageryFormats.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,qBAAqB,EAAoB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAOL,cAAc,EACd,uBAAuB,EAEvB,wBAAwB,EACxB,yBAAyB,EAO1B,MAAM,aAAa,CAAC;AAErB;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,cAAc;IACvD,gBAAgB;WACO,kBAAkB,CAAC,aAAa,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,SAAS;CAGrK;AAED,cAAM,iBAAkB,SAAQ,qBAAqB;IACnD,OAAuB,QAAQ,SAAS;WAEjB,qBAAqB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,uBAAuB,GAAG,SAAS;WAGrF,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC;CA0DzJ;AAuGD,gBAAgB;AAChB,eAAO,MAAM,8BAA8B,8BAA2K,CAAC"}
|