@itwin/core-frontend 4.10.0-dev.8 → 5.0.0-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -1
- package/lib/cjs/AccuDraw.d.ts.map +1 -1
- package/lib/cjs/AccuDraw.js +0 -2
- package/lib/cjs/AccuDraw.js.map +1 -1
- package/lib/cjs/AccuSnap.d.ts.map +1 -1
- package/lib/cjs/AccuSnap.js +17 -8
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js +3 -3
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BingLocation.js +1 -1
- package/lib/cjs/BingLocation.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.d.ts +0 -1
- package/lib/cjs/BriefcaseConnection.d.ts.map +1 -1
- package/lib/cjs/BriefcaseConnection.js +2 -3
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/BriefcaseTxns.d.ts.map +1 -1
- package/lib/cjs/ChangeFlags.d.ts +1 -1
- package/lib/cjs/ChangeFlags.d.ts.map +1 -1
- 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 +6 -6
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/DrawingViewState.d.ts +8 -6
- package/lib/cjs/DrawingViewState.d.ts.map +1 -1
- package/lib/cjs/DrawingViewState.js +20 -10
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js +1 -1
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/GraphicalEditingScope.d.ts.map +1 -1
- package/lib/cjs/HitDetail.d.ts +37 -5
- package/lib/cjs/HitDetail.d.ts.map +1 -1
- package/lib/cjs/HitDetail.js +12 -2
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.d.ts.map +1 -1
- package/lib/cjs/IModelApp.js +1 -2
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.d.ts +1 -0
- package/lib/cjs/IModelConnection.d.ts.map +1 -1
- package/lib/cjs/IModelConnection.js +9 -8
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IpcApp.d.ts.map +1 -1
- package/lib/cjs/IpcApp.js +8 -1
- package/lib/cjs/IpcApp.js.map +1 -1
- package/lib/cjs/LinePlaneIntersect.js +1 -2
- package/lib/cjs/LinePlaneIntersect.js.map +1 -1
- package/lib/cjs/ModelState.d.ts +0 -8
- package/lib/cjs/ModelState.d.ts.map +1 -1
- package/lib/cjs/ModelState.js +0 -8
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/NativeApp.d.ts +1 -1
- package/lib/cjs/NativeApp.d.ts.map +1 -1
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NoRenderApp.d.ts.map +1 -1
- package/lib/cjs/NotificationManager.d.ts +2 -2
- package/lib/cjs/NotificationManager.d.ts.map +1 -1
- package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -1
- package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js +1 -2
- package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.d.ts.map +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js +2 -3
- package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/cjs/RealityDataSourceTilesetUrlImpl.js +1 -1
- package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -1
- package/lib/cjs/SheetViewState.d.ts +4 -11
- package/lib/cjs/SheetViewState.d.ts.map +1 -1
- package/lib/cjs/SheetViewState.js +18 -12
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts +0 -1
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +1 -2
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/SubCategoriesCache.js +1 -1
- package/lib/cjs/SubCategoriesCache.js.map +1 -1
- package/lib/cjs/TentativePoint.js +1 -1
- package/lib/cjs/TentativePoint.js.map +1 -1
- package/lib/cjs/ViewCreator3d.js +1 -1
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewGlobalLocation.js +9 -9
- package/lib/cjs/ViewGlobalLocation.js.map +1 -1
- package/lib/cjs/ViewState.d.ts +14 -1
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +4 -2
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewingSpace.d.ts.map +1 -1
- package/lib/cjs/ViewingSpace.js +3 -0
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +2 -4
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/ViewportSync.js +6 -6
- package/lib/cjs/ViewportSync.js.map +1 -1
- package/lib/cjs/common/ImageUtil.js +15 -16
- package/lib/cjs/common/ImageUtil.js.map +1 -1
- package/lib/cjs/common/WorkerProxy.d.ts +8 -4
- package/lib/cjs/common/WorkerProxy.d.ts.map +1 -1
- package/lib/cjs/common/WorkerProxy.js +1 -2
- package/lib/cjs/common/WorkerProxy.js.map +1 -1
- package/lib/cjs/common/gltf/GltfParser.js +7 -8
- package/lib/cjs/common/gltf/GltfParser.js.map +1 -1
- package/lib/cjs/common/gltf/GltfSchema.d.ts +1 -1
- package/lib/cjs/common/gltf/GltfSchema.d.ts.map +1 -1
- package/lib/cjs/common/gltf/GltfSchema.js +5 -5
- package/lib/cjs/common/gltf/GltfSchema.js.map +1 -1
- package/lib/cjs/common/imdl/CompactEdges.js +1 -2
- package/lib/cjs/common/imdl/CompactEdges.js.map +1 -1
- package/lib/cjs/common/imdl/ImdlModel.js +2 -3
- package/lib/cjs/common/imdl/ImdlModel.js.map +1 -1
- package/lib/cjs/common/imdl/ImdlSchema.d.ts.map +1 -1
- package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -1
- package/lib/cjs/common/imdl/ParseImdlDocument.d.ts.map +1 -1
- package/lib/cjs/common/imdl/ParseImdlDocument.js +10 -12
- package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -1
- package/lib/cjs/common/internal/render/DisplayParams.js.map +1 -1
- package/lib/cjs/common/internal/render/EdgeParams.js +2 -3
- package/lib/cjs/common/internal/render/EdgeParams.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryList.d.ts +1 -1
- package/lib/cjs/common/internal/render/GraphicDescriptionBuilderImpl.js +3 -3
- package/lib/cjs/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
- package/lib/cjs/common/internal/render/LineCode.js +1 -2
- package/lib/cjs/common/internal/render/LineCode.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshBuilderMap.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshPrimitives.js +3 -3
- package/lib/cjs/common/internal/render/MeshPrimitives.js.map +1 -1
- package/lib/cjs/common/internal/render/OvrFlags.d.ts +4 -2
- package/lib/cjs/common/internal/render/OvrFlags.d.ts.map +1 -1
- package/lib/cjs/common/internal/render/OvrFlags.js.map +1 -1
- package/lib/cjs/common/internal/render/PointStringParams.js +1 -2
- package/lib/cjs/common/internal/render/PointStringParams.js.map +1 -1
- package/lib/cjs/common/internal/render/PolylineParams.js +4 -5
- package/lib/cjs/common/internal/render/PolylineParams.js.map +1 -1
- package/lib/cjs/common/internal/render/SurfaceParams.js +3 -3
- package/lib/cjs/common/internal/render/SurfaceParams.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTable.d.ts.map +1 -1
- package/lib/cjs/common/internal/render/VertexTable.js +4 -7
- package/lib/cjs/common/internal/render/VertexTable.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableBuilder.js +2 -2
- package/lib/cjs/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableSplitter.js +4 -4
- package/lib/cjs/common/internal/render/VertexTableSplitter.js.map +1 -1
- package/lib/cjs/common/render/InstancedGraphicParams.js.map +1 -1
- package/lib/cjs/extension/providers/ExtensionLoadScript.js +1 -2
- package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/cjs/internal/render/RenderInstancesParamsImpl.js +2 -3
- package/lib/cjs/internal/render/RenderInstancesParamsImpl.js.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +2 -2
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/LocalUnitFormatProvider.js +2 -2
- package/lib/cjs/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +3 -3
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.d.ts +12 -1
- package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.js +2 -2
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/GraphicTemplate.js +1 -2
- package/lib/cjs/render/GraphicTemplate.js.map +1 -1
- package/lib/cjs/render/MockRender.d.ts.map +1 -1
- package/lib/cjs/render/Pixel.d.ts +14 -4
- package/lib/cjs/render/Pixel.d.ts.map +1 -1
- package/lib/cjs/render/Pixel.js +22 -5
- package/lib/cjs/render/Pixel.js.map +1 -1
- package/lib/cjs/render/RealityMeshGraphicParams.d.ts +1 -0
- package/lib/cjs/render/RealityMeshGraphicParams.d.ts.map +1 -1
- package/lib/cjs/render/RealityMeshGraphicParams.js.map +1 -1
- package/lib/cjs/render/RenderMemory.d.ts +2 -0
- package/lib/cjs/render/RenderMemory.d.ts.map +1 -1
- package/lib/cjs/render/RenderMemory.js +2 -0
- package/lib/cjs/render/RenderMemory.js.map +1 -1
- package/lib/cjs/render/RenderPlan.d.ts +2 -1
- package/lib/cjs/render/RenderPlan.d.ts.map +1 -1
- package/lib/cjs/render/RenderPlan.js +5 -3
- package/lib/cjs/render/RenderPlan.js.map +1 -1
- package/lib/cjs/render/RenderSystem.d.ts +1 -1
- package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
- package/lib/cjs/render/RenderSystem.js +8 -9
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/UpsampleRealityMeshParams.js +1 -2
- package/lib/cjs/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/cjs/render/VisibleFeature.js +1 -2
- package/lib/cjs/render/VisibleFeature.js.map +1 -1
- package/lib/cjs/render/webgl/AttributeBuffers.js +5 -5
- package/lib/cjs/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/cjs/render/webgl/BatchUniforms.d.ts +4 -0
- package/lib/cjs/render/webgl/BatchUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BatchUniforms.js +18 -0
- package/lib/cjs/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/BranchState.d.ts +9 -0
- package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchState.js +6 -0
- package/lib/cjs/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/render/webgl/BranchUniforms.d.ts +1 -0
- package/lib/cjs/render/webgl/BranchUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchUniforms.js +14 -1
- package/lib/cjs/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/ClippingProgram.js +2 -2
- package/lib/cjs/render/webgl/ClippingProgram.js.map +1 -1
- package/lib/cjs/render/webgl/ContourUniforms.d.ts +22 -0
- package/lib/cjs/render/webgl/ContourUniforms.d.ts.map +1 -0
- package/lib/cjs/render/webgl/ContourUniforms.js +98 -0
- package/lib/cjs/render/webgl/ContourUniforms.js.map +1 -0
- package/lib/cjs/render/webgl/Contours.d.ts +34 -0
- package/lib/cjs/render/webgl/Contours.d.ts.map +1 -0
- package/lib/cjs/render/webgl/Contours.js +127 -0
- package/lib/cjs/render/webgl/Contours.js.map +1 -0
- package/lib/cjs/render/webgl/DrawCommand.js +3 -3
- package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
- package/lib/cjs/render/webgl/EdgeSettings.js +1 -1
- package/lib/cjs/render/webgl/EdgeSettings.js.map +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.d.ts +1 -0
- package/lib/cjs/render/webgl/FeatureOverrides.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js +48 -51
- package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/render/webgl/FrustumUniforms.js +2 -2
- package/lib/cjs/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/GL.d.ts +2 -1
- package/lib/cjs/render/webgl/GL.d.ts.map +1 -1
- package/lib/cjs/render/webgl/GL.js +1 -0
- package/lib/cjs/render/webgl/GL.js.map +1 -1
- package/lib/cjs/render/webgl/Graphic.d.ts +12 -0
- package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Graphic.js +31 -0
- package/lib/cjs/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js +2 -2
- package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/Material.js +4 -4
- package/lib/cjs/render/webgl/Material.js.map +1 -1
- package/lib/cjs/render/webgl/Matrix.js +3 -3
- package/lib/cjs/render/webgl/Matrix.js.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts +2 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.js +4 -2
- package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.js +19 -7
- package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/render/webgl/ScratchDrawParams.js +2 -3
- package/lib/cjs/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/cjs/render/webgl/ScreenSpaceEffect.js +2 -2
- package/lib/cjs/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/render/webgl/ShaderBuilder.d.ts +15 -13
- package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ShaderBuilder.js +18 -10
- package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.js +26 -0
- package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.js +2 -2
- package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/Sync.js +3 -4
- package/lib/cjs/render/webgl/Sync.js.map +1 -1
- package/lib/cjs/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/render/webgl/System.js +7 -7
- package/lib/cjs/render/webgl/System.js.map +1 -1
- package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Target.js +2 -1
- package/lib/cjs/render/webgl/Target.js.map +1 -1
- package/lib/cjs/render/webgl/TargetUniforms.d.ts +2 -0
- package/lib/cjs/render/webgl/TargetUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TargetUniforms.js +2 -0
- package/lib/cjs/render/webgl/TargetUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.js +1 -2
- package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Texture.js +2 -2
- package/lib/cjs/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js +2 -3
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Animation.js +1 -2
- package/lib/cjs/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Atmosphere.js +2 -3
- package/lib/cjs/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Blur.js +2 -3
- package/lib/cjs/render/webgl/glsl/Blur.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ClearPickAndColor.js +2 -3
- package/lib/cjs/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ClearTranslucent.js +2 -3
- package/lib/cjs/render/webgl/glsl/ClearTranslucent.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Clipping.js +3 -3
- package/lib/cjs/render/webgl/glsl/Clipping.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Color.js +2 -3
- package/lib/cjs/render/webgl/glsl/Color.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Combine3Textures.js +2 -3
- package/lib/cjs/render/webgl/glsl/Combine3Textures.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/CombineTextures.js +2 -3
- package/lib/cjs/render/webgl/glsl/CombineTextures.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Common.js +7 -7
- package/lib/cjs/render/webgl/glsl/Common.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Composite.js +2 -3
- package/lib/cjs/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Contours.d.ts +4 -0
- package/lib/cjs/render/webgl/glsl/Contours.d.ts.map +1 -0
- package/lib/cjs/render/webgl/glsl/Contours.js +137 -0
- package/lib/cjs/render/webgl/glsl/Contours.js.map +1 -0
- package/lib/cjs/render/webgl/glsl/CopyColor.js +2 -3
- package/lib/cjs/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyPickBuffers.js +2 -3
- package/lib/cjs/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyStencil.js +9 -10
- package/lib/cjs/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Decode.js +2 -2
- package/lib/cjs/render/webgl/glsl/Decode.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/EDL.js +8 -9
- package/lib/cjs/render/webgl/glsl/EDL.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js +2 -3
- package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Edge.js +3 -4
- package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts +2 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +35 -28
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Fragment.js +15 -15
- package/lib/cjs/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Instancing.js +3 -4
- package/lib/cjs/render/webgl/glsl/Instancing.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Lighting.js +1 -2
- package/lib/cjs/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/LogarithmicDepthBuffer.js +2 -3
- package/lib/cjs/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/LookupTable.js +1 -2
- package/lib/cjs/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Monochrome.js +2 -3
- package/lib/cjs/render/webgl/glsl/Monochrome.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarClassification.js +9 -9
- package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarGrid.js +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PointCloud.js +3 -4
- package/lib/cjs/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PointString.js +2 -3
- package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Polyline.js +6 -6
- package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.js +8 -8
- package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/RenderPass.js +1 -2
- package/lib/cjs/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js +2 -3
- package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SkyBox.js +2 -3
- package/lib/cjs/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SkySphere.js +2 -3
- package/lib/cjs/render/webgl/glsl/SkySphere.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SolarShadowMapping.js +4 -4
- package/lib/cjs/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Surface.js +11 -9
- package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Thematic.js +2 -3
- package/lib/cjs/render/webgl/glsl/Thematic.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Translucency.js +3 -3
- package/lib/cjs/render/webgl/glsl/Translucency.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Vertex.js +13 -13
- package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Viewport.js +3 -4
- package/lib/cjs/render/webgl/glsl/Viewport.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ViewportQuad.js +1 -2
- package/lib/cjs/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Wiremesh.js +2 -3
- package/lib/cjs/render/webgl/glsl/Wiremesh.js.map +1 -1
- package/lib/cjs/request/Request.d.ts.map +1 -1
- package/lib/cjs/request/Request.js +2 -2
- package/lib/cjs/request/Request.js.map +1 -1
- package/lib/cjs/request/utils.js +3 -4
- package/lib/cjs/request/utils.js.map +1 -1
- package/lib/cjs/tile/ClassifierTileTree.js +3 -3
- package/lib/cjs/tile/ClassifierTileTree.js.map +1 -1
- package/lib/cjs/tile/ContextShareProvider.js +2 -2
- package/lib/cjs/tile/ContextShareProvider.js.map +1 -1
- package/lib/cjs/tile/GltfReader.d.ts +1 -1
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +18 -16
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/IModelTile.js +2 -2
- package/lib/cjs/tile/IModelTile.js.map +1 -1
- package/lib/cjs/tile/IModelTileTree.js +2 -2
- package/lib/cjs/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/tile/ImdlDecoder.js +1 -2
- package/lib/cjs/tile/ImdlDecoder.js.map +1 -1
- package/lib/cjs/tile/ImdlGraphicsCreator.js +7 -8
- package/lib/cjs/tile/ImdlGraphicsCreator.js.map +1 -1
- package/lib/cjs/tile/ImdlParser.js +1 -2
- package/lib/cjs/tile/ImdlParser.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
- package/lib/cjs/tile/ImdlReader.js +3 -3
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/MeshoptCompression.js +1 -2
- package/lib/cjs/tile/MeshoptCompression.js.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.js +3 -4
- package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/tile/PntsReader.js +2 -3
- 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 +12 -12
- package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js +3 -4
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTileDrawArgs.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +1 -1
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RenderGraphicTileTree.js +1 -2
- package/lib/cjs/tile/RenderGraphicTileTree.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/Tile.js +2 -2
- package/lib/cjs/tile/Tile.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
- package/lib/cjs/tile/TileAdmin.js +3 -4
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.d.ts +4 -0
- package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.js +2 -0
- package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
- package/lib/cjs/tile/TileRequest.js +1 -1
- package/lib/cjs/tile/TileRequest.js.map +1 -1
- package/lib/cjs/tile/TileRequestChannel.js +1 -1
- package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
- package/lib/cjs/tile/TileStorage.js +1 -1
- package/lib/cjs/tile/TileStorage.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.d.ts +2 -0
- package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js +3 -0
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/ViewFlagOverrides.js +1 -2
- package/lib/cjs/tile/ViewFlagOverrides.js.map +1 -1
- package/lib/cjs/tile/map/ArcGISTileMap.d.ts.map +1 -1
- package/lib/cjs/tile/map/ArcGISTileMap.js +0 -1
- package/lib/cjs/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.js +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/tile/map/BingElevation.js +3 -3
- package/lib/cjs/tile/map/BingElevation.js.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.js +7 -8
- package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +4 -5
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/CoordinatesUtils.js +1 -2
- package/lib/cjs/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/FeatureGraphicsRenderer.js +1 -1
- package/lib/cjs/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerTileTreeReference.js +2 -2
- package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +1 -1
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +2 -2
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js +4 -0
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/UrlUtils.js +1 -2
- package/lib/cjs/tile/map/UrlUtils.js.map +1 -1
- package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
- package/lib/cjs/tools/ClipViewTool.d.ts.map +1 -1
- package/lib/cjs/tools/MeasureTool.js +2 -2
- package/lib/cjs/tools/MeasureTool.js.map +1 -1
- package/lib/cjs/tools/Tool.d.ts +1 -1
- package/lib/cjs/tools/Tool.d.ts.map +1 -1
- package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
- package/lib/cjs/tools/ViewTool.js +2 -2
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/workers/RegisterWorker.js +1 -2
- package/lib/cjs/workers/RegisterWorker.js.map +1 -1
- package/lib/esm/AccuDraw.d.ts.map +1 -1
- package/lib/esm/AccuDraw.js +0 -2
- package/lib/esm/AccuDraw.js.map +1 -1
- package/lib/esm/AccuSnap.d.ts.map +1 -1
- package/lib/esm/AccuSnap.js +17 -8
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/BingLocation.js +1 -1
- package/lib/esm/BingLocation.js.map +1 -1
- package/lib/esm/BriefcaseConnection.d.ts +0 -1
- package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
- package/lib/esm/BriefcaseConnection.js +2 -3
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/BriefcaseTxns.d.ts.map +1 -1
- package/lib/esm/ChangeFlags.d.ts +1 -1
- package/lib/esm/ChangeFlags.d.ts.map +1 -1
- 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 +6 -6
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/DrawingViewState.d.ts +8 -6
- package/lib/esm/DrawingViewState.d.ts.map +1 -1
- package/lib/esm/DrawingViewState.js +20 -10
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.js +1 -1
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/GraphicalEditingScope.d.ts.map +1 -1
- package/lib/esm/HitDetail.d.ts +37 -5
- package/lib/esm/HitDetail.d.ts.map +1 -1
- package/lib/esm/HitDetail.js +12 -2
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.d.ts.map +1 -1
- package/lib/esm/IModelApp.js +1 -2
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.d.ts +1 -0
- package/lib/esm/IModelConnection.d.ts.map +1 -1
- package/lib/esm/IModelConnection.js +9 -8
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IpcApp.d.ts.map +1 -1
- package/lib/esm/IpcApp.js +8 -1
- package/lib/esm/IpcApp.js.map +1 -1
- package/lib/esm/ModelState.d.ts +0 -8
- package/lib/esm/ModelState.d.ts.map +1 -1
- package/lib/esm/ModelState.js +0 -8
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/NativeApp.d.ts +1 -1
- package/lib/esm/NativeApp.d.ts.map +1 -1
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NoRenderApp.d.ts.map +1 -1
- package/lib/esm/NotificationManager.d.ts +2 -2
- package/lib/esm/NotificationManager.d.ts.map +1 -1
- package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -1
- package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js +1 -2
- package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.d.ts.map +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js +2 -3
- package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/esm/RealityDataSourceTilesetUrlImpl.js +1 -1
- package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -1
- package/lib/esm/SheetViewState.d.ts +4 -11
- package/lib/esm/SheetViewState.d.ts.map +1 -1
- package/lib/esm/SheetViewState.js +18 -12
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts +0 -1
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +1 -2
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/SubCategoriesCache.js +1 -1
- package/lib/esm/SubCategoriesCache.js.map +1 -1
- package/lib/esm/TentativePoint.js +1 -1
- package/lib/esm/TentativePoint.js.map +1 -1
- package/lib/esm/ViewCreator3d.js +1 -1
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewState.d.ts +14 -1
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +4 -2
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewingSpace.d.ts.map +1 -1
- package/lib/esm/ViewingSpace.js +3 -0
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +2 -4
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/common/WorkerProxy.d.ts +8 -4
- package/lib/esm/common/WorkerProxy.d.ts.map +1 -1
- package/lib/esm/common/WorkerProxy.js.map +1 -1
- package/lib/esm/common/gltf/GltfParser.js +6 -6
- package/lib/esm/common/gltf/GltfParser.js.map +1 -1
- package/lib/esm/common/gltf/GltfSchema.d.ts +1 -1
- package/lib/esm/common/gltf/GltfSchema.d.ts.map +1 -1
- package/lib/esm/common/gltf/GltfSchema.js.map +1 -1
- package/lib/esm/common/imdl/ImdlSchema.d.ts.map +1 -1
- package/lib/esm/common/imdl/ImdlSchema.js.map +1 -1
- package/lib/esm/common/imdl/ParseImdlDocument.d.ts.map +1 -1
- package/lib/esm/common/imdl/ParseImdlDocument.js +4 -5
- package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -1
- package/lib/esm/common/internal/render/DisplayParams.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryList.d.ts +1 -1
- package/lib/esm/common/internal/render/MeshBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/MeshBuilderMap.js.map +1 -1
- package/lib/esm/common/internal/render/MeshPrimitives.js.map +1 -1
- package/lib/esm/common/internal/render/OvrFlags.d.ts +4 -2
- package/lib/esm/common/internal/render/OvrFlags.d.ts.map +1 -1
- package/lib/esm/common/internal/render/OvrFlags.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTable.d.ts.map +1 -1
- package/lib/esm/common/internal/render/VertexTable.js +3 -5
- package/lib/esm/common/internal/render/VertexTable.js.map +1 -1
- package/lib/esm/common/render/InstancedGraphicParams.js.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/LocalUnitFormatProvider.js +2 -2
- package/lib/esm/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.d.ts +12 -1
- package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/MockRender.d.ts.map +1 -1
- package/lib/esm/render/Pixel.d.ts +14 -4
- package/lib/esm/render/Pixel.d.ts.map +1 -1
- package/lib/esm/render/Pixel.js +22 -5
- package/lib/esm/render/Pixel.js.map +1 -1
- package/lib/esm/render/RealityMeshGraphicParams.d.ts +1 -0
- package/lib/esm/render/RealityMeshGraphicParams.d.ts.map +1 -1
- package/lib/esm/render/RealityMeshGraphicParams.js.map +1 -1
- package/lib/esm/render/RenderMemory.d.ts +2 -0
- package/lib/esm/render/RenderMemory.d.ts.map +1 -1
- package/lib/esm/render/RenderMemory.js +2 -0
- package/lib/esm/render/RenderMemory.js.map +1 -1
- package/lib/esm/render/RenderPlan.d.ts +2 -1
- package/lib/esm/render/RenderPlan.d.ts.map +1 -1
- package/lib/esm/render/RenderPlan.js +2 -0
- package/lib/esm/render/RenderPlan.js.map +1 -1
- package/lib/esm/render/RenderSystem.d.ts +1 -1
- 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/webgl/BatchUniforms.d.ts +4 -0
- package/lib/esm/render/webgl/BatchUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/BatchUniforms.js +18 -0
- package/lib/esm/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/esm/render/webgl/BranchState.d.ts +9 -0
- package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchState.js +6 -0
- package/lib/esm/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/render/webgl/BranchUniforms.d.ts +1 -0
- package/lib/esm/render/webgl/BranchUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchUniforms.js +14 -1
- package/lib/esm/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/ContourUniforms.d.ts +22 -0
- package/lib/esm/render/webgl/ContourUniforms.d.ts.map +1 -0
- package/lib/esm/render/webgl/ContourUniforms.js +94 -0
- package/lib/esm/render/webgl/ContourUniforms.js.map +1 -0
- package/lib/esm/render/webgl/Contours.d.ts +34 -0
- package/lib/esm/render/webgl/Contours.d.ts.map +1 -0
- package/lib/esm/render/webgl/Contours.js +123 -0
- package/lib/esm/render/webgl/Contours.js.map +1 -0
- package/lib/esm/render/webgl/EdgeSettings.js +1 -1
- package/lib/esm/render/webgl/EdgeSettings.js.map +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.d.ts +1 -0
- package/lib/esm/render/webgl/FeatureOverrides.d.ts.map +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js +46 -49
- package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/render/webgl/GL.d.ts +2 -1
- package/lib/esm/render/webgl/GL.d.ts.map +1 -1
- package/lib/esm/render/webgl/GL.js +1 -0
- package/lib/esm/render/webgl/GL.js.map +1 -1
- package/lib/esm/render/webgl/Graphic.d.ts +12 -0
- package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/esm/render/webgl/Graphic.js +31 -0
- package/lib/esm/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/render/webgl/Material.js +2 -2
- package/lib/esm/render/webgl/Material.js.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js +1 -1
- package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts +2 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.js +2 -0
- package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.js +16 -4
- package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/render/webgl/ShaderBuilder.d.ts +15 -13
- package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/esm/render/webgl/ShaderBuilder.js +18 -10
- package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
- package/lib/esm/render/webgl/ShaderProgram.js +26 -0
- package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/esm/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/render/webgl/System.js +7 -7
- package/lib/esm/render/webgl/System.js.map +1 -1
- package/lib/esm/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/render/webgl/Target.js +2 -1
- package/lib/esm/render/webgl/Target.js.map +1 -1
- package/lib/esm/render/webgl/TargetUniforms.d.ts +2 -0
- package/lib/esm/render/webgl/TargetUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/TargetUniforms.js +2 -0
- package/lib/esm/render/webgl/TargetUniforms.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
- package/lib/esm/render/webgl/Texture.js +2 -2
- package/lib/esm/render/webgl/Texture.js.map +1 -1
- package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.js +1 -1
- package/lib/esm/render/webgl/glsl/Atmosphere.js +1 -1
- package/lib/esm/render/webgl/glsl/Blur.js +1 -1
- package/lib/esm/render/webgl/glsl/ClearPickAndColor.js +1 -1
- package/lib/esm/render/webgl/glsl/ClearTranslucent.js +1 -1
- package/lib/esm/render/webgl/glsl/Clipping.js +1 -1
- package/lib/esm/render/webgl/glsl/Combine3Textures.js +1 -1
- package/lib/esm/render/webgl/glsl/CombineTextures.js +1 -1
- package/lib/esm/render/webgl/glsl/Composite.js +1 -1
- package/lib/esm/render/webgl/glsl/Contours.d.ts +4 -0
- package/lib/esm/render/webgl/glsl/Contours.d.ts.map +1 -0
- package/lib/esm/render/webgl/glsl/Contours.js +134 -0
- package/lib/esm/render/webgl/glsl/Contours.js.map +1 -0
- package/lib/esm/render/webgl/glsl/CopyColor.js +1 -1
- package/lib/esm/render/webgl/glsl/CopyPickBuffers.js +1 -1
- package/lib/esm/render/webgl/glsl/CopyStencil.js +5 -5
- package/lib/esm/render/webgl/glsl/EDL.js +4 -4
- package/lib/esm/render/webgl/glsl/EVSMFromDepth.js +1 -1
- package/lib/esm/render/webgl/glsl/Edge.js +1 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts +2 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.js +21 -15
- package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Fragment.js +9 -9
- package/lib/esm/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
- package/lib/esm/render/webgl/glsl/PlanarClassification.js +4 -4
- package/lib/esm/render/webgl/glsl/PointCloud.js +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.js +3 -3
- package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js +1 -1
- package/lib/esm/render/webgl/glsl/SkyBox.js +1 -1
- package/lib/esm/render/webgl/glsl/SkySphere.js +1 -1
- package/lib/esm/render/webgl/glsl/SolarShadowMapping.js +1 -1
- package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Surface.js +5 -3
- package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Translucency.js +1 -1
- package/lib/esm/render/webgl/glsl/Wiremesh.js +1 -1
- package/lib/esm/request/Request.d.ts.map +1 -1
- package/lib/esm/request/Request.js.map +1 -1
- package/lib/esm/tile/ClassifierTileTree.js +1 -1
- package/lib/esm/tile/ClassifierTileTree.js.map +1 -1
- package/lib/esm/tile/ContextShareProvider.js +2 -2
- package/lib/esm/tile/ContextShareProvider.js.map +1 -1
- package/lib/esm/tile/GltfReader.d.ts +1 -1
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +14 -12
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/ImdlGraphicsCreator.js +4 -4
- package/lib/esm/tile/ImdlGraphicsCreator.js.map +1 -1
- package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.js +1 -2
- package/lib/esm/tile/OrbitGtTileTree.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 +6 -6
- package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js +1 -2
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTileDrawArgs.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +1 -1
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.d.ts.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.map +1 -1
- package/lib/esm/tile/TileAdmin.js +1 -2
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileDrawArgs.d.ts +4 -0
- package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/esm/tile/TileDrawArgs.js +2 -0
- package/lib/esm/tile/TileDrawArgs.js.map +1 -1
- package/lib/esm/tile/TileRequest.js +1 -1
- package/lib/esm/tile/TileRequest.js.map +1 -1
- package/lib/esm/tile/TileRequestChannel.js +1 -1
- package/lib/esm/tile/TileRequestChannel.js.map +1 -1
- package/lib/esm/tile/TileStorage.js +1 -1
- package/lib/esm/tile/TileStorage.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.d.ts +2 -0
- package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/TileTreeReference.js +3 -0
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/map/ArcGISTileMap.d.ts.map +1 -1
- package/lib/esm/tile/map/ArcGISTileMap.js +0 -1
- package/lib/esm/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.js +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/tile/map/BingElevation.js +3 -3
- package/lib/esm/tile/map/BingElevation.js.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.js +3 -3
- package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +4 -5
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/FeatureGraphicsRenderer.js +1 -1
- package/lib/esm/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTile.js +1 -1
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.js +1 -1
- package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js +4 -0
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
- package/lib/esm/tools/ClipViewTool.d.ts.map +1 -1
- package/lib/esm/tools/MeasureTool.js +2 -2
- package/lib/esm/tools/MeasureTool.js.map +1 -1
- package/lib/esm/tools/Tool.d.ts +1 -1
- package/lib/esm/tools/Tool.d.ts.map +1 -1
- package/lib/esm/tools/ViewTool.d.ts.map +1 -1
- package/lib/esm/tools/ViewTool.js +2 -2
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/public/scripts/parse-imdl-worker.js +1 -1
- package/lib/workers/webpack/parse-imdl-worker.js +1 -1
- package/package.json +30 -36
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GL.d.ts","sourceRoot":"","sources":["../../../../src/render/webgl/GL.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"GL.d.ts","sourceRoot":"","sources":["../../../../src/render/webgl/GL.ts"],"names":[],"mappings":"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"}
|
|
@@ -203,6 +203,7 @@ export var GL;
|
|
|
203
203
|
let ProgramParameter;
|
|
204
204
|
(function (ProgramParameter) {
|
|
205
205
|
ProgramParameter[ProgramParameter["LinkStatus"] = WebGLRenderingContext.LINK_STATUS] = "LinkStatus";
|
|
206
|
+
ProgramParameter[ProgramParameter["ActiveUniforms"] = WebGLRenderingContext.ACTIVE_UNIFORMS] = "ActiveUniforms";
|
|
206
207
|
})(ProgramParameter = GL.ProgramParameter || (GL.ProgramParameter = {}));
|
|
207
208
|
let PrimitiveType;
|
|
208
209
|
(function (PrimitiveType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GL.js","sourceRoot":"","sources":["../../../../src/render/webgl/GL.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 WebGL\r\n */\r\n\r\nif (typeof (WebGLRenderingContext) === \"undefined\") {\r\n (global as any).WebGLRenderingContext = new Proxy({}, { get: () => 0 });\r\n}\r\n\r\n/** @internal */\r\nexport namespace GL {\r\n export enum BlendEquation {\r\n Add = WebGLRenderingContext.FUNC_ADD,\r\n Subtract = WebGLRenderingContext.FUNC_SUBTRACT,\r\n ReverseSubtract = WebGLRenderingContext.FUNC_REVERSE_SUBTRACT,\r\n Default = Add,\r\n }\r\n\r\n export enum BlendFactor {\r\n Zero = WebGLRenderingContext.ZERO,\r\n One = WebGLRenderingContext.ONE,\r\n SrcColor = WebGLRenderingContext.SRC_COLOR,\r\n OneMinusSrcColor = WebGLRenderingContext.ONE_MINUS_SRC_COLOR,\r\n DstColor = WebGLRenderingContext.DST_COLOR,\r\n OneMinusDstColor = WebGLRenderingContext.ONE_MINUS_DST_COLOR,\r\n SrcAlpha = WebGLRenderingContext.SRC_ALPHA,\r\n OneMinusSrcAlpha = WebGLRenderingContext.ONE_MINUS_SRC_ALPHA,\r\n DstAlpha = WebGLRenderingContext.DST_ALPHA,\r\n OneMinusDstAlpha = WebGLRenderingContext.ONE_MINUS_DST_ALPHA,\r\n ConstColor = WebGLRenderingContext.CONSTANT_COLOR,\r\n OneMinusConstColor = WebGLRenderingContext.ONE_MINUS_CONSTANT_COLOR,\r\n ConstAlpha = WebGLRenderingContext.CONSTANT_ALPHA,\r\n OneMinusConstAlpha = WebGLRenderingContext.ONE_MINUS_CONSTANT_ALPHA,\r\n AlphaSaturate = WebGLRenderingContext.SRC_ALPHA_SATURATE,\r\n DefaultSrc = One,\r\n DefaultDst = Zero,\r\n }\r\n\r\n export namespace Buffer {\r\n export enum Target {\r\n ArrayBuffer = WebGLRenderingContext.ARRAY_BUFFER,\r\n ElementArrayBuffer = WebGLRenderingContext.ELEMENT_ARRAY_BUFFER,\r\n }\r\n\r\n export enum Binding {\r\n ArrayBuffer = WebGLRenderingContext.ARRAY_BUFFER_BINDING,\r\n ElementArrayBuffer = WebGLRenderingContext.ELEMENT_ARRAY_BUFFER_BINDING,\r\n }\r\n\r\n export enum Parameter {\r\n Size = WebGLRenderingContext.BUFFER_SIZE,\r\n Usage = WebGLRenderingContext.BUFFER_USAGE, // eslint-disable-line @typescript-eslint/no-shadow\r\n }\r\n\r\n export enum Usage {\r\n DynamicDraw = WebGLRenderingContext.DYNAMIC_DRAW,\r\n StaticDraw = WebGLRenderingContext.STATIC_DRAW,\r\n StreamDraw = WebGLRenderingContext.STREAM_DRAW,\r\n }\r\n }\r\n\r\n export enum StencilOperation {\r\n Keep = WebGLRenderingContext.KEEP,\r\n Zero = WebGLRenderingContext.ZERO,\r\n Replace = WebGLRenderingContext.REPLACE,\r\n Incr = WebGLRenderingContext.INCR,\r\n IncrWrap = WebGLRenderingContext.INCR_WRAP,\r\n Decr = WebGLRenderingContext.DECR,\r\n DecrWrap = WebGLRenderingContext.DECR_WRAP,\r\n Invert = WebGLRenderingContext.INVERT,\r\n Default = Keep,\r\n }\r\n\r\n export enum StencilFunction {\r\n Never = WebGLRenderingContext.NEVER,\r\n Less = WebGLRenderingContext.LESS,\r\n LEqual = WebGLRenderingContext.LEQUAL,\r\n Greater = WebGLRenderingContext.GREATER,\r\n GEqual = WebGLRenderingContext.GEQUAL,\r\n Equal = WebGLRenderingContext.EQUAL,\r\n NotEqual = WebGLRenderingContext.NOTEQUAL,\r\n Always = WebGLRenderingContext.ALWAYS,\r\n Default = Always,\r\n }\r\n\r\n export enum CullFace {\r\n Front = WebGLRenderingContext.FRONT,\r\n Back = WebGLRenderingContext.BACK,\r\n FrontAndBack = WebGLRenderingContext.FRONT_AND_BACK,\r\n Default = Back,\r\n }\r\n\r\n export enum DataType {\r\n Byte = WebGLRenderingContext.BYTE,\r\n Short = WebGLRenderingContext.SHORT,\r\n UnsignedByte = WebGLRenderingContext.UNSIGNED_BYTE,\r\n UnsignedShort = WebGLRenderingContext.UNSIGNED_SHORT,\r\n UnsignedInt = WebGLRenderingContext.UNSIGNED_INT,\r\n Float = WebGLRenderingContext.FLOAT,\r\n // WebGL 2 has more data types\r\n // HalfFloat = WebGLRenderingContext.HALF_FLOAT,\r\n }\r\n\r\n export enum FrontFace {\r\n CounterClockwise = WebGLRenderingContext.CCW,\r\n Clockwise = WebGLRenderingContext.CW,\r\n Default = CounterClockwise,\r\n }\r\n\r\n export enum DepthFunc {\r\n Never = WebGLRenderingContext.NEVER,\r\n Less = WebGLRenderingContext.LESS,\r\n Equal = WebGLRenderingContext.EQUAL,\r\n LessOrEqual = WebGLRenderingContext.LEQUAL,\r\n Greater = WebGLRenderingContext.GREATER,\r\n NotEqual = WebGLRenderingContext.NOTEQUAL,\r\n GreaterOrEqual = WebGLRenderingContext.GEQUAL,\r\n Always = WebGLRenderingContext.ALWAYS,\r\n Default = LessOrEqual,\r\n }\r\n\r\n export enum Capability {\r\n Blend = WebGLRenderingContext.BLEND,\r\n BlendColor = WebGLRenderingContext.BLEND_COLOR,\r\n BlendEquationAlpha = WebGLRenderingContext.BLEND_EQUATION_ALPHA,\r\n BlendEquationRGB = WebGLRenderingContext.BLEND_EQUATION_RGB,\r\n BlendSrcAlpha = WebGLRenderingContext.BLEND_SRC_ALPHA,\r\n BlendSrcRgb = WebGLRenderingContext.BLEND_SRC_RGB,\r\n BlendDstAlpha = WebGLRenderingContext.BLEND_DST_ALPHA,\r\n BlendDstRgb = WebGLRenderingContext.BLEND_DST_RGB,\r\n CullFace = WebGLRenderingContext.CULL_FACE, // eslint-disable-line @typescript-eslint/no-shadow\r\n CullFaceMode = WebGLRenderingContext.CULL_FACE_MODE,\r\n DepthFunc = WebGLRenderingContext.DEPTH_FUNC, // eslint-disable-line @typescript-eslint/no-shadow\r\n DepthTest = WebGLRenderingContext.DEPTH_TEST,\r\n DepthWriteMask = WebGLRenderingContext.DEPTH_WRITEMASK,\r\n FrontFace = WebGLRenderingContext.FRONT_FACE, // eslint-disable-line @typescript-eslint/no-shadow\r\n StencilFrontFunc = WebGLRenderingContext.STENCIL_FUNC,\r\n StencilFrontRef = WebGLRenderingContext.STENCIL_REF,\r\n StencilFrontValueMask = WebGLRenderingContext.STENCIL_VALUE_MASK,\r\n StencilFrontWriteMask = WebGLRenderingContext.STENCIL_WRITEMASK,\r\n StencilFrontOpFail = WebGLRenderingContext.STENCIL_FAIL,\r\n StencilFrontOpZFail = WebGLRenderingContext.STENCIL_PASS_DEPTH_FAIL,\r\n StencilFrontOpZPass = WebGLRenderingContext.STENCIL_PASS_DEPTH_PASS,\r\n StencilBackFunc = WebGLRenderingContext.STENCIL_BACK_FUNC,\r\n StencilBackRef = WebGLRenderingContext.STENCIL_BACK_REF,\r\n StencilBackValueMask = WebGLRenderingContext.STENCIL_BACK_VALUE_MASK,\r\n StencilBackWriteMask = WebGLRenderingContext.STENCIL_BACK_WRITEMASK,\r\n StencilBackOpFail = WebGLRenderingContext.STENCIL_BACK_FAIL,\r\n StencilBackOpZFail = WebGLRenderingContext.STENCIL_BACK_PASS_DEPTH_FAIL,\r\n StencilBackOpZPass = WebGLRenderingContext.STENCIL_BACK_PASS_DEPTH_PASS,\r\n StencilTest = WebGLRenderingContext.STENCIL_TEST,\r\n StencilWriteMask = WebGLRenderingContext.STENCIL_WRITEMASK,\r\n }\r\n\r\n export namespace Texture {\r\n export enum Target {\r\n TwoDee = WebGLRenderingContext.TEXTURE_2D, // regular 2D texture\r\n CubeMap = WebGLRenderingContext.TEXTURE_CUBE_MAP, // six-sided cubemap texture\r\n CubeMapPositiveX = WebGLRenderingContext.TEXTURE_CUBE_MAP_POSITIVE_X, // right side\r\n CubeMapNegativeX = WebGLRenderingContext.TEXTURE_CUBE_MAP_NEGATIVE_X, // left side\r\n CubeMapPositiveY = WebGLRenderingContext.TEXTURE_CUBE_MAP_POSITIVE_Y, // top side\r\n CubeMapNegativeY = WebGLRenderingContext.TEXTURE_CUBE_MAP_NEGATIVE_Y, // bottom side\r\n CubeMapPositiveZ = WebGLRenderingContext.TEXTURE_CUBE_MAP_POSITIVE_Z, // back side\r\n CubeMapNegativeZ = WebGLRenderingContext.TEXTURE_CUBE_MAP_NEGATIVE_Z, // front side\r\n }\r\n export enum Format {\r\n Rgb = WebGLRenderingContext.RGB,\r\n Rgba = WebGLRenderingContext.RGBA,\r\n DepthStencil = WebGLRenderingContext.DEPTH_STENCIL,\r\n Luminance = WebGLRenderingContext.LUMINANCE,\r\n DepthComponent = WebGLRenderingContext.DEPTH_COMPONENT,\r\n }\r\n\r\n // This name is unambiguous as it is qualified by the namespace...https://github.com/palantir/tslint/issues/3789\r\n export enum DataType { // eslint-disable-line @typescript-eslint/no-shadow\r\n Float = WebGLRenderingContext.FLOAT,\r\n UnsignedByte = WebGLRenderingContext.UNSIGNED_BYTE,\r\n // UnsignedInt24_8 = WebGLRenderingContext.UNSIGNED_INT_24_8,\r\n UnsignedInt = WebGLRenderingContext.UNSIGNED_INT,\r\n }\r\n\r\n export enum WrapMode {\r\n Repeat = WebGLRenderingContext.REPEAT,\r\n MirroredRepeat = WebGLRenderingContext.MIRRORED_REPEAT,\r\n ClampToEdge = WebGLRenderingContext.CLAMP_TO_EDGE,\r\n }\r\n }\r\n\r\n export enum ShaderType {\r\n Fragment = WebGLRenderingContext.FRAGMENT_SHADER,\r\n Vertex = WebGLRenderingContext.VERTEX_SHADER,\r\n }\r\n\r\n export enum ShaderParameter {\r\n CompileStatus = WebGLRenderingContext.COMPILE_STATUS,\r\n }\r\n\r\n export enum ProgramParameter {\r\n LinkStatus = WebGLRenderingContext.LINK_STATUS,\r\n }\r\n\r\n export enum PrimitiveType {\r\n Points = WebGLRenderingContext.POINTS,\r\n Lines = WebGLRenderingContext.LINES,\r\n Triangles = WebGLRenderingContext.TRIANGLES,\r\n }\r\n\r\n export namespace RenderBuffer {\r\n export const TARGET = WebGLRenderingContext.RENDERBUFFER;\r\n\r\n export enum Format {\r\n DepthComponent16 = WebGLRenderingContext.DEPTH_COMPONENT16,\r\n }\r\n }\r\n\r\n export namespace FrameBuffer {\r\n export const TARGET = WebGLRenderingContext.FRAMEBUFFER;\r\n export enum Status {\r\n Complete = WebGLRenderingContext.FRAMEBUFFER_COMPLETE,\r\n IncompleteAttachment = WebGLRenderingContext.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,\r\n IncompleteMissingAttachment = WebGLRenderingContext.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT,\r\n IncompleteDimensions = WebGLRenderingContext.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,\r\n Unsupported = WebGLRenderingContext.FRAMEBUFFER_UNSUPPORTED,\r\n }\r\n }\r\n\r\n export enum BufferBit {\r\n Color = WebGLRenderingContext.COLOR_BUFFER_BIT,\r\n Depth = WebGLRenderingContext.DEPTH_BUFFER_BIT,\r\n Stencil = WebGLRenderingContext.STENCIL_BUFFER_BIT,\r\n }\r\n\r\n export namespace MultiSampling {\r\n export enum Filter {\r\n Nearest = WebGLRenderingContext.NEAREST,\r\n Linear = WebGLRenderingContext.LINEAR,\r\n }\r\n }\r\n\r\n export const POLYGON_OFFSET_FILL = WebGLRenderingContext.POLYGON_OFFSET_FILL;\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"GL.js","sourceRoot":"","sources":["../../../../src/render/webgl/GL.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 WebGL\r\n */\r\n\r\nif (typeof (WebGLRenderingContext) === \"undefined\") {\r\n (global as any).WebGLRenderingContext = new Proxy({}, { get: () => 0 });\r\n}\r\n\r\n/** @internal */\r\nexport namespace GL {\r\n export enum BlendEquation {\r\n Add = WebGLRenderingContext.FUNC_ADD,\r\n Subtract = WebGLRenderingContext.FUNC_SUBTRACT,\r\n ReverseSubtract = WebGLRenderingContext.FUNC_REVERSE_SUBTRACT,\r\n Default = Add,\r\n }\r\n\r\n export enum BlendFactor {\r\n Zero = WebGLRenderingContext.ZERO,\r\n One = WebGLRenderingContext.ONE,\r\n SrcColor = WebGLRenderingContext.SRC_COLOR,\r\n OneMinusSrcColor = WebGLRenderingContext.ONE_MINUS_SRC_COLOR,\r\n DstColor = WebGLRenderingContext.DST_COLOR,\r\n OneMinusDstColor = WebGLRenderingContext.ONE_MINUS_DST_COLOR,\r\n SrcAlpha = WebGLRenderingContext.SRC_ALPHA,\r\n OneMinusSrcAlpha = WebGLRenderingContext.ONE_MINUS_SRC_ALPHA,\r\n DstAlpha = WebGLRenderingContext.DST_ALPHA,\r\n OneMinusDstAlpha = WebGLRenderingContext.ONE_MINUS_DST_ALPHA,\r\n ConstColor = WebGLRenderingContext.CONSTANT_COLOR,\r\n OneMinusConstColor = WebGLRenderingContext.ONE_MINUS_CONSTANT_COLOR,\r\n ConstAlpha = WebGLRenderingContext.CONSTANT_ALPHA,\r\n OneMinusConstAlpha = WebGLRenderingContext.ONE_MINUS_CONSTANT_ALPHA,\r\n AlphaSaturate = WebGLRenderingContext.SRC_ALPHA_SATURATE,\r\n DefaultSrc = One,\r\n DefaultDst = Zero,\r\n }\r\n\r\n export namespace Buffer {\r\n export enum Target {\r\n ArrayBuffer = WebGLRenderingContext.ARRAY_BUFFER,\r\n ElementArrayBuffer = WebGLRenderingContext.ELEMENT_ARRAY_BUFFER,\r\n }\r\n\r\n export enum Binding {\r\n ArrayBuffer = WebGLRenderingContext.ARRAY_BUFFER_BINDING,\r\n ElementArrayBuffer = WebGLRenderingContext.ELEMENT_ARRAY_BUFFER_BINDING,\r\n }\r\n\r\n export enum Parameter {\r\n Size = WebGLRenderingContext.BUFFER_SIZE,\r\n Usage = WebGLRenderingContext.BUFFER_USAGE, // eslint-disable-line @typescript-eslint/no-shadow\r\n }\r\n\r\n export enum Usage {\r\n DynamicDraw = WebGLRenderingContext.DYNAMIC_DRAW,\r\n StaticDraw = WebGLRenderingContext.STATIC_DRAW,\r\n StreamDraw = WebGLRenderingContext.STREAM_DRAW,\r\n }\r\n }\r\n\r\n export enum StencilOperation {\r\n Keep = WebGLRenderingContext.KEEP,\r\n Zero = WebGLRenderingContext.ZERO,\r\n Replace = WebGLRenderingContext.REPLACE,\r\n Incr = WebGLRenderingContext.INCR,\r\n IncrWrap = WebGLRenderingContext.INCR_WRAP,\r\n Decr = WebGLRenderingContext.DECR,\r\n DecrWrap = WebGLRenderingContext.DECR_WRAP,\r\n Invert = WebGLRenderingContext.INVERT,\r\n Default = Keep,\r\n }\r\n\r\n export enum StencilFunction {\r\n Never = WebGLRenderingContext.NEVER,\r\n Less = WebGLRenderingContext.LESS,\r\n LEqual = WebGLRenderingContext.LEQUAL,\r\n Greater = WebGLRenderingContext.GREATER,\r\n GEqual = WebGLRenderingContext.GEQUAL,\r\n Equal = WebGLRenderingContext.EQUAL,\r\n NotEqual = WebGLRenderingContext.NOTEQUAL,\r\n Always = WebGLRenderingContext.ALWAYS,\r\n Default = Always,\r\n }\r\n\r\n export enum CullFace {\r\n Front = WebGLRenderingContext.FRONT,\r\n Back = WebGLRenderingContext.BACK,\r\n FrontAndBack = WebGLRenderingContext.FRONT_AND_BACK,\r\n Default = Back,\r\n }\r\n\r\n export enum DataType {\r\n Byte = WebGLRenderingContext.BYTE,\r\n Short = WebGLRenderingContext.SHORT,\r\n UnsignedByte = WebGLRenderingContext.UNSIGNED_BYTE,\r\n UnsignedShort = WebGLRenderingContext.UNSIGNED_SHORT,\r\n UnsignedInt = WebGLRenderingContext.UNSIGNED_INT,\r\n Float = WebGLRenderingContext.FLOAT,\r\n // WebGL 2 has more data types\r\n // HalfFloat = WebGLRenderingContext.HALF_FLOAT,\r\n }\r\n\r\n export enum FrontFace {\r\n CounterClockwise = WebGLRenderingContext.CCW,\r\n Clockwise = WebGLRenderingContext.CW,\r\n Default = CounterClockwise,\r\n }\r\n\r\n export enum DepthFunc {\r\n Never = WebGLRenderingContext.NEVER,\r\n Less = WebGLRenderingContext.LESS,\r\n Equal = WebGLRenderingContext.EQUAL,\r\n LessOrEqual = WebGLRenderingContext.LEQUAL,\r\n Greater = WebGLRenderingContext.GREATER,\r\n NotEqual = WebGLRenderingContext.NOTEQUAL,\r\n GreaterOrEqual = WebGLRenderingContext.GEQUAL,\r\n Always = WebGLRenderingContext.ALWAYS,\r\n Default = LessOrEqual,\r\n }\r\n\r\n export enum Capability {\r\n Blend = WebGLRenderingContext.BLEND,\r\n BlendColor = WebGLRenderingContext.BLEND_COLOR,\r\n BlendEquationAlpha = WebGLRenderingContext.BLEND_EQUATION_ALPHA,\r\n BlendEquationRGB = WebGLRenderingContext.BLEND_EQUATION_RGB,\r\n BlendSrcAlpha = WebGLRenderingContext.BLEND_SRC_ALPHA,\r\n BlendSrcRgb = WebGLRenderingContext.BLEND_SRC_RGB,\r\n BlendDstAlpha = WebGLRenderingContext.BLEND_DST_ALPHA,\r\n BlendDstRgb = WebGLRenderingContext.BLEND_DST_RGB,\r\n CullFace = WebGLRenderingContext.CULL_FACE, // eslint-disable-line @typescript-eslint/no-shadow\r\n CullFaceMode = WebGLRenderingContext.CULL_FACE_MODE,\r\n DepthFunc = WebGLRenderingContext.DEPTH_FUNC, // eslint-disable-line @typescript-eslint/no-shadow\r\n DepthTest = WebGLRenderingContext.DEPTH_TEST,\r\n DepthWriteMask = WebGLRenderingContext.DEPTH_WRITEMASK,\r\n FrontFace = WebGLRenderingContext.FRONT_FACE, // eslint-disable-line @typescript-eslint/no-shadow\r\n StencilFrontFunc = WebGLRenderingContext.STENCIL_FUNC,\r\n StencilFrontRef = WebGLRenderingContext.STENCIL_REF,\r\n StencilFrontValueMask = WebGLRenderingContext.STENCIL_VALUE_MASK,\r\n StencilFrontWriteMask = WebGLRenderingContext.STENCIL_WRITEMASK,\r\n StencilFrontOpFail = WebGLRenderingContext.STENCIL_FAIL,\r\n StencilFrontOpZFail = WebGLRenderingContext.STENCIL_PASS_DEPTH_FAIL,\r\n StencilFrontOpZPass = WebGLRenderingContext.STENCIL_PASS_DEPTH_PASS,\r\n StencilBackFunc = WebGLRenderingContext.STENCIL_BACK_FUNC,\r\n StencilBackRef = WebGLRenderingContext.STENCIL_BACK_REF,\r\n StencilBackValueMask = WebGLRenderingContext.STENCIL_BACK_VALUE_MASK,\r\n StencilBackWriteMask = WebGLRenderingContext.STENCIL_BACK_WRITEMASK,\r\n StencilBackOpFail = WebGLRenderingContext.STENCIL_BACK_FAIL,\r\n StencilBackOpZFail = WebGLRenderingContext.STENCIL_BACK_PASS_DEPTH_FAIL,\r\n StencilBackOpZPass = WebGLRenderingContext.STENCIL_BACK_PASS_DEPTH_PASS,\r\n StencilTest = WebGLRenderingContext.STENCIL_TEST,\r\n StencilWriteMask = WebGLRenderingContext.STENCIL_WRITEMASK,\r\n }\r\n\r\n export namespace Texture {\r\n export enum Target {\r\n TwoDee = WebGLRenderingContext.TEXTURE_2D, // regular 2D texture\r\n CubeMap = WebGLRenderingContext.TEXTURE_CUBE_MAP, // six-sided cubemap texture\r\n CubeMapPositiveX = WebGLRenderingContext.TEXTURE_CUBE_MAP_POSITIVE_X, // right side\r\n CubeMapNegativeX = WebGLRenderingContext.TEXTURE_CUBE_MAP_NEGATIVE_X, // left side\r\n CubeMapPositiveY = WebGLRenderingContext.TEXTURE_CUBE_MAP_POSITIVE_Y, // top side\r\n CubeMapNegativeY = WebGLRenderingContext.TEXTURE_CUBE_MAP_NEGATIVE_Y, // bottom side\r\n CubeMapPositiveZ = WebGLRenderingContext.TEXTURE_CUBE_MAP_POSITIVE_Z, // back side\r\n CubeMapNegativeZ = WebGLRenderingContext.TEXTURE_CUBE_MAP_NEGATIVE_Z, // front side\r\n }\r\n export enum Format {\r\n Rgb = WebGLRenderingContext.RGB,\r\n Rgba = WebGLRenderingContext.RGBA,\r\n DepthStencil = WebGLRenderingContext.DEPTH_STENCIL,\r\n Luminance = WebGLRenderingContext.LUMINANCE,\r\n DepthComponent = WebGLRenderingContext.DEPTH_COMPONENT,\r\n }\r\n\r\n // This name is unambiguous as it is qualified by the namespace...https://github.com/palantir/tslint/issues/3789\r\n export enum DataType { // eslint-disable-line @typescript-eslint/no-shadow\r\n Float = WebGLRenderingContext.FLOAT,\r\n UnsignedByte = WebGLRenderingContext.UNSIGNED_BYTE,\r\n // UnsignedInt24_8 = WebGLRenderingContext.UNSIGNED_INT_24_8,\r\n UnsignedInt = WebGLRenderingContext.UNSIGNED_INT,\r\n }\r\n\r\n export enum WrapMode {\r\n Repeat = WebGLRenderingContext.REPEAT,\r\n MirroredRepeat = WebGLRenderingContext.MIRRORED_REPEAT,\r\n ClampToEdge = WebGLRenderingContext.CLAMP_TO_EDGE,\r\n }\r\n }\r\n\r\n export enum ShaderType {\r\n Fragment = WebGLRenderingContext.FRAGMENT_SHADER,\r\n Vertex = WebGLRenderingContext.VERTEX_SHADER,\r\n }\r\n\r\n export enum ShaderParameter {\r\n CompileStatus = WebGLRenderingContext.COMPILE_STATUS,\r\n }\r\n\r\n export enum ProgramParameter {\r\n LinkStatus = WebGLRenderingContext.LINK_STATUS,\r\n ActiveUniforms = WebGLRenderingContext.ACTIVE_UNIFORMS,\r\n }\r\n\r\n export enum PrimitiveType {\r\n Points = WebGLRenderingContext.POINTS,\r\n Lines = WebGLRenderingContext.LINES,\r\n Triangles = WebGLRenderingContext.TRIANGLES,\r\n }\r\n\r\n export namespace RenderBuffer {\r\n export const TARGET = WebGLRenderingContext.RENDERBUFFER;\r\n\r\n export enum Format {\r\n DepthComponent16 = WebGLRenderingContext.DEPTH_COMPONENT16,\r\n }\r\n }\r\n\r\n export namespace FrameBuffer {\r\n export const TARGET = WebGLRenderingContext.FRAMEBUFFER;\r\n export enum Status {\r\n Complete = WebGLRenderingContext.FRAMEBUFFER_COMPLETE,\r\n IncompleteAttachment = WebGLRenderingContext.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,\r\n IncompleteMissingAttachment = WebGLRenderingContext.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT,\r\n IncompleteDimensions = WebGLRenderingContext.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,\r\n Unsupported = WebGLRenderingContext.FRAMEBUFFER_UNSUPPORTED,\r\n }\r\n }\r\n\r\n export enum BufferBit {\r\n Color = WebGLRenderingContext.COLOR_BUFFER_BIT,\r\n Depth = WebGLRenderingContext.DEPTH_BUFFER_BIT,\r\n Stencil = WebGLRenderingContext.STENCIL_BUFFER_BIT,\r\n }\r\n\r\n export namespace MultiSampling {\r\n export enum Filter {\r\n Nearest = WebGLRenderingContext.NEAREST,\r\n Linear = WebGLRenderingContext.LINEAR,\r\n }\r\n }\r\n\r\n export const POLYGON_OFFSET_FILL = WebGLRenderingContext.POLYGON_OFFSET_FILL;\r\n}\r\n"]}
|
|
@@ -22,6 +22,7 @@ import { TextureDrape } from "./TextureDrape";
|
|
|
22
22
|
import { ThematicSensors } from "./ThematicSensors";
|
|
23
23
|
import { BranchState } from "./BranchState";
|
|
24
24
|
import { BatchOptions } from "../../common/render/BatchOptions";
|
|
25
|
+
import { Contours } from "./Contours";
|
|
25
26
|
/** @internal */
|
|
26
27
|
export declare abstract class Graphic extends RenderGraphic implements WebGLDisposable {
|
|
27
28
|
abstract addCommands(_commands: RenderCommands): void;
|
|
@@ -51,17 +52,21 @@ export declare class GraphicOwner extends Graphic {
|
|
|
51
52
|
export interface BatchContext {
|
|
52
53
|
batchId: number;
|
|
53
54
|
iModel?: IModelConnection;
|
|
55
|
+
transformFromIModel?: Transform;
|
|
54
56
|
viewAttachmentId?: Id64String;
|
|
57
|
+
inSectionDrawingAttachment?: boolean;
|
|
55
58
|
}
|
|
56
59
|
/** @internal exported strictly for tests. */
|
|
57
60
|
export declare class PerTargetBatchData {
|
|
58
61
|
readonly target: Target;
|
|
59
62
|
protected readonly _featureOverrides: Map<FeatureSymbology.Source | undefined, FeatureOverrides>;
|
|
63
|
+
protected _contours?: Contours;
|
|
60
64
|
protected _thematicSensors?: ThematicSensors;
|
|
61
65
|
constructor(target: Target);
|
|
62
66
|
dispose(): void;
|
|
63
67
|
getThematicSensors(batch: Batch): ThematicSensors;
|
|
64
68
|
getFeatureOverrides(batch: Batch): FeatureOverrides;
|
|
69
|
+
getContours(batch: Batch): Contours;
|
|
65
70
|
collectStatistics(stats: RenderMemory.Statistics): void;
|
|
66
71
|
/** Exposed strictly for tests. */
|
|
67
72
|
get featureOverrides(): Map<FeatureSymbology.Source | undefined, FeatureOverrides>;
|
|
@@ -80,6 +85,7 @@ export declare class PerTargetData {
|
|
|
80
85
|
collectStatistics(stats: RenderMemory.Statistics): void;
|
|
81
86
|
getThematicSensors(target: Target): ThematicSensors;
|
|
82
87
|
getFeatureOverrides(target: Target): FeatureOverrides;
|
|
88
|
+
getContours(target: Target): Contours;
|
|
83
89
|
private getBatchData;
|
|
84
90
|
}
|
|
85
91
|
/** @internal */
|
|
@@ -96,7 +102,9 @@ export declare class Batch extends Graphic {
|
|
|
96
102
|
/** The following are valid only during a draw and reset afterward. */
|
|
97
103
|
get batchId(): number;
|
|
98
104
|
get batchIModel(): IModelConnection | undefined;
|
|
105
|
+
get transformFromBatchIModel(): Transform | undefined;
|
|
99
106
|
get viewAttachmentId(): string | undefined;
|
|
107
|
+
get inSectionDrawingAttachment(): boolean | undefined;
|
|
100
108
|
setContext(batchId: number, branch: BranchState): void;
|
|
101
109
|
resetContext(): void;
|
|
102
110
|
constructor(graphic: RenderGraphic, features: RenderFeatureTable, range: ElementAlignedBox3d, options?: BatchOptions);
|
|
@@ -109,6 +117,7 @@ export declare class Batch extends Graphic {
|
|
|
109
117
|
get isPickable(): boolean;
|
|
110
118
|
getThematicSensors(target: Target): ThematicSensors;
|
|
111
119
|
getOverrides(target: Target): FeatureOverrides;
|
|
120
|
+
getContours(target: Target): Contours;
|
|
112
121
|
onTargetDisposed(target: Target): void;
|
|
113
122
|
}
|
|
114
123
|
/** @internal */
|
|
@@ -125,6 +134,9 @@ export declare class Branch extends Graphic {
|
|
|
125
134
|
readonly appearanceProvider?: FeatureAppearanceProvider;
|
|
126
135
|
readonly secondaryClassifiers?: PlanarClassifier[];
|
|
127
136
|
readonly viewAttachmentId?: Id64String;
|
|
137
|
+
readonly inSectionDrawingAttachment?: boolean;
|
|
138
|
+
disableClipStyle?: true;
|
|
139
|
+
readonly transformFromExternalIModel?: Transform;
|
|
128
140
|
constructor(branch: GraphicBranch, localToWorld: Transform, viewFlags?: ViewFlags, opts?: GraphicBranchOptions);
|
|
129
141
|
get isDisposed(): boolean;
|
|
130
142
|
dispose(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Graphic.d.ts","sourceRoot":"","sources":["../../../../src/render/webgl/Graphic.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAmB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,kBAAkB,EAAuB,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACxI,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"Graphic.d.ts","sourceRoot":"","sources":["../../../../src/render/webgl/Graphic.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAmB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,kBAAkB,EAAuB,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACxI,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,gBAAgB;AAChB,8BAAsB,OAAQ,SAAQ,aAAc,YAAW,eAAe;aAC5D,WAAW,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IAC5D,aAAoB,UAAU,IAAI,OAAO,CAAC;IAC1C,aAAoB,UAAU,IAAI,OAAO,CAAC;IACnC,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;IACrE,WAAW,IAAI,SAAS,GAAG,SAAS;CAC5C;AAED,qBAAa,YAAa,SAAQ,OAAO;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;gBAEhB,OAAO,EAAE,OAAO;IAKnC,IAAW,OAAO,IAAI,aAAa,CAA0B;IAE7D,OAAO,CAAC,WAAW,CAAS;IAC5B,IAAW,UAAU,IAAI,OAAO,CAA6B;IACtD,OAAO,IAAI,IAAI;IACf,cAAc,IAAI,IAAI;IAGtB,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAI9C,UAAU,CAAC,KAAK,EAAE,OAAO;IAIlC,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAGlD,IAAoB,UAAU,IAAI,OAAO,CAExC;IACe,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAGnE,WAAW,IAAI,SAAS,GAAG,SAAS;CAGrD;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAChC,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,6CAA6C;AAC7C,qBAAa,kBAAkB;IAC7B,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,QAAQ,CAAC,iBAAiB,6DAAoE;IACxG,SAAS,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC;IAC/B,SAAS,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;gBAE1B,MAAM,EAAE,MAAM;IAI1B,OAAO,IAAI,IAAI;IASf,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe;IAWjD,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,gBAAgB;IAanD,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ;IAanC,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAW9D,kCAAkC;IAClC,IAAW,gBAAgB,+DAAqC;IAEhE,OAAO,CAAC,gBAAgB;CAOzB;AAED,6CAA6C;AAC7C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA4B;gBAE/B,KAAK,EAAE,KAAK;IAIxB,OAAO,IAAI,IAAI;IAStB,IAAW,UAAU,IAAI,OAAO,CAE/B;IAED,kCAAkC;IAClC,IAAW,IAAI,IAAI,kBAAkB,EAAE,CAAuB;IAEvD,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUtC,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAKvD,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAInD,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAIrD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;IAI5C,OAAO,CAAC,YAAY;CASrB;AAED,gBAAgB;AAChB,qBAAa,KAAM,SAAQ,OAAO;IAChC,SAAgB,OAAO,EAAE,aAAa,CAAC;IACvC,SAAgB,YAAY,EAAE,kBAAkB,CAAC;IACjD,SAAgB,KAAK,EAAE,mBAAmB,CAAC;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,iCAAiC;IACjC,SAAgB,aAAa,gBAA2B;IACxD,SAAgB,OAAO,EAAE,YAAY,CAAC;IAGtC,IAAW,MAAM,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,IAAW,UAAU,IAAI,OAAO,CAE/B;IAED,sEAAsE;IACtE,IAAW,OAAO,WAAoC;IACtD,IAAW,WAAW,iCAAmC;IACzD,IAAW,wBAAwB,0BAAgD;IACnF,IAAW,gBAAgB,uBAA6C;IACxE,IAAW,0BAA0B,wBAAuD;IAErF,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;IAQ/C,YAAY;gBAQA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,YAAY;IAQ3H,OAAO,CAAC,WAAW,CAAS;IAC5B,IAAW,UAAU,IAAI,OAAO,CAE/B;IAGM,OAAO;IAOP,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAM9C,UAAU,CAAC,KAAK,EAAE,OAAO;IAIlC,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAIlD,IAAoB,UAAU,IAAI,OAAO,CAExC;IAEM,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAQnD,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAI9C,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;IAIrC,gBAAgB,CAAC,MAAM,EAAE,MAAM;CAGvC;AAED,gBAAgB;AAChB,qBAAa,MAAO,SAAQ,OAAO;IACjC,SAAgB,MAAM,EAAE,aAAa,CAAC;IAC/B,qBAAqB,EAAE,SAAS,CAAC;IACxC,SAAgB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnC,SAAgB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpD,SAAgB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5C,SAAgB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACjE,SAAgB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5C,SAAgB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1C,SAAgB,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/C,SAAgB,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;IAC/D,SAAgB,oBAAoB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC1D,SAAgB,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9C,SAAgB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,gBAAgB,CAAC,EAAE,IAAI,CAAC;IAC/B,SAAgB,2BAA2B,CAAC,EAAE,SAAS,CAAC;gBAErC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,oBAAoB;IAqCrH,IAAW,UAAU,IAAI,OAAO,CAE/B;IAEM,OAAO;IAId,IAAoB,UAAU,IAAI,OAAO,CAExC;IAEM,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAI9C,UAAU,CAAC,KAAK,EAAE,OAAO;IASzC,OAAO,CAAC,iBAAiB;IASlB,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAKlC,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;CAIpF;AAED,gBAAgB;AAChB,qBAAa,wBAAyB,SAAQ,OAAO;IACnD,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,OAAO,EAAE,OAAO,CAAC;gBAEd,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM;IAOzC,OAAO;IAIvB,IAAoB,UAAU,YAE7B;IAED,IAAoB,UAAU,YAE7B;IAEe,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU;IAIhD,UAAU,CAAC,KAAK,EAAE,OAAO;IAIzB,WAAW,CAAC,QAAQ,EAAE,cAAc;IAMpC,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU;CAK7E;AAED,gBAAgB;AAChB,qBAAa,gBAAiB,SAAQ,MAAM;gBACvB,SAAS,EAAE,SAAS;IAShC,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;CAMrC;AACD,gBAAgB;AAChB,qBAAa,aAAc,SAAQ,OAAO;IAErB,QAAQ,EAAE,aAAa,EAAE;gBAAzB,QAAQ,EAAE,aAAa,EAAE;IAE5C,IAAW,UAAU,IAAI,OAAO,CAAuC;IAEvE,IAAoB,UAAU,IAAI,OAAO,CAExC;IAEM,OAAO;IAMP,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAMlC,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAM5E,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAK9C,UAAU,CAAC,KAAK,EAAE,OAAO;CAI1C"}
|
|
@@ -16,6 +16,7 @@ import { FeatureOverrides } from "./FeatureOverrides";
|
|
|
16
16
|
import { PlanarClassifier } from "./PlanarClassifier";
|
|
17
17
|
import { TextureDrape } from "./TextureDrape";
|
|
18
18
|
import { ThematicSensors } from "./ThematicSensors";
|
|
19
|
+
import { Contours } from "./Contours";
|
|
19
20
|
/** @internal */
|
|
20
21
|
export class Graphic extends RenderGraphic {
|
|
21
22
|
addHiliteCommands(_commands, _pass) { assert(false); }
|
|
@@ -60,6 +61,7 @@ export class PerTargetBatchData {
|
|
|
60
61
|
}
|
|
61
62
|
dispose() {
|
|
62
63
|
this._thematicSensors = dispose(this._thematicSensors);
|
|
64
|
+
this._contours = this._contours?.dispose();
|
|
63
65
|
for (const value of this._featureOverrides.values())
|
|
64
66
|
dispose(value);
|
|
65
67
|
this._featureOverrides.clear();
|
|
@@ -83,11 +85,25 @@ export class PerTargetBatchData {
|
|
|
83
85
|
ovrs.update(batch.featureTable);
|
|
84
86
|
return ovrs;
|
|
85
87
|
}
|
|
88
|
+
getContours(batch) {
|
|
89
|
+
if (this._contours && !this._contours.matchesTargetAndFeatureCount(this.target, batch.featureTable))
|
|
90
|
+
this._contours = this._contours.dispose();
|
|
91
|
+
if (!this._contours) {
|
|
92
|
+
this._contours = Contours.createFromTarget(this.target, batch.options);
|
|
93
|
+
this._contours.initFromMap(batch.featureTable);
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
this._contours.update(batch.featureTable);
|
|
97
|
+
}
|
|
98
|
+
return this._contours;
|
|
99
|
+
}
|
|
86
100
|
collectStatistics(stats) {
|
|
87
101
|
if (this._thematicSensors)
|
|
88
102
|
stats.addThematicTexture(this._thematicSensors.bytesUsed);
|
|
89
103
|
for (const ovrs of this._featureOverrides.values())
|
|
90
104
|
stats.addFeatureOverrides(ovrs.byteLength);
|
|
105
|
+
if (this._contours)
|
|
106
|
+
stats.addContours(this._contours.byteLength);
|
|
91
107
|
}
|
|
92
108
|
/** Exposed strictly for tests. */
|
|
93
109
|
get featureOverrides() { return this._featureOverrides; }
|
|
@@ -135,6 +151,9 @@ export class PerTargetData {
|
|
|
135
151
|
getFeatureOverrides(target) {
|
|
136
152
|
return this.getBatchData(target).getFeatureOverrides(this._batch);
|
|
137
153
|
}
|
|
154
|
+
getContours(target) {
|
|
155
|
+
return this.getBatchData(target).getContours(this._batch);
|
|
156
|
+
}
|
|
138
157
|
getBatchData(target) {
|
|
139
158
|
let data = this._data.find((x) => x.target === target);
|
|
140
159
|
if (!data) {
|
|
@@ -156,16 +175,22 @@ export class Batch extends Graphic {
|
|
|
156
175
|
/** The following are valid only during a draw and reset afterward. */
|
|
157
176
|
get batchId() { return this._context.batchId; }
|
|
158
177
|
get batchIModel() { return this._context.iModel; }
|
|
178
|
+
get transformFromBatchIModel() { return this._context.transformFromIModel; }
|
|
159
179
|
get viewAttachmentId() { return this._context.viewAttachmentId; }
|
|
180
|
+
get inSectionDrawingAttachment() { return this._context.inSectionDrawingAttachment; }
|
|
160
181
|
setContext(batchId, branch) {
|
|
161
182
|
this._context.batchId = batchId;
|
|
162
183
|
this._context.iModel = branch.iModel;
|
|
184
|
+
this._context.transformFromIModel = branch.transformFromIModel;
|
|
163
185
|
this._context.viewAttachmentId = branch.viewAttachmentId;
|
|
186
|
+
this._context.inSectionDrawingAttachment = branch.inSectionDrawingAttachment;
|
|
164
187
|
}
|
|
165
188
|
resetContext() {
|
|
166
189
|
this._context.batchId = 0;
|
|
167
190
|
this._context.iModel = undefined;
|
|
191
|
+
this._context.transformFromIModel = undefined;
|
|
168
192
|
this._context.viewAttachmentId = undefined;
|
|
193
|
+
this._context.inSectionDrawingAttachment = undefined;
|
|
169
194
|
}
|
|
170
195
|
constructor(graphic, features, range, options) {
|
|
171
196
|
super();
|
|
@@ -210,6 +235,9 @@ export class Batch extends Graphic {
|
|
|
210
235
|
getOverrides(target) {
|
|
211
236
|
return this.perTargetData.getFeatureOverrides(target);
|
|
212
237
|
}
|
|
238
|
+
getContours(target) {
|
|
239
|
+
return this.perTargetData.getContours(target);
|
|
240
|
+
}
|
|
213
241
|
onTargetDisposed(target) {
|
|
214
242
|
this.perTargetData.onTargetDisposed(target);
|
|
215
243
|
}
|
|
@@ -229,6 +257,9 @@ export class Branch extends Graphic {
|
|
|
229
257
|
this.iModel = opts.iModel;
|
|
230
258
|
this.frustum = opts.frustum;
|
|
231
259
|
this.viewAttachmentId = opts.viewAttachmentId;
|
|
260
|
+
this.inSectionDrawingAttachment = opts.inSectionDrawingAttachment;
|
|
261
|
+
this.disableClipStyle = opts.disableClipStyle;
|
|
262
|
+
this.transformFromExternalIModel = opts.transformFromIModel;
|
|
232
263
|
if (opts.hline)
|
|
233
264
|
this.edgeSettings = EdgeSettings.create(opts.hline);
|
|
234
265
|
if (opts.classifierOrDrape instanceof PlanarClassifier)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Graphic.js","sourceRoot":"","sources":["../../../../src/render/webgl/Graphic.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 WebGL\r\n */\r\n\r\nimport { assert, dispose, Id64String } from \"@itwin/core-bentley\";\r\nimport { ElementAlignedBox3d, FeatureAppearanceProvider, RenderFeatureTable, ThematicDisplayMode, ViewFlags } from \"@itwin/core-common\";\r\nimport { Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport { IModelConnection } from \"../../IModelConnection\";\r\nimport { FeatureSymbology } from \"../FeatureSymbology\";\r\nimport { GraphicBranch, GraphicBranchFrustum, GraphicBranchOptions } from \"../GraphicBranch\";\r\nimport { GraphicList, RenderGraphic } from \"../RenderGraphic\";\r\nimport { RenderMemory } from \"../RenderMemory\";\r\nimport { ClipVolume } from \"./ClipVolume\";\r\nimport { WebGLDisposable } from \"./Disposable\";\r\nimport { EdgeSettings } from \"./EdgeSettings\";\r\nimport { FeatureOverrides } from \"./FeatureOverrides\";\r\nimport { PlanarClassifier } from \"./PlanarClassifier\";\r\nimport { Primitive } from \"./Primitive\";\r\nimport { RenderCommands } from \"./RenderCommands\";\r\nimport { RenderPass } from \"./RenderFlags\";\r\nimport { Target } from \"./Target\";\r\nimport { TextureDrape } from \"./TextureDrape\";\r\nimport { ThematicSensors } from \"./ThematicSensors\";\r\nimport { BranchState } from \"./BranchState\";\r\nimport { BatchOptions } from \"../../common/render/BatchOptions\";\r\n\r\n/** @internal */\r\nexport abstract class Graphic extends RenderGraphic implements WebGLDisposable {\r\n public abstract addCommands(_commands: RenderCommands): void;\r\n public abstract get isDisposed(): boolean;\r\n public abstract get isPickable(): boolean;\r\n public addHiliteCommands(_commands: RenderCommands, _pass: RenderPass): void { assert(false); }\r\n public toPrimitive(): Primitive | undefined { return undefined; }\r\n}\r\n\r\nexport class GraphicOwner extends Graphic {\r\n private readonly _graphic: Graphic;\r\n\r\n public constructor(graphic: Graphic) {\r\n super();\r\n this._graphic = graphic;\r\n }\r\n\r\n public get graphic(): RenderGraphic { return this._graphic; }\r\n\r\n private _isDisposed = false;\r\n public get isDisposed(): boolean { return this._isDisposed; }\r\n public dispose(): void { this._isDisposed = true; }\r\n public disposeGraphic(): void {\r\n this.graphic.dispose();\r\n }\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this.graphic.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n this.graphic.unionRange(range);\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n this._graphic.addCommands(commands);\r\n }\r\n public override get isPickable(): boolean {\r\n return this._graphic.isPickable;\r\n }\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass): void {\r\n this._graphic.addHiliteCommands(commands, pass);\r\n }\r\n public override toPrimitive(): Primitive | undefined {\r\n return this._graphic.toPrimitive();\r\n }\r\n}\r\n\r\n/** Transiently assigned to a Batch while rendering a frame, reset afterward. Used to provide context for pick IDs.\r\n * @internal\r\n */\r\nexport interface BatchContext {\r\n batchId: number;\r\n iModel?: IModelConnection;\r\n viewAttachmentId?: Id64String;\r\n}\r\n\r\n/** @internal exported strictly for tests. */\r\nexport class PerTargetBatchData {\r\n public readonly target: Target;\r\n protected readonly _featureOverrides = new Map<FeatureSymbology.Source | undefined, FeatureOverrides>();\r\n protected _thematicSensors?: ThematicSensors;\r\n\r\n public constructor(target: Target) {\r\n this.target = target;\r\n }\r\n\r\n public dispose(): void {\r\n this._thematicSensors = dispose(this._thematicSensors);\r\n for (const value of this._featureOverrides.values())\r\n dispose(value);\r\n\r\n this._featureOverrides.clear();\r\n }\r\n\r\n public getThematicSensors(batch: Batch): ThematicSensors {\r\n if (this._thematicSensors && !this._thematicSensors.matchesTarget(this.target))\r\n this._thematicSensors = dispose(this._thematicSensors);\r\n\r\n if (!this._thematicSensors)\r\n this._thematicSensors = ThematicSensors.create(this.target, batch.range);\r\n\r\n this._thematicSensors.update(this.target.uniforms.frustum.viewMatrix);\r\n return this._thematicSensors;\r\n }\r\n\r\n public getFeatureOverrides(batch: Batch): FeatureOverrides {\r\n const source = this.target.currentFeatureSymbologyOverrides?.source;\r\n let ovrs = this._featureOverrides.get(source);\r\n if (!ovrs) {\r\n const cleanup = source ? source.onSourceDisposed.addOnce(() => this.onSourceDisposed(source)) : undefined;\r\n this._featureOverrides.set(source, ovrs = FeatureOverrides.createFromTarget(this.target, batch.options, cleanup));\r\n ovrs.initFromMap(batch.featureTable);\r\n }\r\n\r\n ovrs.update(batch.featureTable);\r\n return ovrs;\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n if (this._thematicSensors)\r\n stats.addThematicTexture(this._thematicSensors.bytesUsed);\r\n\r\n for (const ovrs of this._featureOverrides.values())\r\n stats.addFeatureOverrides(ovrs.byteLength);\r\n }\r\n\r\n /** Exposed strictly for tests. */\r\n public get featureOverrides() { return this._featureOverrides; }\r\n\r\n private onSourceDisposed(source: FeatureSymbology.Source): void {\r\n const ovrs = this._featureOverrides.get(source);\r\n if (ovrs) {\r\n this._featureOverrides.delete(source);\r\n ovrs.dispose();\r\n }\r\n }\r\n}\r\n\r\n/** @internal exported strictly for tests. */\r\nexport class PerTargetData {\r\n private readonly _batch: Batch;\r\n private readonly _data: PerTargetBatchData[] = [];\r\n\r\n public constructor(batch: Batch) {\r\n this._batch = batch;\r\n }\r\n\r\n public dispose(): void {\r\n for (const data of this._data) {\r\n data.target.onBatchDisposed(this._batch);\r\n data.dispose();\r\n }\r\n\r\n this._data.length = 0;\r\n }\r\n\r\n public get isDisposed(): boolean {\r\n return this._data.length === 0;\r\n }\r\n\r\n /** Exposed strictly for tests. */\r\n public get data(): PerTargetBatchData[] { return this._data; }\r\n\r\n public onTargetDisposed(target: Target): void {\r\n const index = this._data.findIndex((x) => x.target === target);\r\n if (-1 === index)\r\n return;\r\n\r\n const data = this._data[index];\r\n data.dispose();\r\n this._data.splice(index, 1);\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n for (const data of this._data)\r\n data.collectStatistics(stats);\r\n }\r\n\r\n public getThematicSensors(target: Target): ThematicSensors {\r\n return this.getBatchData(target).getThematicSensors(this._batch);\r\n }\r\n\r\n public getFeatureOverrides(target: Target): FeatureOverrides {\r\n return this.getBatchData(target).getFeatureOverrides(this._batch);\r\n }\r\n\r\n private getBatchData(target: Target): PerTargetBatchData {\r\n let data = this._data.find((x) => x.target === target);\r\n if (!data) {\r\n this._data.push(data = new PerTargetBatchData(target));\r\n target.addBatch(this._batch);\r\n }\r\n\r\n return data;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class Batch extends Graphic {\r\n public readonly graphic: RenderGraphic;\r\n public readonly featureTable: RenderFeatureTable;\r\n public readonly range: ElementAlignedBox3d;\r\n private readonly _context: BatchContext = { batchId: 0 };\r\n /** Public strictly for tests. */\r\n public readonly perTargetData = new PerTargetData(this);\r\n public readonly options: BatchOptions;\r\n\r\n // Chiefly for debugging.\r\n public get tileId(): string | undefined {\r\n return this.options.tileId;\r\n }\r\n\r\n public get locateOnly(): boolean {\r\n return true === this.options.locateOnly;\r\n }\r\n\r\n /** The following are valid only during a draw and reset afterward. */\r\n public get batchId() { return this._context.batchId; }\r\n public get batchIModel() { return this._context.iModel; }\r\n public get viewAttachmentId() { return this._context.viewAttachmentId; }\r\n\r\n public setContext(batchId: number, branch: BranchState) {\r\n this._context.batchId = batchId;\r\n this._context.iModel = branch.iModel;\r\n this._context.viewAttachmentId = branch.viewAttachmentId;\r\n }\r\n\r\n public resetContext() {\r\n this._context.batchId = 0;\r\n this._context.iModel = undefined;\r\n this._context.viewAttachmentId = undefined;\r\n }\r\n\r\n public constructor(graphic: RenderGraphic, features: RenderFeatureTable, range: ElementAlignedBox3d, options?: BatchOptions) {\r\n super();\r\n this.graphic = graphic;\r\n this.featureTable = features;\r\n this.range = range;\r\n this.options = options ?? {};\r\n }\r\n\r\n private _isDisposed = false;\r\n public get isDisposed(): boolean {\r\n return this._isDisposed && this.perTargetData.isDisposed;\r\n }\r\n\r\n // Note: This does not remove FeatureOverrides from the array, but rather disposes of the WebGL resources they contain\r\n public dispose() {\r\n dispose(this.graphic);\r\n\r\n this.perTargetData.dispose();\r\n this._isDisposed = true;\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this.graphic.collectStatistics(stats);\r\n stats.addFeatureTable(this.featureTable.byteLength);\r\n this.perTargetData.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n range.extendRange(this.range);\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n commands.addBatch(this);\r\n }\r\n\r\n public override get isPickable(): boolean {\r\n return true;\r\n }\r\n\r\n public getThematicSensors(target: Target): ThematicSensors {\r\n assert(target.plan.thematic !== undefined, \"thematic display settings must exist\");\r\n assert(target.plan.thematic.displayMode === ThematicDisplayMode.InverseDistanceWeightedSensors, \"thematic display mode must be sensor-based\");\r\n assert(target.plan.thematic.sensorSettings.sensors.length > 0, \"must have at least one sensor to process\");\r\n\r\n return this.perTargetData.getThematicSensors(target);\r\n }\r\n\r\n public getOverrides(target: Target): FeatureOverrides {\r\n return this.perTargetData.getFeatureOverrides(target);\r\n }\r\n\r\n public onTargetDisposed(target: Target) {\r\n this.perTargetData.onTargetDisposed(target);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class Branch extends Graphic {\r\n public readonly branch: GraphicBranch;\r\n public localToWorldTransform: Transform;\r\n public readonly clips?: ClipVolume;\r\n public readonly planarClassifier?: PlanarClassifier;\r\n public readonly textureDrape?: TextureDrape;\r\n public readonly layerClassifiers?: Map<number, PlanarClassifier>;\r\n public readonly edgeSettings?: EdgeSettings;\r\n public readonly iModel?: IModelConnection; // used chiefly for readPixels to identify context of picked Ids.\r\n public readonly frustum?: GraphicBranchFrustum;\r\n public readonly appearanceProvider?: FeatureAppearanceProvider;\r\n public readonly secondaryClassifiers?: PlanarClassifier[];\r\n public readonly viewAttachmentId?: Id64String;\r\n\r\n public constructor(branch: GraphicBranch, localToWorld: Transform, viewFlags?: ViewFlags, opts?: GraphicBranchOptions) {\r\n super();\r\n this.branch = branch;\r\n this.localToWorldTransform = localToWorld;\r\n\r\n if (undefined !== viewFlags)\r\n branch.setViewFlags(viewFlags);\r\n\r\n if (!opts)\r\n return;\r\n\r\n this.appearanceProvider = opts.appearanceProvider;\r\n this.clips = opts.clipVolume as ClipVolume | undefined;\r\n this.iModel = opts.iModel;\r\n this.frustum = opts.frustum;\r\n this.viewAttachmentId = opts.viewAttachmentId;\r\n\r\n if (opts.hline)\r\n this.edgeSettings = EdgeSettings.create(opts.hline);\r\n\r\n if (opts.classifierOrDrape instanceof PlanarClassifier)\r\n this.planarClassifier = opts.classifierOrDrape;\r\n else if (opts.classifierOrDrape instanceof TextureDrape)\r\n this.textureDrape = opts.classifierOrDrape;\r\n\r\n if (opts.secondaryClassifiers) {\r\n this.secondaryClassifiers = new Array<PlanarClassifier>();\r\n opts.secondaryClassifiers.forEach((classifier) => {\r\n if (classifier instanceof PlanarClassifier)\r\n this.secondaryClassifiers?.push(classifier);\r\n });\r\n }\r\n }\r\n\r\n public get isDisposed(): boolean {\r\n return 0 === this.branch.entries.length;\r\n }\r\n\r\n public dispose() {\r\n this.branch.dispose();\r\n }\r\n\r\n public override get isPickable(): boolean {\r\n return this.branch.entries.some((gf) => (gf as Graphic).isPickable);\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this.branch.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n const thisRange = new Range3d();\r\n for (const graphic of this.branch.entries)\r\n graphic.unionRange(thisRange);\r\n\r\n this.localToWorldTransform.multiplyRange(thisRange, thisRange);\r\n range.extendRange(thisRange);\r\n }\r\n\r\n private shouldAddCommands(commands: RenderCommands): boolean {\r\n const group = commands.target.currentBranch.groupNodeId;\r\n if (undefined !== group && undefined !== this.branch.groupNodeId && this.branch.groupNodeId !== group)\r\n return false;\r\n\r\n const nodeId = commands.target.getAnimationTransformNodeId(this.branch.animationNodeId);\r\n return undefined === nodeId || nodeId === commands.target.currentAnimationTransformNodeId;\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n if (this.shouldAddCommands(commands))\r\n commands.addBranch(this);\r\n }\r\n\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass): void {\r\n if (this.shouldAddCommands(commands))\r\n commands.addHiliteBranch(this, pass);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class AnimationTransformBranch extends Graphic {\r\n public readonly nodeId: number;\r\n public readonly graphic: Graphic;\r\n\r\n public constructor(graphic: RenderGraphic, nodeId: number) {\r\n super();\r\n assert(graphic instanceof Graphic);\r\n this.graphic = graphic;\r\n this.nodeId = nodeId;\r\n }\r\n\r\n public override dispose() {\r\n this.graphic.dispose();\r\n }\r\n\r\n public override get isDisposed() {\r\n return this.graphic.isDisposed;\r\n }\r\n\r\n public override get isPickable() {\r\n return this.graphic.isPickable;\r\n }\r\n\r\n public override collectStatistics(stats: RenderMemory.Statistics) {\r\n this.graphic.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n this.graphic.unionRange(range);\r\n }\r\n\r\n public override addCommands(commands: RenderCommands) {\r\n commands.target.currentAnimationTransformNodeId = this.nodeId;\r\n this.graphic.addCommands(commands);\r\n commands.target.currentAnimationTransformNodeId = undefined;\r\n }\r\n\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass) {\r\n commands.target.currentAnimationTransformNodeId = this.nodeId;\r\n this.graphic.addHiliteCommands(commands, pass);\r\n commands.target.currentAnimationTransformNodeId = undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class WorldDecorations extends Branch {\r\n public constructor(viewFlags: ViewFlags) {\r\n super(new GraphicBranch(), Transform.identity, viewFlags);\r\n\r\n // World decorations ignore all the symbology overrides for the \"scene\" geometry...\r\n this.branch.symbologyOverrides = new FeatureSymbology.Overrides();\r\n // Make all subcategories visible.\r\n this.branch.symbologyOverrides.ignoreSubCategory = true;\r\n }\r\n\r\n public init(decs: GraphicList): void {\r\n this.branch.clear();\r\n for (const dec of decs) {\r\n this.branch.add(dec);\r\n }\r\n }\r\n}\r\n/** @internal */\r\nexport class GraphicsArray extends Graphic {\r\n // Note: We assume the graphics array we get contains undisposed graphics to start\r\n constructor(public graphics: RenderGraphic[]) { super(); }\r\n\r\n public get isDisposed(): boolean { return 0 === this.graphics.length; }\r\n\r\n public override get isPickable(): boolean {\r\n return this.graphics.some((x) => (x as Graphic).isPickable);\r\n }\r\n\r\n public dispose() {\r\n for (const graphic of this.graphics)\r\n dispose(graphic);\r\n this.graphics.length = 0;\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n for (const graphic of this.graphics) {\r\n (graphic as Graphic).addCommands(commands);\r\n }\r\n }\r\n\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass): void {\r\n for (const graphic of this.graphics) {\r\n (graphic as Graphic).addHiliteCommands(commands, pass);\r\n }\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n for (const graphic of this.graphics)\r\n graphic.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n for (const graphic of this.graphics)\r\n graphic.unionRange(range);\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"Graphic.js","sourceRoot":"","sources":["../../../../src/render/webgl/Graphic.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 WebGL\r\n */\r\n\r\nimport { assert, dispose, Id64String } from \"@itwin/core-bentley\";\r\nimport { ElementAlignedBox3d, FeatureAppearanceProvider, RenderFeatureTable, ThematicDisplayMode, ViewFlags } from \"@itwin/core-common\";\r\nimport { Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport { IModelConnection } from \"../../IModelConnection\";\r\nimport { FeatureSymbology } from \"../FeatureSymbology\";\r\nimport { GraphicBranch, GraphicBranchFrustum, GraphicBranchOptions } from \"../GraphicBranch\";\r\nimport { GraphicList, RenderGraphic } from \"../RenderGraphic\";\r\nimport { RenderMemory } from \"../RenderMemory\";\r\nimport { ClipVolume } from \"./ClipVolume\";\r\nimport { WebGLDisposable } from \"./Disposable\";\r\nimport { EdgeSettings } from \"./EdgeSettings\";\r\nimport { FeatureOverrides } from \"./FeatureOverrides\";\r\nimport { PlanarClassifier } from \"./PlanarClassifier\";\r\nimport { Primitive } from \"./Primitive\";\r\nimport { RenderCommands } from \"./RenderCommands\";\r\nimport { RenderPass } from \"./RenderFlags\";\r\nimport { Target } from \"./Target\";\r\nimport { TextureDrape } from \"./TextureDrape\";\r\nimport { ThematicSensors } from \"./ThematicSensors\";\r\nimport { BranchState } from \"./BranchState\";\r\nimport { BatchOptions } from \"../../common/render/BatchOptions\";\r\nimport { Contours } from \"./Contours\";\r\n\r\n/** @internal */\r\nexport abstract class Graphic extends RenderGraphic implements WebGLDisposable {\r\n public abstract addCommands(_commands: RenderCommands): void;\r\n public abstract get isDisposed(): boolean;\r\n public abstract get isPickable(): boolean;\r\n public addHiliteCommands(_commands: RenderCommands, _pass: RenderPass): void { assert(false); }\r\n public toPrimitive(): Primitive | undefined { return undefined; }\r\n}\r\n\r\nexport class GraphicOwner extends Graphic {\r\n private readonly _graphic: Graphic;\r\n\r\n public constructor(graphic: Graphic) {\r\n super();\r\n this._graphic = graphic;\r\n }\r\n\r\n public get graphic(): RenderGraphic { return this._graphic; }\r\n\r\n private _isDisposed = false;\r\n public get isDisposed(): boolean { return this._isDisposed; }\r\n public dispose(): void { this._isDisposed = true; }\r\n public disposeGraphic(): void {\r\n this.graphic.dispose();\r\n }\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this.graphic.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n this.graphic.unionRange(range);\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n this._graphic.addCommands(commands);\r\n }\r\n public override get isPickable(): boolean {\r\n return this._graphic.isPickable;\r\n }\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass): void {\r\n this._graphic.addHiliteCommands(commands, pass);\r\n }\r\n public override toPrimitive(): Primitive | undefined {\r\n return this._graphic.toPrimitive();\r\n }\r\n}\r\n\r\n/** Transiently assigned to a Batch while rendering a frame, reset afterward. Used to provide context for pick IDs.\r\n * @internal\r\n */\r\nexport interface BatchContext {\r\n batchId: number;\r\n iModel?: IModelConnection;\r\n transformFromIModel?: Transform;\r\n viewAttachmentId?: Id64String;\r\n inSectionDrawingAttachment?: boolean;\r\n}\r\n\r\n/** @internal exported strictly for tests. */\r\nexport class PerTargetBatchData {\r\n public readonly target: Target;\r\n protected readonly _featureOverrides = new Map<FeatureSymbology.Source | undefined, FeatureOverrides>();\r\n protected _contours?: Contours;\r\n protected _thematicSensors?: ThematicSensors;\r\n\r\n public constructor(target: Target) {\r\n this.target = target;\r\n }\r\n\r\n public dispose(): void {\r\n this._thematicSensors = dispose(this._thematicSensors);\r\n this._contours = this._contours?.dispose();\r\n for (const value of this._featureOverrides.values())\r\n dispose(value);\r\n\r\n this._featureOverrides.clear();\r\n }\r\n\r\n public getThematicSensors(batch: Batch): ThematicSensors {\r\n if (this._thematicSensors && !this._thematicSensors.matchesTarget(this.target))\r\n this._thematicSensors = dispose(this._thematicSensors);\r\n\r\n if (!this._thematicSensors)\r\n this._thematicSensors = ThematicSensors.create(this.target, batch.range);\r\n\r\n this._thematicSensors.update(this.target.uniforms.frustum.viewMatrix);\r\n return this._thematicSensors;\r\n }\r\n\r\n public getFeatureOverrides(batch: Batch): FeatureOverrides {\r\n const source = this.target.currentFeatureSymbologyOverrides?.source;\r\n let ovrs = this._featureOverrides.get(source);\r\n if (!ovrs) {\r\n const cleanup = source ? source.onSourceDisposed.addOnce(() => this.onSourceDisposed(source)) : undefined;\r\n this._featureOverrides.set(source, ovrs = FeatureOverrides.createFromTarget(this.target, batch.options, cleanup));\r\n ovrs.initFromMap(batch.featureTable);\r\n }\r\n\r\n ovrs.update(batch.featureTable);\r\n return ovrs;\r\n }\r\n\r\n public getContours(batch: Batch): Contours {\r\n if (this._contours && !this._contours.matchesTargetAndFeatureCount(this.target, batch.featureTable))\r\n this._contours = this._contours.dispose();\r\n\r\n if (!this._contours) {\r\n this._contours = Contours.createFromTarget(this.target, batch.options);\r\n this._contours.initFromMap(batch.featureTable);\r\n } else {\r\n this._contours.update(batch.featureTable);\r\n }\r\n return this._contours;\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n if (this._thematicSensors)\r\n stats.addThematicTexture(this._thematicSensors.bytesUsed);\r\n\r\n for (const ovrs of this._featureOverrides.values())\r\n stats.addFeatureOverrides(ovrs.byteLength);\r\n\r\n if (this._contours)\r\n stats.addContours(this._contours.byteLength);\r\n }\r\n\r\n /** Exposed strictly for tests. */\r\n public get featureOverrides() { return this._featureOverrides; }\r\n\r\n private onSourceDisposed(source: FeatureSymbology.Source): void {\r\n const ovrs = this._featureOverrides.get(source);\r\n if (ovrs) {\r\n this._featureOverrides.delete(source);\r\n ovrs.dispose();\r\n }\r\n }\r\n}\r\n\r\n/** @internal exported strictly for tests. */\r\nexport class PerTargetData {\r\n private readonly _batch: Batch;\r\n private readonly _data: PerTargetBatchData[] = [];\r\n\r\n public constructor(batch: Batch) {\r\n this._batch = batch;\r\n }\r\n\r\n public dispose(): void {\r\n for (const data of this._data) {\r\n data.target.onBatchDisposed(this._batch);\r\n data.dispose();\r\n }\r\n\r\n this._data.length = 0;\r\n }\r\n\r\n public get isDisposed(): boolean {\r\n return this._data.length === 0;\r\n }\r\n\r\n /** Exposed strictly for tests. */\r\n public get data(): PerTargetBatchData[] { return this._data; }\r\n\r\n public onTargetDisposed(target: Target): void {\r\n const index = this._data.findIndex((x) => x.target === target);\r\n if (-1 === index)\r\n return;\r\n\r\n const data = this._data[index];\r\n data.dispose();\r\n this._data.splice(index, 1);\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n for (const data of this._data)\r\n data.collectStatistics(stats);\r\n }\r\n\r\n public getThematicSensors(target: Target): ThematicSensors {\r\n return this.getBatchData(target).getThematicSensors(this._batch);\r\n }\r\n\r\n public getFeatureOverrides(target: Target): FeatureOverrides {\r\n return this.getBatchData(target).getFeatureOverrides(this._batch);\r\n }\r\n\r\n public getContours(target: Target): Contours {\r\n return this.getBatchData(target).getContours(this._batch);\r\n }\r\n\r\n private getBatchData(target: Target): PerTargetBatchData {\r\n let data = this._data.find((x) => x.target === target);\r\n if (!data) {\r\n this._data.push(data = new PerTargetBatchData(target));\r\n target.addBatch(this._batch);\r\n }\r\n\r\n return data;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class Batch extends Graphic {\r\n public readonly graphic: RenderGraphic;\r\n public readonly featureTable: RenderFeatureTable;\r\n public readonly range: ElementAlignedBox3d;\r\n private readonly _context: BatchContext = { batchId: 0 };\r\n /** Public strictly for tests. */\r\n public readonly perTargetData = new PerTargetData(this);\r\n public readonly options: BatchOptions;\r\n\r\n // Chiefly for debugging.\r\n public get tileId(): string | undefined {\r\n return this.options.tileId;\r\n }\r\n\r\n public get locateOnly(): boolean {\r\n return true === this.options.locateOnly;\r\n }\r\n\r\n /** The following are valid only during a draw and reset afterward. */\r\n public get batchId() { return this._context.batchId; }\r\n public get batchIModel() { return this._context.iModel; }\r\n public get transformFromBatchIModel() { return this._context.transformFromIModel; }\r\n public get viewAttachmentId() { return this._context.viewAttachmentId; }\r\n public get inSectionDrawingAttachment() { return this._context.inSectionDrawingAttachment; }\r\n\r\n public setContext(batchId: number, branch: BranchState) {\r\n this._context.batchId = batchId;\r\n this._context.iModel = branch.iModel;\r\n this._context.transformFromIModel = branch.transformFromIModel;\r\n this._context.viewAttachmentId = branch.viewAttachmentId;\r\n this._context.inSectionDrawingAttachment = branch.inSectionDrawingAttachment;\r\n }\r\n\r\n public resetContext() {\r\n this._context.batchId = 0;\r\n this._context.iModel = undefined;\r\n this._context.transformFromIModel = undefined;\r\n this._context.viewAttachmentId = undefined;\r\n this._context.inSectionDrawingAttachment = undefined;\r\n }\r\n\r\n public constructor(graphic: RenderGraphic, features: RenderFeatureTable, range: ElementAlignedBox3d, options?: BatchOptions) {\r\n super();\r\n this.graphic = graphic;\r\n this.featureTable = features;\r\n this.range = range;\r\n this.options = options ?? {};\r\n }\r\n\r\n private _isDisposed = false;\r\n public get isDisposed(): boolean {\r\n return this._isDisposed && this.perTargetData.isDisposed;\r\n }\r\n\r\n // Note: This does not remove FeatureOverrides from the array, but rather disposes of the WebGL resources they contain\r\n public dispose() {\r\n dispose(this.graphic);\r\n\r\n this.perTargetData.dispose();\r\n this._isDisposed = true;\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this.graphic.collectStatistics(stats);\r\n stats.addFeatureTable(this.featureTable.byteLength);\r\n this.perTargetData.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n range.extendRange(this.range);\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n commands.addBatch(this);\r\n }\r\n\r\n public override get isPickable(): boolean {\r\n return true;\r\n }\r\n\r\n public getThematicSensors(target: Target): ThematicSensors {\r\n assert(target.plan.thematic !== undefined, \"thematic display settings must exist\");\r\n assert(target.plan.thematic.displayMode === ThematicDisplayMode.InverseDistanceWeightedSensors, \"thematic display mode must be sensor-based\");\r\n assert(target.plan.thematic.sensorSettings.sensors.length > 0, \"must have at least one sensor to process\");\r\n\r\n return this.perTargetData.getThematicSensors(target);\r\n }\r\n\r\n public getOverrides(target: Target): FeatureOverrides {\r\n return this.perTargetData.getFeatureOverrides(target);\r\n }\r\n\r\n public getContours(target: Target): Contours {\r\n return this.perTargetData.getContours(target);\r\n }\r\n\r\n public onTargetDisposed(target: Target) {\r\n this.perTargetData.onTargetDisposed(target);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class Branch extends Graphic {\r\n public readonly branch: GraphicBranch;\r\n public localToWorldTransform: Transform;\r\n public readonly clips?: ClipVolume;\r\n public readonly planarClassifier?: PlanarClassifier;\r\n public readonly textureDrape?: TextureDrape;\r\n public readonly layerClassifiers?: Map<number, PlanarClassifier>;\r\n public readonly edgeSettings?: EdgeSettings;\r\n public readonly iModel?: IModelConnection; // used chiefly for readPixels to identify context of picked Ids.\r\n public readonly frustum?: GraphicBranchFrustum;\r\n public readonly appearanceProvider?: FeatureAppearanceProvider;\r\n public readonly secondaryClassifiers?: PlanarClassifier[];\r\n public readonly viewAttachmentId?: Id64String;\r\n public readonly inSectionDrawingAttachment?: boolean;\r\n public disableClipStyle?: true;\r\n public readonly transformFromExternalIModel?: Transform;\r\n\r\n public constructor(branch: GraphicBranch, localToWorld: Transform, viewFlags?: ViewFlags, opts?: GraphicBranchOptions) {\r\n super();\r\n this.branch = branch;\r\n this.localToWorldTransform = localToWorld;\r\n\r\n if (undefined !== viewFlags)\r\n branch.setViewFlags(viewFlags);\r\n\r\n if (!opts)\r\n return;\r\n\r\n this.appearanceProvider = opts.appearanceProvider;\r\n this.clips = opts.clipVolume as ClipVolume | undefined;\r\n this.iModel = opts.iModel;\r\n this.frustum = opts.frustum;\r\n this.viewAttachmentId = opts.viewAttachmentId;\r\n this.inSectionDrawingAttachment = opts.inSectionDrawingAttachment;\r\n this.disableClipStyle = opts.disableClipStyle;\r\n this.transformFromExternalIModel = opts.transformFromIModel;\r\n\r\n if (opts.hline)\r\n this.edgeSettings = EdgeSettings.create(opts.hline);\r\n\r\n if (opts.classifierOrDrape instanceof PlanarClassifier)\r\n this.planarClassifier = opts.classifierOrDrape;\r\n else if (opts.classifierOrDrape instanceof TextureDrape)\r\n this.textureDrape = opts.classifierOrDrape;\r\n\r\n if (opts.secondaryClassifiers) {\r\n this.secondaryClassifiers = new Array<PlanarClassifier>();\r\n opts.secondaryClassifiers.forEach((classifier) => {\r\n if (classifier instanceof PlanarClassifier)\r\n this.secondaryClassifiers?.push(classifier);\r\n });\r\n }\r\n }\r\n\r\n public get isDisposed(): boolean {\r\n return 0 === this.branch.entries.length;\r\n }\r\n\r\n public dispose() {\r\n this.branch.dispose();\r\n }\r\n\r\n public override get isPickable(): boolean {\r\n return this.branch.entries.some((gf) => (gf as Graphic).isPickable);\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this.branch.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n const thisRange = new Range3d();\r\n for (const graphic of this.branch.entries)\r\n graphic.unionRange(thisRange);\r\n\r\n this.localToWorldTransform.multiplyRange(thisRange, thisRange);\r\n range.extendRange(thisRange);\r\n }\r\n\r\n private shouldAddCommands(commands: RenderCommands): boolean {\r\n const group = commands.target.currentBranch.groupNodeId;\r\n if (undefined !== group && undefined !== this.branch.groupNodeId && this.branch.groupNodeId !== group)\r\n return false;\r\n\r\n const nodeId = commands.target.getAnimationTransformNodeId(this.branch.animationNodeId);\r\n return undefined === nodeId || nodeId === commands.target.currentAnimationTransformNodeId;\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n if (this.shouldAddCommands(commands))\r\n commands.addBranch(this);\r\n }\r\n\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass): void {\r\n if (this.shouldAddCommands(commands))\r\n commands.addHiliteBranch(this, pass);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class AnimationTransformBranch extends Graphic {\r\n public readonly nodeId: number;\r\n public readonly graphic: Graphic;\r\n\r\n public constructor(graphic: RenderGraphic, nodeId: number) {\r\n super();\r\n assert(graphic instanceof Graphic);\r\n this.graphic = graphic;\r\n this.nodeId = nodeId;\r\n }\r\n\r\n public override dispose() {\r\n this.graphic.dispose();\r\n }\r\n\r\n public override get isDisposed() {\r\n return this.graphic.isDisposed;\r\n }\r\n\r\n public override get isPickable() {\r\n return this.graphic.isPickable;\r\n }\r\n\r\n public override collectStatistics(stats: RenderMemory.Statistics) {\r\n this.graphic.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n this.graphic.unionRange(range);\r\n }\r\n\r\n public override addCommands(commands: RenderCommands) {\r\n commands.target.currentAnimationTransformNodeId = this.nodeId;\r\n this.graphic.addCommands(commands);\r\n commands.target.currentAnimationTransformNodeId = undefined;\r\n }\r\n\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass) {\r\n commands.target.currentAnimationTransformNodeId = this.nodeId;\r\n this.graphic.addHiliteCommands(commands, pass);\r\n commands.target.currentAnimationTransformNodeId = undefined;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class WorldDecorations extends Branch {\r\n public constructor(viewFlags: ViewFlags) {\r\n super(new GraphicBranch(), Transform.identity, viewFlags);\r\n\r\n // World decorations ignore all the symbology overrides for the \"scene\" geometry...\r\n this.branch.symbologyOverrides = new FeatureSymbology.Overrides();\r\n // Make all subcategories visible.\r\n this.branch.symbologyOverrides.ignoreSubCategory = true;\r\n }\r\n\r\n public init(decs: GraphicList): void {\r\n this.branch.clear();\r\n for (const dec of decs) {\r\n this.branch.add(dec);\r\n }\r\n }\r\n}\r\n/** @internal */\r\nexport class GraphicsArray extends Graphic {\r\n // Note: We assume the graphics array we get contains undisposed graphics to start\r\n constructor(public graphics: RenderGraphic[]) { super(); }\r\n\r\n public get isDisposed(): boolean { return 0 === this.graphics.length; }\r\n\r\n public override get isPickable(): boolean {\r\n return this.graphics.some((x) => (x as Graphic).isPickable);\r\n }\r\n\r\n public dispose() {\r\n for (const graphic of this.graphics)\r\n dispose(graphic);\r\n this.graphics.length = 0;\r\n }\r\n\r\n public addCommands(commands: RenderCommands): void {\r\n for (const graphic of this.graphics) {\r\n (graphic as Graphic).addCommands(commands);\r\n }\r\n }\r\n\r\n public override addHiliteCommands(commands: RenderCommands, pass: RenderPass): void {\r\n for (const graphic of this.graphics) {\r\n (graphic as Graphic).addHiliteCommands(commands, pass);\r\n }\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n for (const graphic of this.graphics)\r\n graphic.collectStatistics(stats);\r\n }\r\n\r\n public override unionRange(range: Range3d) {\r\n for (const graphic of this.graphics)\r\n graphic.unionRange(range);\r\n }\r\n}\r\n"]}
|
|
@@ -39,7 +39,7 @@ export class Material extends RenderMaterial {
|
|
|
39
39
|
get overridesRgb() { return this.rgba[0] >= 0; }
|
|
40
40
|
get overridesAlpha() { return this.rgba[3] >= 0; }
|
|
41
41
|
get hasTranslucency() { return this.overridesAlpha && this.rgba[3] < 1; }
|
|
42
|
-
// eslint-disable-next-line
|
|
42
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
43
43
|
constructor(params) {
|
|
44
44
|
super(params);
|
|
45
45
|
// Used for type-switching vs MaterialAtlas
|
|
@@ -76,7 +76,7 @@ export class Material extends RenderMaterial {
|
|
|
76
76
|
this.fragUniforms[index] = loByte + hiByte * 256;
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
// eslint-disable-next-line
|
|
79
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
80
80
|
Material.default = new Material(RenderMaterial.Params.defaults);
|
|
81
81
|
/** Strictly for testing. */
|
|
82
82
|
Material.preserveParams = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Material.js","sourceRoot":"","sources":["../../../../src/render/webgl/Material.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,OAAO,QAAS,SAAQ,cAAc;IAS1C,IAAW,YAAY,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,IAAW,cAAc,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,IAAW,eAAe,KAAK,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAQhF,
|
|
1
|
+
{"version":3,"file":"Material.js","sourceRoot":"","sources":["../../../../src/render/webgl/Material.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 WebGL\r\n */\r\n\r\nimport { ColorDef, RenderMaterial } from \"@itwin/core-common\";\r\nimport { FloatRgb } from \"./FloatRGBA\";\r\nimport { SurfaceMaterial, SurfaceMaterialAtlas } from \"../../common/internal/render/SurfaceParams\";\r\n\r\n/** Parameters describing a single material. The parameters used are:\r\n * - diffuse color rgb (vec3).\r\n * - alpha (float in [0..1])\r\n * - is rgb overridden (bool)\r\n * - is alpha overridden (bool)\r\n * - specular exponent (float).\r\n * - specular color (vec3).\r\n * - specular weight (float in [0..1])\r\n * - diffuse weight (float in [0..1])\r\n * - texture weight (float in [0..1])\r\n *\r\n * The rgb and alpha are applied in the vertex shader. Either can be negative, indicating the material does not override it.\r\n *\r\n * The rest are passed as a varying vec4 to be applied in the fragment shader.\r\n * All but the specular exponent are compressed such that floats in [0..1] become integers in [0..255] and concatenated bitwise in pairs into 16-bit integer values.\r\n *\r\n * The result is:\r\n * x: diffuse and specular weights\r\n * y: texture weight and specular red\r\n * z: specular green and blue\r\n * w: specular exponent\r\n *\r\n * This packing is motivated by the limited max number of varying vectors guaranteed by WebGL.\r\n * A varying is used because:\r\n * 1. Material atlases require looking up the material associated with a particular vertex; and\r\n * 2. The vertex material may be replaced with a default material based on other criteria such as view flags and feature symbology overrides.\r\n * @internal\r\n */\r\nexport class Material extends RenderMaterial {\r\n // eslint-disable-next-line @typescript-eslint/no-deprecated\r\n public static readonly default: Material = new Material(RenderMaterial.Params.defaults);\r\n\r\n // Used for type-switching vs MaterialAtlas\r\n public readonly isAtlas = false as const;\r\n public readonly fragUniforms = new Float32Array(4);\r\n public readonly rgba = new Float32Array(4);\r\n\r\n public get overridesRgb() { return this.rgba[0] >= 0; }\r\n public get overridesAlpha() { return this.rgba[3] >= 0; }\r\n public get hasTranslucency() { return this.overridesAlpha && this.rgba[3] < 1; }\r\n\r\n /** Strictly for testing. */\r\n public static preserveParams = false;\r\n /** Strictly for testing. */\r\n // eslint-disable-next-line @typescript-eslint/no-deprecated\r\n public params?: RenderMaterial.Params;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-deprecated\r\n public constructor(params: RenderMaterial.Params) {\r\n super(params);\r\n\r\n if (Material.preserveParams) {\r\n this.params = params;\r\n }\r\n\r\n if (undefined !== params.diffuseColor) {\r\n const rgb = FloatRgb.fromColorDef(params.diffuseColor);\r\n this.rgba[0] = rgb.red;\r\n this.rgba[1] = rgb.green;\r\n this.rgba[2] = rgb.blue;\r\n } else {\r\n this.rgba[0] = this.rgba[1] = this.rgba[2] = -1;\r\n }\r\n\r\n const alpha = undefined !== params.alpha ? params.alpha : -1;\r\n this.rgba[3] = alpha;\r\n\r\n const scale = (value: number) => Math.floor(value * 255 + 0.5);\r\n this.setInteger(scale(params.diffuse), scale(params.specular), 0);\r\n\r\n const textureWeight = undefined !== this.textureMapping ? this.textureMapping.params.weight : 1.0;\r\n const specularRgb = undefined !== params.specularColor ? params.specularColor : ColorDef.white;\r\n const specularColors = specularRgb.colors;\r\n this.setInteger(scale(textureWeight), specularColors.r, 1);\r\n this.setInteger(specularColors.g, specularColors.b, 2);\r\n\r\n this.fragUniforms[3] = params.specularExponent;\r\n }\r\n\r\n private setInteger(loByte: number, hiByte: number, index: number): void {\r\n const clamp = (x: number) => Math.floor(Math.min(255, (Math.max(x, 0))));\r\n\r\n loByte = clamp(loByte);\r\n hiByte = clamp(hiByte);\r\n\r\n this.fragUniforms[index] = loByte + hiByte * 256;\r\n }\r\n}\r\n\r\nObject.freeze(Material.default);\r\n\r\n/** Describes the material associated with a surface.\r\n * @internal\r\n */\r\nexport type MaterialInfo = Material | SurfaceMaterialAtlas;\r\n\r\n/** @internal */\r\nexport function createMaterialInfo(source: SurfaceMaterial | undefined): MaterialInfo | undefined {\r\n if (undefined === source)\r\n return undefined;\r\n else if (source.isAtlas)\r\n return source;\r\n else\r\n return source.material as Material;\r\n}\r\n"]}
|
|
@@ -321,7 +321,7 @@ export class RealityMeshGeometry extends IndexedGeometry {
|
|
|
321
321
|
const primitive = Primitive.create(mesh);
|
|
322
322
|
branch.add(system.createBatch(primitive, featureTable, mesh.getRange(), { tileId }));
|
|
323
323
|
}
|
|
324
|
-
return system.createBranch(branch, realityMesh._transform ? realityMesh._transform : Transform.createIdentity());
|
|
324
|
+
return system.createBranch(branch, realityMesh._transform ? realityMesh._transform : Transform.createIdentity(), { disableClipStyle: params.disableClipStyle });
|
|
325
325
|
}
|
|
326
326
|
collectStatistics(stats) {
|
|
327
327
|
this._isTerrain ? stats.addTerrain(this._realityMeshParams.bytesUsed) : stats.addRealityMesh(this._realityMeshParams.bytesUsed);
|