@itwin/core-frontend 5.1.1 → 5.1.3-experimental.1
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 +13 -1
- package/lib/cjs/AccuDraw.js.map +1 -1
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
- package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -1
- package/lib/cjs/AuxCoordSys.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BingLocation.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/BriefcaseTxns.js.map +1 -1
- package/lib/cjs/CatalogConnection.js.map +1 -1
- package/lib/cjs/CategorySelectorState.js.map +1 -1
- package/lib/cjs/ChangeFlags.js.map +1 -1
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/ContextRealityModelState.js.map +1 -1
- package/lib/cjs/CoordSystem.js.map +1 -1
- package/lib/cjs/DecorationsCache.js.map +1 -1
- package/lib/cjs/DevTools.js.map +1 -1
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/EmphasizeElements.js.map +1 -1
- package/lib/cjs/EntityState.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/FeatureOverrideProvider.js.map +1 -1
- package/lib/cjs/FlashSettings.js.map +1 -1
- package/lib/cjs/FrontendHubAccess.js.map +1 -1
- package/lib/cjs/Frustum2d.js.map +1 -1
- package/lib/cjs/FrustumAnimator.js.map +1 -1
- package/lib/cjs/FuzzySearch.js.map +1 -1
- package/lib/cjs/GeoServices.js.map +1 -1
- package/lib/cjs/GlobeAnimator.js.map +1 -1
- package/lib/cjs/GraphicalEditingScope.js.map +1 -1
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IModelRoutingContext.js.map +1 -1
- package/lib/cjs/IModeljs-css.js.map +1 -1
- package/lib/cjs/IpcApp.js.map +1 -1
- package/lib/cjs/LinePlaneIntersect.js.map +1 -1
- package/lib/cjs/LocalhostIpcApp.js.map +1 -1
- package/lib/cjs/MarginPercent.js.map +1 -1
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/ModelSelectorState.js.map +1 -1
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NativeAppLogger.js.map +1 -1
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/NotificationManager.js.map +1 -1
- package/lib/cjs/PerModelCategoryVisibility.js.map +1 -1
- package/lib/cjs/PlanarClipMaskState.js.map +1 -1
- package/lib/cjs/RealityDataSource.js.map +1 -1
- package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -1
- package/lib/cjs/SelectionSet.js.map +1 -1
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialClassifiersState.js.map +1 -1
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/Sprites.js.map +1 -1
- package/lib/cjs/StandardView.js.map +1 -1
- package/lib/cjs/SubCategoriesCache.js.map +1 -1
- package/lib/cjs/TentativePoint.js.map +1 -1
- package/lib/cjs/Tiles.js.map +1 -1
- package/lib/cjs/TxnEntityChanges.js.map +1 -1
- package/lib/cjs/UserPreferences.js.map +1 -1
- package/lib/cjs/ViewAnimation.js.map +1 -1
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator2d.js.map +1 -1
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewGlobalLocation.js.map +1 -1
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/ViewPose.js.map +1 -1
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewStatus.js.map +1 -1
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/ViewportSync.js.map +1 -1
- package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -1
- package/lib/cjs/common/ImageUtil.js.map +1 -1
- package/lib/cjs/common/ViewRect.js.map +1 -1
- package/lib/cjs/common/WorkerProxy.js.map +1 -1
- package/lib/cjs/common/gltf/GltfModel.js.map +1 -1
- package/lib/cjs/common/gltf/GltfParser.js.map +1 -1
- package/lib/cjs/common/gltf/GltfSchema.js.map +1 -1
- package/lib/cjs/common/imdl/CompactEdges.js.map +1 -1
- package/lib/cjs/common/imdl/ImdlModel.js.map +1 -1
- package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -1
- package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -1
- package/lib/cjs/common/internal/Symbols.js.map +1 -1
- package/lib/cjs/common/internal/render/AnimationNodeId.js.map +1 -1
- package/lib/cjs/common/internal/render/AuxChannelTable.js.map +1 -1
- package/lib/cjs/common/internal/render/ColorMap.js.map +1 -1
- package/lib/cjs/common/internal/render/DisplayParams.js.map +1 -1
- package/lib/cjs/common/internal/render/EdgeParams.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryList.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryPrimitives.js.map +1 -1
- package/lib/cjs/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
- package/lib/cjs/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
- package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
- 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/MeshParams.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshPrimitive.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshPrimitives.js.map +1 -1
- package/lib/cjs/common/internal/render/OvrFlags.js.map +1 -1
- package/lib/cjs/common/internal/render/PointCloudPrimitive.js.map +1 -1
- package/lib/cjs/common/internal/render/PointStringParams.js.map +1 -1
- package/lib/cjs/common/internal/render/Polyface.js.map +1 -1
- package/lib/cjs/common/internal/render/PolylineParams.js.map +1 -1
- package/lib/cjs/common/internal/render/Primitives.js.map +1 -1
- package/lib/cjs/common/internal/render/Strokes.js.map +1 -1
- package/lib/cjs/common/internal/render/SurfaceParams.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexIndices.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexKey.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTable.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableSplitter.js.map +1 -1
- package/lib/cjs/common/render/BatchOptions.js.map +1 -1
- package/lib/cjs/common/render/GraphicAssembler.js.map +1 -1
- package/lib/cjs/common/render/GraphicDescriptionBuilder.js.map +1 -1
- package/lib/cjs/common/render/GraphicDescriptionContext.js.map +1 -1
- package/lib/cjs/common/render/GraphicPrimitive.js.map +1 -1
- package/lib/cjs/common/render/GraphicType.js.map +1 -1
- package/lib/cjs/common/render/InstancedGraphicParams.js.map +1 -1
- package/lib/cjs/common/render/MaterialParams.js.map +1 -1
- package/lib/cjs/common/render/RenderInstancesParams.js.map +1 -1
- package/lib/cjs/common/render/TextureParams.js.map +1 -1
- package/lib/cjs/common.js.map +1 -1
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/extension/Extension.js.map +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
- package/lib/cjs/extension/ExtensionHost.js.map +1 -1
- package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
- package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/cjs/extension/providers/LocalExtensionProvider.js.map +1 -1
- package/lib/cjs/extension/providers/RemoteExtensionProvider.js.map +1 -1
- package/lib/cjs/internal/GoogleMapsDecorator.js.map +1 -1
- package/lib/cjs/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
- package/lib/cjs/internal/ScriptUtils.js.map +1 -1
- package/lib/cjs/internal/cross-package.js.map +1 -1
- package/lib/cjs/internal/render/AnimationBranchState.js.map +1 -1
- package/lib/cjs/internal/render/FrameStatsCollector.js.map +1 -1
- package/lib/cjs/internal/render/GraphicBranchFrustum.js.map +1 -1
- package/lib/cjs/internal/render/GraphicTemplateImpl.js.map +1 -1
- package/lib/cjs/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
- package/lib/cjs/internal/render/MockRender.js.map +1 -1
- package/lib/cjs/internal/render/PrimitiveBuilder.js.map +1 -1
- package/lib/cjs/internal/render/QueryVisibileFeatures.js.map +1 -1
- package/lib/cjs/internal/render/RenderAreaPattern.js.map +1 -1
- package/lib/cjs/internal/render/RenderGeometry.js.map +1 -1
- package/lib/cjs/internal/render/RenderInstancesParamsImpl.js.map +1 -1
- package/lib/cjs/internal/render/RenderMaterialSource.js.map +1 -1
- package/lib/cjs/internal/render/RenderPlan.js.map +1 -1
- package/lib/cjs/internal/render/RenderPlanarClassifier.js.map +1 -1
- package/lib/cjs/internal/render/RenderSkyBoxParams.js.map +1 -1
- package/lib/cjs/internal/render/RenderSystemDebugControl.js.map +1 -1
- package/lib/cjs/internal/render/RenderTargetDebugControl.js.map +1 -1
- package/lib/cjs/internal/render/RenderTerrain.js.map +1 -1
- package/lib/cjs/internal/render/RenderTextureDrape.js.map +1 -1
- package/lib/cjs/internal/render/SceneVolumeClassifier.js.map +1 -1
- package/lib/cjs/internal/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeMap.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js +1 -1
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BatchState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchStack.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClipStack.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClipVolume.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClippingProgram.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ColorInfo.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ContourUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Contours.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Diagnostics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Disposable.js.map +1 -1
- package/lib/cjs/internal/render/webgl/DrawCommand.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EDL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EdgeSettings.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/GL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/GLTimer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/internal/render/webgl/HiliteUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
- package/lib/cjs/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Layer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/LayerCommands.js.map +1 -1
- package/lib/cjs/internal/render/webgl/LightingUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/LineCode.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MapLayerParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Material.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Matrix.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Mesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MeshData.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MeshGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PerformanceMetrics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarClassifier.js +1 -1
- package/lib/cjs/internal/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PointCloud.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PointString.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Polyline.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Primitive.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RealityModelUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderFlags.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShadowUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/cjs/internal/render/webgl/StyleUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Sync.js.map +1 -1
- package/lib/cjs/internal/render/webgl/System.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Target.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TargetGraphics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TargetUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Technique.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TechniqueId.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TextureDrape.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ThematicSensors.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ThematicUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/UniformHandle.js.map +1 -1
- package/lib/cjs/internal/render/webgl/VertexLUT.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ViewRectUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Blur.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Clipping.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Color.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Common.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Contours.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Decode.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/EDL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Instancing.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Monochrome.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/SkySphere.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Thematic.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Translucency.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Viewport.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
- package/lib/cjs/internal/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/internal/tile/BatchedTileIdMap.js.map +1 -1
- package/lib/cjs/internal/tile/CesiumAssetProvider.js.map +1 -1
- package/lib/cjs/internal/tile/ClassifierTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/ContextShareProvider.js.map +1 -1
- package/lib/cjs/internal/tile/DynamicIModelTile.js +1 -0
- package/lib/cjs/internal/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/internal/tile/FetchCloudStorage.js.map +1 -1
- package/lib/cjs/internal/tile/GraphicsCollector.js.map +1 -1
- package/lib/cjs/internal/tile/I3dmReader.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTile.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTileRequestChannels.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/ImdlDecoder.js.map +1 -1
- package/lib/cjs/internal/tile/ImdlGraphicsCreator.js.map +1 -1
- package/lib/cjs/internal/tile/ImdlParser.js.map +1 -1
- package/lib/cjs/internal/tile/LRUTileList.js.map +1 -1
- package/lib/cjs/internal/tile/LayerTileTreeHandler.js.map +1 -1
- package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
- package/lib/cjs/internal/tile/MeshoptCompression.js.map +1 -1
- package/lib/cjs/internal/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/cjs/internal/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/PntsReader.js.map +1 -1
- package/lib/cjs/internal/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/RealityTileDrawArgs.js.map +1 -1
- package/lib/cjs/internal/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/cjs/internal/tile/TileUserSet.js.map +1 -1
- package/lib/cjs/internal/tile/ViewFlagOverrides.js.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/MapTileAvailability.js.map +1 -1
- package/lib/cjs/internal/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/internal/tile/map/UrlUtils.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmsUtilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/cjs/internal/webgl.js.map +1 -1
- package/lib/cjs/properties/AngleDescription.js.map +1 -1
- package/lib/cjs/properties/FormattedQuantityDescription.js.map +1 -1
- package/lib/cjs/properties/LengthDescription.js.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
- package/lib/cjs/quantity-formatting/UnitsData.js.map +1 -1
- package/lib/cjs/render/CanvasDecoration.js.map +1 -1
- package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -1
- package/lib/cjs/render/CreateTextureArgs.js.map +1 -1
- package/lib/cjs/render/Decorations.js.map +1 -1
- package/lib/cjs/render/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/FrameStats.js.map +1 -1
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/GraphicBuilder.js.map +1 -1
- package/lib/cjs/render/GraphicTemplate.js.map +1 -1
- package/lib/cjs/render/MeshArgs.js.map +1 -1
- package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/cjs/render/Pixel.js.map +1 -1
- package/lib/cjs/render/PolylineArgs.js.map +1 -1
- package/lib/cjs/render/RealityMeshParams.js.map +1 -1
- package/lib/cjs/render/RenderClipVolume.js.map +1 -1
- package/lib/cjs/render/RenderGraphic.js.map +1 -1
- package/lib/cjs/render/RenderMemory.js.map +1 -1
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/Scene.js.map +1 -1
- package/lib/cjs/render/ScreenSpaceEffectBuilder.js.map +1 -1
- package/lib/cjs/render/VisibleFeature.js.map +1 -1
- package/lib/cjs/request/Request.js.map +1 -1
- package/lib/cjs/request/utils.js.map +1 -1
- package/lib/cjs/tile/DisclosedTileTreeSet.js.map +1 -1
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/RealityTile.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.js.map +1 -1
- package/lib/cjs/tile/RenderGraphicTileTree.js.map +1 -1
- package/lib/cjs/tile/Tile.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileContent.js.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
- package/lib/cjs/tile/TileGeometryCollector.js.map +1 -1
- package/lib/cjs/tile/TileParams.js.map +1 -1
- package/lib/cjs/tile/TileRequest.js.map +1 -1
- package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
- package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
- package/lib/cjs/tile/TileStorage.js.map +1 -1
- package/lib/cjs/tile/TileTree.js.map +1 -1
- package/lib/cjs/tile/TileTreeOwner.js.map +1 -1
- package/lib/cjs/tile/TileTreeParams.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/TileTreeSupplier.js.map +1 -1
- package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
- package/lib/cjs/tile/TileUser.js.map +1 -1
- package/lib/cjs/tile/TiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/internal.js.map +1 -1
- package/lib/cjs/tile/map/BingElevation.js.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/QuadId.js.map +1 -1
- package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/cjs/tile/map/TerrainProvider.js.map +1 -1
- package/lib/cjs/tools/AccuDrawTool.js.map +1 -1
- package/lib/cjs/tools/AccuDrawViewportUI.js.map +1 -1
- package/lib/cjs/tools/ClipViewTool.js.map +1 -1
- package/lib/cjs/tools/EditManipulator.js.map +1 -1
- package/lib/cjs/tools/ElementSetTool.js.map +1 -1
- package/lib/cjs/tools/EventController.js.map +1 -1
- package/lib/cjs/tools/IdleTool.js.map +1 -1
- package/lib/cjs/tools/MeasureTool.js.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
- package/lib/cjs/tools/SelectTool.js.map +1 -1
- package/lib/cjs/tools/Tool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ToolAssistance.js.map +1 -1
- package/lib/cjs/tools/ToolSettings.js.map +1 -1
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -1
- package/lib/cjs/workers/RegisterWorker.js.map +1 -1
- package/lib/esm/AccuDraw.js.map +1 -1
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
- package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -1
- package/lib/esm/AuxCoordSys.js.map +1 -1
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BingLocation.js.map +1 -1
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/BriefcaseTxns.js.map +1 -1
- package/lib/esm/CatalogConnection.js.map +1 -1
- package/lib/esm/CategorySelectorState.js.map +1 -1
- package/lib/esm/ChangeFlags.js.map +1 -1
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/ContextRealityModelState.js.map +1 -1
- package/lib/esm/CoordSystem.js.map +1 -1
- package/lib/esm/DecorationsCache.js.map +1 -1
- package/lib/esm/DevTools.js.map +1 -1
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/EmphasizeElements.js.map +1 -1
- package/lib/esm/EntityState.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/FeatureOverrideProvider.js.map +1 -1
- package/lib/esm/FlashSettings.js.map +1 -1
- package/lib/esm/FrontendHubAccess.js.map +1 -1
- package/lib/esm/Frustum2d.js.map +1 -1
- package/lib/esm/FrustumAnimator.js.map +1 -1
- package/lib/esm/FuzzySearch.js.map +1 -1
- package/lib/esm/GeoServices.js.map +1 -1
- package/lib/esm/GlobeAnimator.js.map +1 -1
- package/lib/esm/GraphicalEditingScope.js.map +1 -1
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IModelRoutingContext.js.map +1 -1
- package/lib/esm/IModeljs-css.js.map +1 -1
- package/lib/esm/IpcApp.js.map +1 -1
- package/lib/esm/LinePlaneIntersect.js.map +1 -1
- package/lib/esm/LocalhostIpcApp.js.map +1 -1
- package/lib/esm/MarginPercent.js.map +1 -1
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/ModelSelectorState.js.map +1 -1
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NativeAppLogger.js.map +1 -1
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/NotificationManager.js.map +1 -1
- package/lib/esm/PerModelCategoryVisibility.js.map +1 -1
- package/lib/esm/PlanarClipMaskState.js.map +1 -1
- package/lib/esm/RealityDataSource.js.map +1 -1
- package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -1
- package/lib/esm/SelectionSet.js.map +1 -1
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialClassifiersState.js.map +1 -1
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/Sprites.js.map +1 -1
- package/lib/esm/StandardView.js.map +1 -1
- package/lib/esm/SubCategoriesCache.js.map +1 -1
- package/lib/esm/TentativePoint.js.map +1 -1
- package/lib/esm/Tiles.js.map +1 -1
- package/lib/esm/TxnEntityChanges.js.map +1 -1
- package/lib/esm/UserPreferences.js.map +1 -1
- package/lib/esm/ViewAnimation.js.map +1 -1
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator2d.js.map +1 -1
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewGlobalLocation.js.map +1 -1
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/ViewPose.js.map +1 -1
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewStatus.js.map +1 -1
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/ViewportSync.js.map +1 -1
- package/lib/esm/common/FrontendLoggerCategory.js.map +1 -1
- package/lib/esm/common/ImageUtil.js.map +1 -1
- package/lib/esm/common/ViewRect.js.map +1 -1
- package/lib/esm/common/WorkerProxy.js.map +1 -1
- package/lib/esm/common/gltf/GltfModel.js.map +1 -1
- package/lib/esm/common/gltf/GltfParser.js.map +1 -1
- package/lib/esm/common/gltf/GltfSchema.js.map +1 -1
- package/lib/esm/common/imdl/CompactEdges.js.map +1 -1
- package/lib/esm/common/imdl/ImdlModel.js.map +1 -1
- package/lib/esm/common/imdl/ImdlSchema.js.map +1 -1
- package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -1
- package/lib/esm/common/internal/Symbols.js.map +1 -1
- package/lib/esm/common/internal/render/AnimationNodeId.js.map +1 -1
- package/lib/esm/common/internal/render/AuxChannelTable.js.map +1 -1
- package/lib/esm/common/internal/render/ColorMap.js.map +1 -1
- package/lib/esm/common/internal/render/DisplayParams.js.map +1 -1
- package/lib/esm/common/internal/render/EdgeParams.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryAccumulator.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryList.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryPrimitives.js.map +1 -1
- package/lib/esm/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
- package/lib/esm/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
- package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/LineCode.js.map +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/MeshParams.js.map +1 -1
- package/lib/esm/common/internal/render/MeshPrimitive.js.map +1 -1
- package/lib/esm/common/internal/render/MeshPrimitives.js.map +1 -1
- package/lib/esm/common/internal/render/OvrFlags.js.map +1 -1
- package/lib/esm/common/internal/render/PointCloudPrimitive.js.map +1 -1
- package/lib/esm/common/internal/render/PointStringParams.js.map +1 -1
- package/lib/esm/common/internal/render/Polyface.js.map +1 -1
- package/lib/esm/common/internal/render/PolylineParams.js.map +1 -1
- package/lib/esm/common/internal/render/Primitives.js.map +1 -1
- package/lib/esm/common/internal/render/Strokes.js.map +1 -1
- package/lib/esm/common/internal/render/SurfaceParams.js.map +1 -1
- package/lib/esm/common/internal/render/VertexIndices.js.map +1 -1
- package/lib/esm/common/internal/render/VertexKey.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTable.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTableSplitter.js.map +1 -1
- package/lib/esm/common/render/BatchOptions.js.map +1 -1
- package/lib/esm/common/render/GraphicAssembler.js.map +1 -1
- package/lib/esm/common/render/GraphicDescriptionBuilder.js.map +1 -1
- package/lib/esm/common/render/GraphicDescriptionContext.js.map +1 -1
- package/lib/esm/common/render/GraphicPrimitive.js.map +1 -1
- package/lib/esm/common/render/GraphicType.js.map +1 -1
- package/lib/esm/common/render/InstancedGraphicParams.js.map +1 -1
- package/lib/esm/common/render/MaterialParams.js.map +1 -1
- package/lib/esm/common/render/RenderInstancesParams.js.map +1 -1
- package/lib/esm/common/render/TextureParams.js.map +1 -1
- package/lib/esm/common.js.map +1 -1
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/extension/Extension.js.map +1 -1
- package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
- package/lib/esm/extension/ExtensionHost.js.map +1 -1
- package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
- package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/esm/extension/providers/LocalExtensionProvider.js.map +1 -1
- package/lib/esm/extension/providers/RemoteExtensionProvider.js.map +1 -1
- package/lib/esm/internal/GoogleMapsDecorator.js.map +1 -1
- package/lib/esm/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
- package/lib/esm/internal/ScriptUtils.js.map +1 -1
- package/lib/esm/internal/cross-package.js.map +1 -1
- package/lib/esm/internal/render/AnimationBranchState.js.map +1 -1
- package/lib/esm/internal/render/FrameStatsCollector.js.map +1 -1
- package/lib/esm/internal/render/GraphicBranchFrustum.js.map +1 -1
- package/lib/esm/internal/render/GraphicTemplateImpl.js.map +1 -1
- package/lib/esm/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
- package/lib/esm/internal/render/MockRender.js.map +1 -1
- package/lib/esm/internal/render/PrimitiveBuilder.js.map +1 -1
- package/lib/esm/internal/render/QueryVisibileFeatures.js.map +1 -1
- package/lib/esm/internal/render/RenderAreaPattern.js.map +1 -1
- package/lib/esm/internal/render/RenderGeometry.js.map +1 -1
- package/lib/esm/internal/render/RenderInstancesParamsImpl.js.map +1 -1
- package/lib/esm/internal/render/RenderMaterialSource.js.map +1 -1
- package/lib/esm/internal/render/RenderPlan.js.map +1 -1
- package/lib/esm/internal/render/RenderPlanarClassifier.js.map +1 -1
- package/lib/esm/internal/render/RenderSkyBoxParams.js.map +1 -1
- package/lib/esm/internal/render/RenderSystemDebugControl.js.map +1 -1
- package/lib/esm/internal/render/RenderTargetDebugControl.js.map +1 -1
- package/lib/esm/internal/render/RenderTerrain.js.map +1 -1
- package/lib/esm/internal/render/RenderTextureDrape.js.map +1 -1
- package/lib/esm/internal/render/SceneVolumeClassifier.js.map +1 -1
- package/lib/esm/internal/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeMap.js.map +1 -1
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.js +1 -1
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/esm/internal/render/webgl/BatchState.js.map +1 -1
- package/lib/esm/internal/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchStack.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClipStack.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClipVolume.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClippingProgram.js.map +1 -1
- package/lib/esm/internal/render/webgl/ColorInfo.js.map +1 -1
- package/lib/esm/internal/render/webgl/ContourUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/Contours.js.map +1 -1
- package/lib/esm/internal/render/webgl/Diagnostics.js.map +1 -1
- package/lib/esm/internal/render/webgl/Disposable.js.map +1 -1
- package/lib/esm/internal/render/webgl/DrawCommand.js.map +1 -1
- package/lib/esm/internal/render/webgl/EDL.js.map +1 -1
- package/lib/esm/internal/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/EdgeSettings.js.map +1 -1
- package/lib/esm/internal/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/internal/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/GL.js.map +1 -1
- package/lib/esm/internal/render/webgl/GLTimer.js.map +1 -1
- package/lib/esm/internal/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/internal/render/webgl/HiliteUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
- package/lib/esm/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/Layer.js.map +1 -1
- package/lib/esm/internal/render/webgl/LayerCommands.js.map +1 -1
- package/lib/esm/internal/render/webgl/LightingUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/LineCode.js.map +1 -1
- package/lib/esm/internal/render/webgl/MapLayerParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/Material.js.map +1 -1
- package/lib/esm/internal/render/webgl/Matrix.js.map +1 -1
- package/lib/esm/internal/render/webgl/Mesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/MeshData.js.map +1 -1
- package/lib/esm/internal/render/webgl/MeshGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/PerformanceMetrics.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarClassifier.js +1 -1
- package/lib/esm/internal/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/esm/internal/render/webgl/PointCloud.js.map +1 -1
- package/lib/esm/internal/render/webgl/PointString.js.map +1 -1
- package/lib/esm/internal/render/webgl/Polyline.js.map +1 -1
- package/lib/esm/internal/render/webgl/Primitive.js.map +1 -1
- package/lib/esm/internal/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/RealityModelUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderFlags.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderState.js.map +1 -1
- package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/internal/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShadowUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/esm/internal/render/webgl/StyleUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/Sync.js.map +1 -1
- package/lib/esm/internal/render/webgl/System.js.map +1 -1
- package/lib/esm/internal/render/webgl/Target.js.map +1 -1
- package/lib/esm/internal/render/webgl/TargetGraphics.js.map +1 -1
- package/lib/esm/internal/render/webgl/TargetUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/Technique.js.map +1 -1
- package/lib/esm/internal/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/esm/internal/render/webgl/TechniqueId.js.map +1 -1
- package/lib/esm/internal/render/webgl/Texture.js.map +1 -1
- package/lib/esm/internal/render/webgl/TextureDrape.js.map +1 -1
- package/lib/esm/internal/render/webgl/ThematicSensors.js.map +1 -1
- package/lib/esm/internal/render/webgl/ThematicUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/UniformHandle.js.map +1 -1
- package/lib/esm/internal/render/webgl/VertexLUT.js.map +1 -1
- package/lib/esm/internal/render/webgl/ViewRectUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Blur.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Clipping.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Color.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Common.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Contours.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Decode.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/EDL.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Instancing.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Monochrome.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/SkySphere.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Thematic.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Translucency.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Viewport.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
- package/lib/esm/internal/tile/B3dmReader.js.map +1 -1
- package/lib/esm/internal/tile/BatchedTileIdMap.js.map +1 -1
- package/lib/esm/internal/tile/CesiumAssetProvider.js.map +1 -1
- package/lib/esm/internal/tile/ClassifierTileTree.js.map +1 -1
- package/lib/esm/internal/tile/ContextShareProvider.js.map +1 -1
- package/lib/esm/internal/tile/DynamicIModelTile.js +1 -0
- package/lib/esm/internal/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/internal/tile/FetchCloudStorage.js.map +1 -1
- package/lib/esm/internal/tile/GraphicsCollector.js.map +1 -1
- package/lib/esm/internal/tile/I3dmReader.js.map +1 -1
- package/lib/esm/internal/tile/IModelTile.js.map +1 -1
- package/lib/esm/internal/tile/IModelTileRequestChannels.js.map +1 -1
- package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/internal/tile/ImdlDecoder.js.map +1 -1
- package/lib/esm/internal/tile/ImdlGraphicsCreator.js.map +1 -1
- package/lib/esm/internal/tile/ImdlParser.js.map +1 -1
- package/lib/esm/internal/tile/LRUTileList.js.map +1 -1
- package/lib/esm/internal/tile/LayerTileTreeHandler.js.map +1 -1
- package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
- package/lib/esm/internal/tile/MeshoptCompression.js.map +1 -1
- package/lib/esm/internal/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/esm/internal/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/esm/internal/tile/PntsReader.js.map +1 -1
- package/lib/esm/internal/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/internal/tile/RealityTileDrawArgs.js.map +1 -1
- package/lib/esm/internal/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/esm/internal/tile/TileUserSet.js.map +1 -1
- package/lib/esm/internal/tile/ViewFlagOverrides.js.map +1 -1
- package/lib/esm/internal/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/esm/internal/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/MapTileAvailability.js.map +1 -1
- package/lib/esm/internal/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/internal/tile/map/UrlUtils.js.map +1 -1
- package/lib/esm/internal/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/esm/internal/tile/map/WmsUtilities.js.map +1 -1
- package/lib/esm/internal/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/esm/internal/webgl.js.map +1 -1
- package/lib/esm/properties/AngleDescription.js.map +1 -1
- package/lib/esm/properties/FormattedQuantityDescription.js.map +1 -1
- package/lib/esm/properties/LengthDescription.js.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
- package/lib/esm/quantity-formatting/UnitsData.js.map +1 -1
- package/lib/esm/render/CanvasDecoration.js.map +1 -1
- package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -1
- package/lib/esm/render/CreateTextureArgs.js.map +1 -1
- package/lib/esm/render/Decorations.js.map +1 -1
- package/lib/esm/render/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/FrameStats.js.map +1 -1
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/GraphicBuilder.js.map +1 -1
- package/lib/esm/render/GraphicTemplate.js.map +1 -1
- package/lib/esm/render/MeshArgs.js.map +1 -1
- package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/esm/render/Pixel.js.map +1 -1
- package/lib/esm/render/PolylineArgs.js.map +1 -1
- package/lib/esm/render/RealityMeshParams.js.map +1 -1
- package/lib/esm/render/RenderClipVolume.js.map +1 -1
- package/lib/esm/render/RenderGraphic.js.map +1 -1
- package/lib/esm/render/RenderMemory.js.map +1 -1
- package/lib/esm/render/RenderSystem.js.map +1 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/Scene.js.map +1 -1
- package/lib/esm/render/ScreenSpaceEffectBuilder.js.map +1 -1
- package/lib/esm/render/VisibleFeature.js.map +1 -1
- package/lib/esm/request/Request.js.map +1 -1
- package/lib/esm/request/utils.js.map +1 -1
- package/lib/esm/tile/DisclosedTileTreeSet.js.map +1 -1
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/RealityTile.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.js.map +1 -1
- package/lib/esm/tile/RenderGraphicTileTree.js.map +1 -1
- package/lib/esm/tile/Tile.js.map +1 -1
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileContent.js.map +1 -1
- package/lib/esm/tile/TileDrawArgs.js.map +1 -1
- package/lib/esm/tile/TileGeometryCollector.js.map +1 -1
- package/lib/esm/tile/TileParams.js.map +1 -1
- package/lib/esm/tile/TileRequest.js.map +1 -1
- package/lib/esm/tile/TileRequestChannel.js.map +1 -1
- package/lib/esm/tile/TileRequestChannels.js.map +1 -1
- package/lib/esm/tile/TileStorage.js.map +1 -1
- package/lib/esm/tile/TileTree.js.map +1 -1
- package/lib/esm/tile/TileTreeOwner.js.map +1 -1
- package/lib/esm/tile/TileTreeParams.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/TileTreeSupplier.js.map +1 -1
- package/lib/esm/tile/TileUsageMarker.js.map +1 -1
- package/lib/esm/tile/TileUser.js.map +1 -1
- package/lib/esm/tile/TiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/internal.js.map +1 -1
- package/lib/esm/tile/map/BingElevation.js.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/QuadId.js.map +1 -1
- package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/esm/tile/map/TerrainProvider.js.map +1 -1
- package/lib/esm/tools/AccuDrawTool.js.map +1 -1
- package/lib/esm/tools/AccuDrawViewportUI.js.map +1 -1
- package/lib/esm/tools/ClipViewTool.js.map +1 -1
- package/lib/esm/tools/EditManipulator.js.map +1 -1
- package/lib/esm/tools/ElementSetTool.js.map +1 -1
- package/lib/esm/tools/EventController.js.map +1 -1
- package/lib/esm/tools/IdleTool.js.map +1 -1
- package/lib/esm/tools/MeasureTool.js.map +1 -1
- package/lib/esm/tools/PrimitiveTool.js.map +1 -1
- package/lib/esm/tools/SelectTool.js.map +1 -1
- package/lib/esm/tools/Tool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ToolAssistance.js.map +1 -1
- package/lib/esm/tools/ToolSettings.js.map +1 -1
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/esm/workers/ImdlParser/Worker.js.map +1 -1
- package/lib/esm/workers/RegisterWorker.js.map +1 -1
- package/package.json +20 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgeParams.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/EdgeParams.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { EdgeAppearanceOverrides, LinePixels, MeshEdge, OctEncodedNormalPair, PolylineIndices } from \"@itwin/core-common\";\r\nimport { VertexIndices } from \"./VertexIndices\";\r\nimport { TesselatedPolyline, tesselatePolylineList, wantJointTriangles } from \"./PolylineParams\";\r\nimport { MeshArgsEdges } from \"./MeshPrimitives\";\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { MeshArgs } from \"../../../render/MeshArgs\";\r\n\r\n/**\r\n * Describes a set of line segments representing edges of a mesh.\r\n * Each segment is expanded into a quad defined by two triangles.\r\n * The positions are adjusted in the shader to account for the edge width.\r\n * @internal\r\n */\r\nexport interface SegmentEdgeParams {\r\n /** The 24-bit indices of the tesselated line segment */\r\n readonly indices: VertexIndices;\r\n /**\r\n * For each 24-bit index, 4 bytes:\r\n * the 24-bit index of the vertex at the other end of the segment, followed by\r\n * an 8-bit 'quad index' in [0..3] indicating which point in the expanded quad the vertex represents.\r\n */\r\n readonly endPointAndQuadIndices: Uint8Array;\r\n}\r\n\r\n/**\r\n * A set of line segments representing edges of curved portions of a mesh.\r\n * Each vertex is augmented with a pair of oct-encoded normals used in the shader\r\n * to determine whether or not the edge should be displayed.\r\n * @internal\r\n */\r\nexport interface SilhouetteParams extends SegmentEdgeParams {\r\n /** Per index, 2 16-bit oct-encoded normals */\r\n readonly normalPairs: Uint8Array;\r\n}\r\n\r\n/** A lookup table of edges for a mesh. The table is partitioned such that the lower partition contains simple segment edges\r\n * and the upper partition contains silhouette edges. Each entry in the lower partition consists of 2 24-bit indices into\r\n * a [[VertexTable]] from which to obtain the endpoints of the edge. Each entry in the upper partition consists of 2 24-bit\r\n * vertex indices followed by two 16-bit [[OctEncodedNormal]]s.\r\n * If both partitions exist then one row may exist between them containing a mix of segments and silhouettes; in this case a handful\r\n * of padding bytes may exist between the last segment and the first silhouette.\r\n * @see [[IndexedEdgeParams.edges]].\r\n * @internal\r\n */\r\nexport interface EdgeTable {\r\n /** The rectangular lookup table. */\r\n readonly data: Uint8Array;\r\n /** Width of the table. */\r\n readonly width: number;\r\n /** Height of the table. */\r\n readonly height: number;\r\n /** The number of segments in the lower partition. */\r\n readonly numSegments: number;\r\n /** The number of padding bytes inserted between the partitions to preserve alignment of data. */\r\n readonly silhouettePadding: number;\r\n}\r\n\r\n/** Describes the edges of a surface as a lookup table. Each edge consists of six identical indices into the lookup table, forming a quad.\r\n * @see [[EdgeParams.indexed]].\r\n * @internal\r\n */\r\nexport interface IndexedEdgeParams {\r\n /** The indices into [[edges]]. */\r\n readonly indices: VertexIndices;\r\n /** The lookup table indexed by [[indices]]. */\r\n readonly edges: EdgeTable;\r\n readonly appearance?: EdgeAppearanceOverrides;\r\n}\r\n\r\n/** @internal */\r\nexport interface EdgeTableInfo {\r\n /** Width of the table. */\r\n readonly width: number;\r\n /** Height of the table. */\r\n readonly height: number;\r\n /** The number of segments in the lower partition. */\r\n readonly silhouettePadding: number;\r\n /** The starting byte index of silhouettes */\r\n readonly silhouetteStartByteIndex: number;\r\n}\r\n\r\nexport interface PolylineEdgeGroup {\r\n polyline: TesselatedPolyline;\r\n appearance?: EdgeAppearanceOverrides;\r\n}\r\n\r\n/** Describes the edges of a mesh.\r\n * @internal\r\n */\r\nexport interface EdgeParams {\r\n /** The edge width in pixels. */\r\n readonly weight: number;\r\n /** The line pattern in which edges are drawn. */\r\n readonly linePixels: LinePixels;\r\n /** Simple single-segment edges, always displayed when edge display is enabled. */\r\n readonly segments?: SegmentEdgeParams;\r\n /** Single-segment edges of curved surfaces, displayed based on edge normal relative to eye. */\r\n readonly silhouettes?: SilhouetteParams;\r\n /** Polyline edges, always displayed when edge display is enabled. */\r\n readonly polylineGroups?: PolylineEdgeGroup[];\r\n /** Silhouettes and simple-segment edges, compactly represented as indices into a lookup table. */\r\n readonly indexed?: IndexedEdgeParams;\r\n}\r\n\r\n/** @internal */\r\nexport function calculateEdgeTableParams(numSegmentEdges: number, numSilhouettes: number, maxSize: number): EdgeTableInfo {\r\n // Each segment edge requires 2 24-bit indices = 6 bytes = 1.5 RGBA values.\r\n // Each silhouette requires the same as segment edge plus 2 16-bit oct-encoded normals = 10 bytes = 2.5 RGBA values.\r\n let nRgbaRequired = Math.ceil(1.5 * numSegmentEdges + 2.5 * numSilhouettes);\r\n const silhouetteStartByteIndex = numSegmentEdges * 6;\r\n let silhouettePadding = 0;\r\n let width = nRgbaRequired;\r\n let height = 1;\r\n if (nRgbaRequired >= maxSize) {\r\n // Make roughly square to reduce unused space in last row.\r\n width = Math.ceil(Math.sqrt(nRgbaRequired));\r\n // Each entry's data must fit on the same row. 15 RGBA = 60 bytes = lowest common multiple of 6, 10, and 4.\r\n const remainder = width % 15;\r\n if (0 !== remainder)\r\n width += 15 - remainder;\r\n\r\n // If the table contains both segments and silhouettes, there may be one row containing a mix of the two where padding\r\n // is required between them.\r\n if (numSilhouettes > 0 && numSegmentEdges > 0) {\r\n const silOffset = silhouetteStartByteIndex % 60; // some multiple of 6.\r\n silhouettePadding = (60 - silOffset) % 10;\r\n nRgbaRequired += Math.ceil(silhouettePadding / 4);\r\n }\r\n\r\n height = Math.ceil(nRgbaRequired / width);\r\n if (width * height < nRgbaRequired)\r\n height++;\r\n }\r\n\r\n return {\r\n width,\r\n height,\r\n silhouettePadding,\r\n silhouetteStartByteIndex,\r\n };\r\n}\r\n\r\nfunction convertPolylinesAndEdges(polylines?: PolylineIndices[], edges?: MeshEdge[]): SegmentEdgeParams | undefined {\r\n let numIndices = undefined !== edges ? edges.length : 0;\r\n if (undefined !== polylines)\r\n for (const pd of polylines)\r\n numIndices += (pd.length - 1);\r\n\r\n if (0 === numIndices)\r\n return undefined;\r\n\r\n numIndices *= 6;\r\n const indexBytes = new Uint8Array(numIndices * 3);\r\n const endPointAndQuadIndexBytes = new Uint8Array(numIndices * 4);\r\n\r\n let ndx: number = 0;\r\n let ndx2: number = 0;\r\n\r\n const addPoint = (p0: number, p1: number, quadIndex: number) => {\r\n VertexIndices.encodeIndex(p0, indexBytes, ndx);\r\n ndx += 3;\r\n VertexIndices.encodeIndex(p1, endPointAndQuadIndexBytes, ndx2);\r\n endPointAndQuadIndexBytes[ndx2 + 3] = quadIndex;\r\n ndx2 += 4;\r\n };\r\n\r\n if (undefined !== polylines) {\r\n for (const pd of polylines) {\r\n const num = pd.length - 1;\r\n for (let i = 0; i < num; ++i) {\r\n let p0 = pd[i];\r\n let p1 = pd[i + 1];\r\n if (p1 < p0) { // swap so that lower index is first.\r\n p0 = p1;\r\n p1 = pd[i];\r\n }\r\n addPoint(p0, p1, 0);\r\n addPoint(p1, p0, 2);\r\n addPoint(p0, p1, 1);\r\n addPoint(p0, p1, 1);\r\n addPoint(p1, p0, 2);\r\n addPoint(p1, p0, 3);\r\n }\r\n }\r\n }\r\n\r\n if (undefined !== edges) {\r\n for (const meshEdge of edges) {\r\n const p0 = meshEdge.indices[0];\r\n const p1 = meshEdge.indices[1];\r\n addPoint(p0, p1, 0);\r\n addPoint(p1, p0, 2);\r\n addPoint(p0, p1, 1);\r\n addPoint(p0, p1, 1);\r\n addPoint(p1, p0, 2);\r\n addPoint(p1, p0, 3);\r\n }\r\n }\r\n\r\n return {\r\n indices: new VertexIndices(indexBytes),\r\n endPointAndQuadIndices: endPointAndQuadIndexBytes,\r\n };\r\n}\r\n\r\nfunction convertSilhouettes(edges: MeshEdge[], normalPairs: OctEncodedNormalPair[]): SilhouetteParams | undefined {\r\n const base = convertPolylinesAndEdges(undefined, edges);\r\n if (undefined === base)\r\n return undefined;\r\n\r\n const normalPairBytes = new Uint8Array(normalPairs.length * 6 * 4);\r\n const normalPair16 = new Uint16Array(normalPairBytes.buffer);\r\n\r\n let ndx = 0;\r\n for (const pair of normalPairs) {\r\n for (let i = 0; i < 6; i++) {\r\n normalPair16[ndx++] = pair.first.value;\r\n normalPair16[ndx++] = pair.second.value;\r\n }\r\n }\r\n\r\n return {\r\n indices: base.indices,\r\n endPointAndQuadIndices: base.endPointAndQuadIndices,\r\n normalPairs: normalPairBytes,\r\n };\r\n}\r\n\r\nfunction buildIndexedEdges(args: MeshArgsEdges, polylines: PolylineIndices[] | undefined, maxSize: number): IndexedEdgeParams | undefined {\r\n const hardEdges = args.edges?.edges;\r\n const silhouettes = args.silhouettes;\r\n\r\n const numHardEdges = hardEdges?.length ?? 0;\r\n const numSilhouettes = silhouettes?.edges?.length ?? 0;\r\n const numPolylines = polylines ? polylines.reduce((count: number, pd: PolylineIndices) => count + Math.max(0, pd.length - 1), 0) : 0;\r\n const numSegmentEdges = numHardEdges + numPolylines;\r\n const numTotalEdges = numSegmentEdges + numSilhouettes;\r\n if (numTotalEdges === 0)\r\n return undefined;\r\n\r\n // Each edge is a quad consisting of six vertices. Each vertex is an identical 24-bit index into the lookup table.\r\n const indices = new VertexIndices(new Uint8Array(numTotalEdges * 6 * 3));\r\n for (let i = 0; i < numTotalEdges; i++)\r\n for (let j = 0; j < 6; j++)\r\n indices.setNthIndex(i * 6 + j, i);\r\n\r\n const {width, height, silhouettePadding, silhouetteStartByteIndex } = calculateEdgeTableParams (numSegmentEdges, numSilhouettes, maxSize);\r\n\r\n const data = new Uint8Array(width * height * 4);\r\n function setUint24(byteIndex: number, value: number): void {\r\n data[byteIndex + 0] = value & 0x0000ff;\r\n data[byteIndex + 1] = (value & 0x00ff00) >>> 8;\r\n data[byteIndex + 2] = (value & 0xff0000) >>> 16;\r\n }\r\n\r\n function setEdge(index: number, startPointIndex: number, endPointIndex: number): void {\r\n const byteIndex = index * 6;\r\n setUint24(byteIndex, startPointIndex);\r\n setUint24(byteIndex + 3, endPointIndex);\r\n }\r\n\r\n let curIndex = 0;\r\n if (hardEdges)\r\n for (const edge of hardEdges)\r\n setEdge(curIndex++, edge.indices[0], edge.indices[1]);\r\n\r\n if (polylines) {\r\n for (const pd of polylines) {\r\n const num = pd.length - 1;\r\n for (let i = 0; i < num; i++) {\r\n const p0 = pd[i];\r\n const p1 = pd[i + 1];\r\n // Ensure lower index is first.\r\n if (p0 < p1)\r\n setEdge(curIndex++, p0, p1);\r\n else\r\n setEdge(curIndex++, p1, p0);\r\n }\r\n }\r\n }\r\n\r\n if (silhouettes?.edges) {\r\n assert(undefined !== silhouettes.normals);\r\n assert(silhouettes.normals.length === silhouettes.edges.length);\r\n function setSilhouette(index: number, start: number, end: number, normals: OctEncodedNormalPair): void {\r\n const byteIndex = silhouetteStartByteIndex + silhouettePadding + index * 10;\r\n setUint24(byteIndex, start);\r\n setUint24(byteIndex + 3, end);\r\n data[byteIndex + 6] = normals.first.value & 0xff;\r\n data[byteIndex + 7] = (normals.first.value & 0xff00) >>> 8;\r\n data[byteIndex + 8] = normals.second.value & 0xff;\r\n data[byteIndex + 9] = (normals.second.value & 0xff00) >>> 8;\r\n }\r\n\r\n curIndex = 0;\r\n for (let i = 0; i < silhouettes.edges.length; i++)\r\n setSilhouette(curIndex++, silhouettes.edges[i].indices[0], silhouettes.edges[i].indices[1], silhouettes.normals[i]);\r\n }\r\n\r\n return {\r\n indices,\r\n edges: {\r\n data,\r\n width,\r\n height,\r\n numSegments: numSegmentEdges,\r\n silhouettePadding,\r\n },\r\n appearance: {\r\n width: args.width,\r\n linePixels: args.linePixels,\r\n color: args.color,\r\n }\r\n };\r\n}\r\n\r\n/** @internal */\r\nexport function createEdgeParams(args: {\r\n meshArgs: MeshArgs;\r\n maxWidth: number;\r\n createIndexed: boolean;\r\n}): EdgeParams | undefined {\r\n const { meshArgs, maxWidth, createIndexed } = args;\r\n const edgeArgs = meshArgs.edges;\r\n if (!edgeArgs)\r\n return undefined;\r\n\r\n // If we've got a single polyline edge group and we don't need to round its corners, convert it to segment edges.\r\n const polylinesToProcess =\r\n 1 === edgeArgs.polylines.groups?.length\r\n && undefined === edgeArgs.polylines.groups[0].appearance\r\n && !wantJointTriangles(edgeArgs.width, true === meshArgs.is2d)\r\n ? edgeArgs.polylines.groups[0].polylines.map((x) => x.indices) : undefined;\r\n\r\n let segments: SegmentEdgeParams | undefined;\r\n let silhouettes: SilhouetteParams | undefined;\r\n let indexed: IndexedEdgeParams | undefined;\r\n\r\n if (createIndexed) {\r\n indexed = buildIndexedEdges(edgeArgs, polylinesToProcess, maxWidth);\r\n } else {\r\n segments = convertPolylinesAndEdges(polylinesToProcess, edgeArgs.edges.edges);\r\n silhouettes = edgeArgs.silhouettes.edges && edgeArgs.silhouettes.normals ? convertSilhouettes(edgeArgs.silhouettes.edges, edgeArgs.silhouettes.normals) : undefined;\r\n }\r\n\r\n let polylineGroups: PolylineEdgeGroup[] | undefined;\r\n if (!polylinesToProcess && edgeArgs.polylines.groups) {\r\n for (const group of edgeArgs.polylines.groups) {\r\n const polyline = tesselatePolylineList({\r\n points: args.meshArgs.points,\r\n polylines: group.polylines,\r\n width: group.appearance?.width ?? edgeArgs.width,\r\n is2d: true === args.meshArgs.is2d,\r\n });\r\n\r\n if (!polylineGroups) {\r\n polylineGroups = [];\r\n }\r\n\r\n polylineGroups.push({ polyline, appearance: group.appearance });\r\n }\r\n }\r\n \r\n if (!segments && !silhouettes && !polylineGroups && !indexed)\r\n return undefined;\r\n\r\n return {\r\n weight: edgeArgs.width,\r\n linePixels: edgeArgs.linePixels,\r\n segments,\r\n silhouettes,\r\n polylineGroups,\r\n indexed,\r\n };\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"EdgeParams.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/EdgeParams.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeometryAccumulator.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GeometryAccumulator.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { IndexedPolyface, Loop, Path, Point3d, Range3d, SolidPrimitive, Transform } from \"@itwin/core-geometry\";\r\nimport { AnalysisStyleDisplacement, Feature } from \"@itwin/core-common\";\r\nimport { DisplayParams } from \"./DisplayParams\";\r\nimport { MeshBuilderMap } from \"./MeshBuilderMap\";\r\nimport { MeshList } from \"./MeshPrimitives\";\r\nimport { GeometryOptions } from \"./Primitives\";\r\nimport { GeometryList } from \"./GeometryList\";\r\nimport { Geometry, PrimitiveGeometryType } from \"./GeometryPrimitives\";\r\n\r\n/** @internal */\r\nexport class GeometryAccumulator {\r\n private _transform: Transform;\r\n private _surfacesOnly: boolean;\r\n private readonly _analysisDisplacement?: AnalysisStyleDisplacement;\r\n\r\n public readonly tileRange: Range3d;\r\n public readonly geometries: GeometryList = new GeometryList();\r\n public currentFeature?: Feature;\r\n\r\n public get surfacesOnly(): boolean { return this._surfacesOnly; }\r\n public get transform(): Transform { return this._transform; }\r\n public get isEmpty(): boolean { return this.geometries.isEmpty; }\r\n public get haveTransform(): boolean { return !this._transform.isIdentity; }\r\n\r\n public constructor(options?: {\r\n surfacesOnly?: boolean;\r\n transform?: Transform;\r\n tileRange?: Range3d;\r\n analysisStyleDisplacement?: AnalysisStyleDisplacement;\r\n feature?: Feature;\r\n }) {\r\n this.tileRange = options?.tileRange ?? Range3d.createNull();\r\n this._surfacesOnly = true === options?.surfacesOnly;\r\n this._transform = options?.transform ?? Transform.createIdentity();\r\n this._analysisDisplacement = options?.analysisStyleDisplacement;\r\n this.currentFeature = options?.feature;\r\n }\r\n\r\n private getPrimitiveRange(geom: PrimitiveGeometryType): Range3d | undefined {\r\n const range = new Range3d();\r\n geom.range(undefined, range);\r\n return range.isNull ? undefined : range;\r\n }\r\n\r\n private calculateTransform(transform: Transform, range: Range3d): Transform {\r\n if (this.haveTransform)\r\n transform = this._transform.multiplyTransformTransform(transform);\r\n\r\n transform.multiplyRange(range, range);\r\n return transform;\r\n }\r\n\r\n public addLoop(loop: Loop, displayParams: DisplayParams, transform: Transform, disjoint: boolean): boolean {\r\n const range = this.getPrimitiveRange(loop);\r\n if (!range)\r\n return false;\r\n\r\n const xform = this.calculateTransform(transform, range);\r\n return this.addGeometry(Geometry.createFromLoop(loop, xform, range, displayParams, disjoint, this.currentFeature));\r\n }\r\n\r\n public addLineString(pts: Point3d[], displayParams: DisplayParams, transform: Transform): boolean {\r\n // Do this.getPrimitiveRange() manually, so there is no need to create a PointString3d object just to find the range\r\n const range = Range3d.createNull();\r\n range.extendArray(pts, undefined);\r\n if (range.isNull)\r\n return false;\r\n\r\n const xform = this.calculateTransform(transform, range);\r\n return this.addGeometry(Geometry.createFromLineString(pts, xform, range, displayParams, this.currentFeature));\r\n }\r\n\r\n public addPointString(pts: Point3d[], displayParams: DisplayParams, transform: Transform): boolean {\r\n // Do this.getPrimitiveRange() manually, so there is no need to create a PointString3d object just to find the range\r\n const range = Range3d.createNull();\r\n range.extendArray(pts, undefined);\r\n if (range.isNull)\r\n return false;\r\n\r\n const xform = this.calculateTransform(transform, range);\r\n return this.addGeometry(Geometry.createFromPointString(pts, xform, range, displayParams, this.currentFeature));\r\n }\r\n\r\n public addPath(path: Path, displayParams: DisplayParams, transform: Transform, disjoint: boolean): boolean {\r\n const range = this.getPrimitiveRange(path);\r\n if (!range)\r\n return false;\r\n\r\n const xform = this.calculateTransform(transform, range);\r\n return this.addGeometry(Geometry.createFromPath(path, xform, range, displayParams, disjoint, this.currentFeature));\r\n }\r\n\r\n public addPolyface(pf: IndexedPolyface, displayParams: DisplayParams, transform: Transform): boolean {\r\n // Adjust the mesh range based on displacements applied to vertices by analysis style, if applicable.\r\n let range;\r\n if (this._analysisDisplacement) {\r\n const channel = pf.data.auxData?.channels.find((x) => x.name === this._analysisDisplacement!.channelName);\r\n const displacementRange = channel?.computeDisplacementRange(this._analysisDisplacement.scale);\r\n if (displacementRange && !displacementRange.isNull) {\r\n range = Range3d.createNull();\r\n const pt = new Point3d();\r\n for (let i = 0; i < pf.data.point.length; i++) {\r\n pf.data.point.getPoint3dAtUncheckedPointIndex(i, pt);\r\n range.extendXYZ(pt.x + displacementRange.low.x, pt.y + displacementRange.low.y, pt.z + displacementRange.low.z);\r\n range.extendXYZ(pt.x + displacementRange.high.x, pt.y + displacementRange.high.y, pt.z + displacementRange.high.z);\r\n }\r\n }\r\n }\r\n\r\n if (!range && !(range = this.getPrimitiveRange(pf)))\r\n return false;\r\n\r\n const xform = this.calculateTransform(transform, range);\r\n return this.addGeometry(Geometry.createFromPolyface(pf, xform, range, displayParams, this.currentFeature));\r\n }\r\n\r\n public addSolidPrimitive(primitive: SolidPrimitive, displayParams: DisplayParams, transform: Transform): boolean {\r\n const range = this.getPrimitiveRange(primitive);\r\n if (!range)\r\n return false;\r\n\r\n const xform = this.calculateTransform(transform, range);\r\n return this.addGeometry(Geometry.createFromSolidPrimitive(primitive, xform, range, displayParams, this.currentFeature));\r\n }\r\n\r\n public addGeometry(geom: Geometry): boolean {\r\n this.geometries.push(geom);\r\n return true;\r\n }\r\n\r\n public clear(): void { this.geometries.clear(); }\r\n\r\n /**\r\n * Generates a MeshBuilderMap\r\n * native: GeometryAccumulator::ToMeshBuilderMap(GeometryOptionsCR options, double tolerance, FeatureTableP featureTable, ViewContextR context) const\r\n * note : removed featureTable, ViewContext\r\n * @param tolerance should derive from Viewport.getPixelSizeAtPoint\r\n */\r\n public toMeshBuilderMap(options: GeometryOptions, tolerance: number, pickable: { isVolumeClassifier?: boolean, modelId?: string } | undefined): MeshBuilderMap {\r\n const { geometries } = this; // declare internal dependencies\r\n\r\n const range = geometries.computeRange();\r\n const is2d = !range.isNull && range.isAlmostZeroZ;\r\n\r\n return MeshBuilderMap.createFromGeometries(geometries, tolerance, range, is2d, options, pickable);\r\n }\r\n\r\n public toMeshes(options: GeometryOptions, tolerance: number, pickable: { isVolumeClassifier?: boolean, modelId?: string } | undefined): MeshList {\r\n if (this.geometries.isEmpty)\r\n return new MeshList();\r\n\r\n const builderMap = this.toMeshBuilderMap(options, tolerance, pickable);\r\n return builderMap.toMeshes();\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"GeometryAccumulator.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GeometryAccumulator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeometryList.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GeometryList.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,gBAAgB;AAChB,MAAM,OAAO,YAAY;IACf,KAAK,GAAe,EAAE,CAAC;IAE/B,IAAW,KAAK,KAA2B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,IAAW,OAAO,KAAc,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;IACjE,IAAW,MAAM,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAElD,IAAI,CAAC,IAAc;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,GAAiB;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,KAAW,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAExC,YAAY;QACjB,MAAM,KAAK,GAAY,OAAO,CAAC,UAAU,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,yBAAyB,KAAgB,OAAO,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IAE3F,CAAC,MAAM,CAAC,QAAQ,CAAC;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvC,CAAC;CACF"
|
|
1
|
+
{"version":3,"file":"GeometryList.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GeometryList.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,gBAAgB;AAChB,MAAM,OAAO,YAAY;IACf,KAAK,GAAe,EAAE,CAAC;IAE/B,IAAW,KAAK,KAA2B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,IAAW,OAAO,KAAc,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;IACjE,IAAW,MAAM,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAElD,IAAI,CAAC,IAAc;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,GAAiB;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,KAAW,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAExC,YAAY;QACjB,MAAM,KAAK,GAAY,OAAO,CAAC,UAAU,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,yBAAyB,KAAgB,OAAO,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IAE3F,CAAC,MAAM,CAAC,QAAQ,CAAC;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeometryPrimitives.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GeometryPrimitives.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport {\r\n CurveChain, IndexedPolyface, Loop, Path, Point3d, PolyfaceBuilder, PolyfaceQuery, Range3d, SolidPrimitive, StrokeOptions, SweepContour, Transform,\r\n} from \"@itwin/core-geometry\";\r\nimport { Feature } from \"@itwin/core-common\";\r\nimport { DisplayParams } from \"./DisplayParams\";\r\nimport { PolyfacePrimitive, PolyfacePrimitiveList } from \"./Polyface\";\r\nimport { StrokesPrimitive, StrokesPrimitiveList, StrokesPrimitivePointList, StrokesPrimitivePointLists } from \"./Strokes\";\r\n\r\n/** @internal */\r\nexport type PrimitiveGeometryType = Loop | Path | IndexedPolyface | SolidPrimitive;\r\n\r\n/** @internal */\r\nexport abstract class Geometry {\r\n public readonly transform: Transform;\r\n public readonly tileRange: Range3d;\r\n public readonly displayParams: DisplayParams;\r\n public readonly feature?: Feature;\r\n\r\n public constructor(transform: Transform, tileRange: Range3d, displayParams: DisplayParams, feature: Feature | undefined) {\r\n this.transform = transform;\r\n this.tileRange = tileRange;\r\n this.displayParams = displayParams;\r\n this.feature = feature;\r\n }\r\n\r\n public static createFromPointString(pts: Point3d[], tf: Transform, tileRange: Range3d, params: DisplayParams, feature: Feature | undefined): Geometry {\r\n return new PrimitivePointStringGeometry(pts, tf, tileRange, params, feature);\r\n }\r\n\r\n public static createFromLineString(pts: Point3d[], tf: Transform, tileRange: Range3d, params: DisplayParams, feature: Feature | undefined): Geometry {\r\n return new PrimitiveLineStringGeometry(pts, tf, tileRange, params, feature);\r\n }\r\n\r\n public static createFromLoop(loop: Loop, tf: Transform, tileRange: Range3d, params: DisplayParams, disjoint: boolean, feature: Feature | undefined): Geometry {\r\n return new PrimitiveLoopGeometry(loop, tf, tileRange, params, disjoint, feature);\r\n }\r\n\r\n public static createFromSolidPrimitive(primitive: SolidPrimitive, tf: Transform, tileRange: Range3d, params: DisplayParams, feature: Feature | undefined): Geometry {\r\n return new SolidPrimitiveGeometry(primitive, tf, tileRange, params, feature);\r\n }\r\n\r\n public static createFromPath(path: Path, tf: Transform, tileRange: Range3d, params: DisplayParams, disjoint: boolean, feature: Feature | undefined): Geometry {\r\n return new PrimitivePathGeometry(path, tf, tileRange, params, disjoint, feature);\r\n }\r\n\r\n public static createFromPolyface(ipf: IndexedPolyface, tf: Transform, tileRange: Range3d, params: DisplayParams, feature: Feature | undefined): Geometry {\r\n return new PrimitivePolyfaceGeometry(ipf, tf, tileRange, params, feature);\r\n }\r\n\r\n protected abstract _getPolyfaces(facetOptions: StrokeOptions): PolyfacePrimitiveList | undefined;\r\n protected abstract _getStrokes(facetOptions: StrokeOptions): StrokesPrimitiveList | undefined;\r\n\r\n public getPolyfaces(tolerance: number): PolyfacePrimitiveList | undefined {\r\n const facetOptions = StrokeOptions.createForFacets();\r\n facetOptions.chordTol = tolerance;\r\n if (this.displayParams.isTextured)\r\n facetOptions.needParams = true;\r\n\r\n if (!this.displayParams.ignoreLighting) // ###TODO don't generate normals for 2d views.\r\n facetOptions.needNormals = true;\r\n\r\n return this._getPolyfaces(facetOptions);\r\n }\r\n\r\n public getStrokes(tolerance: number): StrokesPrimitiveList | undefined {\r\n const strokeOptions = StrokeOptions.createForCurves();\r\n strokeOptions.chordTol = tolerance;\r\n return this._getStrokes(strokeOptions);\r\n }\r\n\r\n public get hasTexture() { return this.displayParams.isTextured; }\r\n public doDecimate() { return false; }\r\n public doVertexCluster() { return true; }\r\n public part() { return undefined; }\r\n}\r\n\r\n/** @internal */\r\nexport class PrimitivePathGeometry extends Geometry {\r\n public readonly path: Path;\r\n public readonly isDisjoint: boolean;\r\n\r\n public constructor(path: Path, tf: Transform, range: Range3d, params: DisplayParams, isDisjoint: boolean, feature: Feature | undefined) {\r\n super(tf, range, params, feature);\r\n this.path = path;\r\n this.isDisjoint = isDisjoint;\r\n }\r\n\r\n protected _getPolyfaces(_facetOptions: StrokeOptions): PolyfacePrimitiveList | undefined { return undefined; }\r\n\r\n protected _getStrokes(facetOptions: StrokeOptions): StrokesPrimitiveList | undefined {\r\n return PrimitivePathGeometry.getStrokesForLoopOrPath(this.path, facetOptions, this.displayParams, this.isDisjoint, this.transform);\r\n }\r\n\r\n public static getStrokesForLoopOrPath(loopOrPath: Loop | Path, facetOptions: StrokeOptions, params: DisplayParams, isDisjoint: boolean, transform: Transform): StrokesPrimitiveList | undefined {\r\n const strksList = new StrokesPrimitiveList();\r\n\r\n if (!loopOrPath.isAnyRegionType || params.wantRegionOutline) {\r\n const strksPts: StrokesPrimitivePointLists = new StrokesPrimitivePointLists();\r\n PrimitivePathGeometry.collectCurveStrokes(strksPts, loopOrPath, facetOptions, transform);\r\n\r\n if (strksPts.length > 0) {\r\n const isPlanar = loopOrPath.isAnyRegionType;\r\n assert(isPlanar === params.wantRegionOutline);\r\n const strksPrim: StrokesPrimitive = StrokesPrimitive.create(params, isDisjoint, isPlanar);\r\n strksPrim.strokes = strksPts;\r\n strksList.push(strksPrim);\r\n }\r\n }\r\n\r\n return strksList;\r\n }\r\n\r\n private static collectCurveStrokes(strksPts: StrokesPrimitivePointLists, loopOrPath: CurveChain, facetOptions: StrokeOptions, trans: Transform) {\r\n const strokes = loopOrPath.getPackedStrokes(facetOptions);\r\n if (undefined !== strokes) {\r\n const pts = strokes.getPoint3dArray();\r\n trans.multiplyPoint3dArrayInPlace(pts);\r\n strksPts.push(new StrokesPrimitivePointList(pts));\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PrimitivePointStringGeometry extends Geometry {\r\n public readonly pts: Point3d[];\r\n\r\n public constructor(pts: Point3d[], tf: Transform, range: Range3d, params: DisplayParams, feature: Feature | undefined) {\r\n super(tf, range, params, feature);\r\n this.pts = pts;\r\n }\r\n\r\n protected _getPolyfaces(_facetOptions: StrokeOptions): PolyfacePrimitiveList | undefined {\r\n return undefined;\r\n }\r\n\r\n protected _getStrokes(_facetOptions: StrokeOptions): StrokesPrimitiveList | undefined {\r\n const strksList = new StrokesPrimitiveList();\r\n const strksPts = new StrokesPrimitivePointLists(new StrokesPrimitivePointList(this.pts));\r\n\r\n const strksPrim: StrokesPrimitive = StrokesPrimitive.create(this.displayParams, true, false);\r\n strksPrim.strokes = strksPts;\r\n strksPrim.transform(this.transform);\r\n strksList.push(strksPrim);\r\n\r\n return strksList;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PrimitiveLineStringGeometry extends Geometry {\r\n public readonly pts: Point3d[];\r\n\r\n public constructor(pts: Point3d[], tf: Transform, range: Range3d, params: DisplayParams, feature: Feature | undefined) {\r\n super(tf, range, params, feature);\r\n this.pts = pts;\r\n }\r\n\r\n protected _getPolyfaces(_facetOptions: StrokeOptions): PolyfacePrimitiveList | undefined {\r\n return undefined;\r\n }\r\n\r\n protected _getStrokes(_facetOptions: StrokeOptions): StrokesPrimitiveList | undefined {\r\n const strksList = new StrokesPrimitiveList();\r\n const strksPts = new StrokesPrimitivePointLists(new StrokesPrimitivePointList(this.pts));\r\n\r\n const strksPrim: StrokesPrimitive = StrokesPrimitive.create(this.displayParams, false, false);\r\n strksPrim.strokes = strksPts;\r\n strksPrim.transform(this.transform);\r\n strksList.push(strksPrim);\r\n\r\n return strksList;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PrimitiveLoopGeometry extends Geometry {\r\n public readonly loop: Loop;\r\n public readonly isDisjoint: boolean;\r\n\r\n public constructor(loop: Loop, tf: Transform, range: Range3d, params: DisplayParams, isDisjoint: boolean, feature: Feature | undefined) {\r\n super(tf, range, params, feature);\r\n this.loop = loop;\r\n this.isDisjoint = isDisjoint;\r\n }\r\n\r\n protected _getPolyfaces(facetOptions: StrokeOptions): PolyfacePrimitiveList | undefined {\r\n if (!this.loop.isAnyRegionType) {\r\n return undefined;\r\n }\r\n\r\n // The following is good for single loop things according to Earlin.\r\n const contour = SweepContour.createForLinearSweep(this.loop);\r\n if (contour !== undefined) {\r\n const pfBuilder: PolyfaceBuilder = PolyfaceBuilder.create(facetOptions);\r\n contour.emitFacets(pfBuilder, false, this.transform); // build facets and emit them to the builder\r\n const polyface = pfBuilder.claimPolyface();\r\n const wantEdges = DisplayParams.RegionEdgeType.Default === this.displayParams.regionEdgeType;\r\n const isPlanar = true;\r\n return new PolyfacePrimitiveList(PolyfacePrimitive.create(this.displayParams, polyface, wantEdges, isPlanar));\r\n } // ###TODO: this approach might not work with holes\r\n\r\n return undefined;\r\n }\r\n\r\n protected _getStrokes(facetOptions: StrokeOptions): StrokesPrimitiveList | undefined {\r\n return PrimitivePathGeometry.getStrokesForLoopOrPath(this.loop, facetOptions, this.displayParams, this.isDisjoint, this.transform);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PrimitivePolyfaceGeometry extends Geometry {\r\n public readonly polyface: IndexedPolyface;\r\n\r\n public constructor(polyface: IndexedPolyface, tf: Transform, range: Range3d, params: DisplayParams, feature: Feature | undefined) {\r\n super(tf, range, params, feature);\r\n this.polyface = tf.isIdentity ? polyface : polyface.cloneTransformed(tf);\r\n }\r\n\r\n protected _getPolyfaces(facetOptions: StrokeOptions): PolyfacePrimitiveList | undefined {\r\n if (!this.hasTexture) {\r\n if (this.polyface.data.param)\r\n this.polyface.data.param.clear();\r\n\r\n if (this.polyface.data.paramIndex)\r\n this.polyface.data.paramIndex = [];\r\n }\r\n\r\n if (!facetOptions.needNormals) {\r\n if (this.polyface.data.normal)\r\n this.polyface.data.normal.clear();\r\n\r\n if (this.polyface.data.normalIndex)\r\n this.polyface.data.normalIndex = [];\r\n } else if (!this.polyface.data.normal || 0 === this.polyface.data.normal.length) {\r\n PolyfaceQuery.buildAverageNormals(this.polyface);\r\n }\r\n\r\n return new PolyfacePrimitiveList(PolyfacePrimitive.create(this.displayParams, this.polyface));\r\n }\r\n\r\n protected _getStrokes(_facetOptions: StrokeOptions): StrokesPrimitiveList | undefined { return undefined; }\r\n}\r\n\r\nclass SolidPrimitiveGeometry extends Geometry {\r\n private readonly _primitive: SolidPrimitive;\r\n\r\n public constructor(primitive: SolidPrimitive, tf: Transform, range: Range3d, params: DisplayParams, feature: Feature | undefined) {\r\n super(tf, range, params, feature);\r\n const xformPrim = tf.isIdentity ? primitive : primitive.cloneTransformed(tf);\r\n this._primitive = xformPrim !== undefined ? xformPrim as SolidPrimitive : primitive;\r\n }\r\n\r\n protected _getStrokes() { return undefined; }\r\n\r\n protected _getPolyfaces(opts: StrokeOptions): PolyfacePrimitiveList {\r\n const builder = PolyfaceBuilder.create(opts);\r\n builder.addGeometryQuery(this._primitive);\r\n return new PolyfacePrimitiveList(PolyfacePrimitive.create(this.displayParams, builder.claimPolyface()));\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"GeometryPrimitives.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GeometryPrimitives.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphicDescriptionBuilderImpl.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GraphicDescriptionBuilderImpl.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { Point3d, Range3d, Range3dProps, Transform, XYAndZ } from \"@itwin/core-geometry\";\r\nimport { addPrimitiveTransferables, ImdlModel } from \"../../imdl/ImdlModel\";\r\nimport {\r\n ComputeGraphicDescriptionChordToleranceArgs, GraphicDescription, GraphicDescriptionBuilder, GraphicDescriptionBuilderOptions,\r\n} from \"../../render/GraphicDescriptionBuilder\";\r\nimport { GraphicType } from \"../../render/GraphicType\";\r\nimport { GraphicAssembler } from \"../../render/GraphicAssembler\";\r\nimport { Gradient, PackedFeatureTable, QPoint3dList } from \"@itwin/core-common\";\r\nimport { BatchOptions } from \"../../render/BatchOptions\";\r\nimport { assert, Id64String, TransientIdSequence } from \"@itwin/core-bentley\";\r\nimport { Mesh } from \"./MeshPrimitives\";\r\nimport { createPointStringParams } from \"./PointStringParams\";\r\nimport { VertexTable } from \"./VertexTable\";\r\nimport { createPolylineParams } from \"./PolylineParams\";\r\nimport { createMeshParams } from \"./VertexTableBuilder\";\r\nimport { edgeParamsToImdl } from \"../../imdl/ParseImdlDocument\";\r\nimport { _accumulator, _implementationProhibited } from \"../Symbols\";\r\nimport { WorkerGraphicDescriptionContextImpl, WorkerMaterial, WorkerTexture } from \"./GraphicDescriptionContextImpl\";\r\nimport { GraphicDescriptionContext } from \"../../render/GraphicDescriptionContext\";\r\nimport { MeshArgs } from \"../../../render/MeshArgs\";\r\nimport { PolylineArgs } from \"../../../render/PolylineArgs\";\r\n\r\nexport type BatchDescription = Omit<BatchOptions, \"tileId\"> & {\r\n featureTable: ImdlModel.FeatureTable;\r\n range: Range3dProps;\r\n isVolumeClassifier?: boolean;\r\n modelId: Id64String;\r\n};\r\n\r\nexport interface GraphicDescriptionImpl extends GraphicDescription {\r\n type: GraphicType;\r\n primitives: ImdlModel.Primitive[];\r\n translation?: XYAndZ;\r\n batch?: BatchDescription;\r\n /** Initialized the first time createGraphicFromDescription remaps the description in-place using a GraphicDescriptionContext.\r\n * Subsequently attempting to remap using same context should be a no-op.\r\n * Attempting to remap using a different context is an error.\r\n */\r\n remapContext?: GraphicDescriptionContext;\r\n}\r\n\r\nexport class GraphicDescriptionBuilderImpl extends GraphicAssembler implements GraphicDescriptionBuilder {\r\n public readonly [_implementationProhibited] = undefined;\r\n private readonly _computeChordTolerance: (args: ComputeGraphicDescriptionChordToleranceArgs) => number;\r\n private readonly _context: WorkerGraphicDescriptionContextImpl;\r\n private readonly _viewIndependentOrigin?: Point3d;\r\n\r\n public constructor(options: GraphicDescriptionBuilderOptions) {\r\n const type = options.type;\r\n const placement = options.placement ?? Transform.createIdentity();\r\n const wantEdges = options.generateEdges ?? type === GraphicType.Scene;\r\n const wantNormals = wantEdges || type === GraphicType.Scene;\r\n const preserveOrder = type === GraphicType.ViewOverlay || type === GraphicType.WorldOverlay || type === GraphicType.ViewBackground;\r\n\r\n super({\r\n ...options,\r\n [_implementationProhibited]: undefined,\r\n type,\r\n placement,\r\n wantEdges,\r\n wantNormals,\r\n preserveOrder,\r\n });\r\n\r\n this._computeChordTolerance = options.computeChordTolerance;\r\n this._viewIndependentOrigin = options.viewIndependentOrigin?.clone();\r\n\r\n this._context = options.context as WorkerGraphicDescriptionContextImpl;\r\n if (!(this._context.transientIds instanceof TransientIdSequence)) {\r\n throw new Error(\"Invalid WorkerGraphicDescriptionContext\");\r\n }\r\n }\r\n\r\n public finish(): GraphicDescriptionImpl {\r\n const description: GraphicDescriptionImpl = {\r\n [_implementationProhibited]: undefined,\r\n type: this.type,\r\n primitives: [],\r\n };\r\n\r\n if (this[_accumulator].isEmpty) {\r\n return description;\r\n }\r\n\r\n const tolerance = this._computeChordTolerance({ builder: this, computeRange: () => this[_accumulator].geometries.computeRange() });\r\n const meshes = this[_accumulator].toMeshes(this, tolerance, this.pickable);\r\n if (meshes.length === 0) {\r\n return description;\r\n }\r\n\r\n // If the meshes contain quantized positions, they are all quantized to the same range. If that range is small relative to the distance\r\n // from the origin, quantization errors can produce display artifacts. Remove the translation from the quantization parameters and apply\r\n // it in the transform instead.\r\n // If the positions are not quantized, they have already been transformed to be relative to the center of the meshes' range.\r\n // Apply the inverse translation to put them back into model space.\r\n let transformOrigin: Point3d | undefined;\r\n let meshesRangeOffset = false;\r\n\r\n for (const mesh of meshes) {\r\n const verts = mesh.points;\r\n if (!transformOrigin) {\r\n // This is the first mesh we've processed.\r\n if (verts instanceof QPoint3dList) {\r\n transformOrigin = verts.params.origin.clone();\r\n verts.params.origin.setZero();\r\n } else {\r\n // In this case we need to modify the qOrigin of the graphic that will get created later since we have translated the origin.\r\n // We can't modify it directly, but if we temporarily modify the range of the mesh used to create it the qOrigin will get created properly.\r\n // Range is shared (not cloned) by all meshes and the mesh list itself, so modifying the range of the meshlist will modify it for all meshes.\r\n // This will become the range in local coordinates of the batch, if we are creating a batch.\r\n transformOrigin = verts.range.center;\r\n if (!meshesRangeOffset) {\r\n meshes.range?.low.subtractInPlace(transformOrigin);\r\n meshes.range?.high.subtractInPlace(transformOrigin);\r\n meshesRangeOffset = true;\r\n }\r\n }\r\n } else {\r\n if (verts instanceof QPoint3dList) {\r\n assert(transformOrigin.isAlmostEqual(verts.params.origin));\r\n verts.params.origin.setZero();\r\n } else {\r\n assert(verts.range.center.isAlmostZero);\r\n }\r\n }\r\n\r\n const primitive = this.createPrimitive(mesh);\r\n if (primitive) {\r\n const origin = this._viewIndependentOrigin;\r\n if (origin) {\r\n primitive.modifier = {\r\n type: \"viewIndependentOrigin\",\r\n origin: { x: origin.x, y: origin.y, z: origin.z },\r\n };\r\n }\r\n\r\n description.primitives.push(primitive);\r\n }\r\n }\r\n\r\n this[_accumulator].clear();\r\n if (transformOrigin) {\r\n description.translation = { x: transformOrigin.x, y: transformOrigin.y, z: transformOrigin.z };\r\n }\r\n\r\n const featureTable = this.pickable && meshes.features?.anyDefined ? meshes.features : undefined;\r\n if (featureTable) {\r\n assert(undefined !== this.pickable);\r\n const features = PackedFeatureTable.pack(featureTable);\r\n const range = meshes.range ?? new Range3d();\r\n description.batch = {\r\n ...this.pickable,\r\n range: range.toJSON(),\r\n modelId: this.pickable.modelId ?? this.pickable.id,\r\n featureTable: {\r\n multiModel: false,\r\n data: features.data,\r\n numFeatures: features.numFeatures,\r\n animationNodeIds: features.animationNodeIds,\r\n },\r\n };\r\n }\r\n\r\n return description;\r\n }\r\n\r\n private createPrimitive(mesh: Mesh): ImdlModel.Primitive | undefined {\r\n const meshArgs = mesh.toMeshArgs();\r\n if (meshArgs) {\r\n return this.createMeshPrimitive(meshArgs);\r\n }\r\n\r\n const polylineArgs = mesh.toPolylineArgs();\r\n if (!polylineArgs) {\r\n return undefined;\r\n }\r\n\r\n return polylineArgs.flags.isDisjoint ? this.createPointStringPrimitive(polylineArgs) : this.createPolylinePrimitive(polylineArgs);\r\n }\r\n\r\n private createMeshPrimitive(args: MeshArgs): ImdlModel.Primitive | undefined {\r\n const params = createMeshParams(args, this._context.constraints.maxTextureSize, true);\r\n\r\n let material;\r\n const mat = params.surface.material;\r\n if (mat) {\r\n assert(mat.isAtlas === false && mat.material instanceof WorkerMaterial);\r\n material = mat.material.toImdl();\r\n }\r\n\r\n let textureMapping;\r\n const tex = params.surface.textureMapping;\r\n if (tex) {\r\n assert(tex.texture instanceof WorkerTexture);\r\n textureMapping = { alwaysDisplayed: false, texture: tex.texture.index.toString(10) };\r\n }\r\n\r\n return {\r\n type: \"mesh\",\r\n params: {\r\n ...params,\r\n vertices: convertVertexTable(params.vertices),\r\n auxChannels: params.auxChannels?.toJSON(),\r\n edges: params.edges ? edgeParamsToImdl(params.edges) : undefined,\r\n surface: {\r\n ...params.surface,\r\n indices: params.surface.indices.data,\r\n material,\r\n textureMapping,\r\n },\r\n },\r\n };\r\n }\r\n\r\n private createPolylinePrimitive(args: PolylineArgs): ImdlModel.Primitive | undefined {\r\n const params = createPolylineParams(args, this._context.constraints.maxTextureSize);\r\n if (!params) {\r\n return undefined;\r\n }\r\n\r\n return {\r\n type: \"polyline\",\r\n params: {\r\n ...params,\r\n vertices: convertVertexTable(params.vertices),\r\n polyline: {\r\n indices: params.polyline.indices.data,\r\n prevIndices: params.polyline.prevIndices.data,\r\n nextIndicesAndParams: params.polyline.nextIndicesAndParams,\r\n },\r\n },\r\n };\r\n }\r\n\r\n private createPointStringPrimitive(args: PolylineArgs): ImdlModel.Primitive | undefined {\r\n const params = createPointStringParams(args, this._context.constraints.maxTextureSize);\r\n if (!params) {\r\n return undefined;\r\n }\r\n\r\n return {\r\n type: \"point\",\r\n params: {\r\n indices: params.indices.data,\r\n vertices: convertVertexTable(params.vertices),\r\n weight: params.weight,\r\n },\r\n };\r\n }\r\n\r\n protected override resolveGradient(gradient: Gradient.Symb) {\r\n return this._context.createGradientTexture(gradient);\r\n }\r\n}\r\n\r\nfunction convertVertexTable(src: VertexTable): ImdlModel.VertexTable {\r\n return {\r\n ...src,\r\n qparams: src.qparams.toJSON(),\r\n uvParams: src.uvParams?.toJSON(),\r\n uniformColor: src.uniformColor?.toJSON(),\r\n };\r\n}\r\n\r\nexport function isGraphicDescription(description: GraphicDescription): description is GraphicDescriptionImpl {\r\n const descr = description as GraphicDescriptionImpl;\r\n return \"object\" === typeof descr && Array.isArray(descr.primitives) && \"number\" === typeof descr.type;\r\n}\r\n\r\nexport function collectGraphicDescriptionTransferables(xfers: Set<Transferable>, description: GraphicDescription): void {\r\n if (!isGraphicDescription(description)) {\r\n throw new Error(\"Invalid GraphicDescription\");\r\n }\r\n\r\n for (const primitive of description.primitives) {\r\n addPrimitiveTransferables(xfers, primitive);\r\n }\r\n}\r\n\r\n"]}
|
|
1
|
+
{"version":3,"file":"GraphicDescriptionBuilderImpl.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GraphicDescriptionBuilderImpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphicDescriptionContextImpl.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GraphicDescriptionContextImpl.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { TransientIdSequence, TransientIdSequenceProps } from \"@itwin/core-bentley\";\r\nimport { _implementationProhibited } from \"../Symbols\";\r\nimport { GraphicDescriptionContextProps, WorkerGraphicDescriptionContext, WorkerGraphicDescriptionContextProps, WorkerTextureParams } from \"../../render/GraphicDescriptionContext\";\r\nimport { MaterialParams } from \"../../render/MaterialParams\";\r\nimport { ColorDef, ColorDefProps, Gradient, ImageBufferFormat, ImageSource, ImageSourceFormat, RenderMaterial, RenderTexture, RgbColor, RgbColorProps, TextureMapping, TextureTransparency } from \"@itwin/core-common\";\r\nimport { ImdlModel } from \"../../imdl/ImdlModel\";\r\n\r\n/** As part of a [[WorkerGraphicDescriptionContext]], describes constraints imposed by the [[RenderSystem]] that a [[GraphicDescriptionBuilder]] needs to know about\r\n * when creating a [[GraphicDescription]].\r\n */\r\nexport interface GraphicDescriptionConstraints {\r\n /** @internal */\r\n readonly [_implementationProhibited]: unknown;\r\n /** The maximum dimension (width or height) permitted for a single WebGL texture. */\r\n readonly maxTextureSize: number;\r\n}\r\n\r\nexport interface WorkerGraphicDescriptionContextPropsImpl extends WorkerGraphicDescriptionContextProps {\r\n readonly constraints: GraphicDescriptionConstraints;\r\n readonly transientIds: TransientIdSequenceProps;\r\n}\r\n\r\nexport interface GraphicDescriptionContextPropsImpl extends GraphicDescriptionContextProps {\r\n readonly transientIds: TransientIdSequenceProps;\r\n readonly textures: WorkerTextureProps[];\r\n /** This is set to true the first time we use RenderSystem.createGraphicDescriptionContext on it.\r\n * That prevents us from remapping transient Ids to different transient Ids, recreating duplicate textures+materials, etc if\r\n * somebody tries to resolve the same props more than once.\r\n * We will throw if somebody tries to re-resolve a GraphicDescriptionContextPropsImpl.\r\n */\r\n resolved?: boolean;\r\n}\r\n\r\nexport interface TextureUrlProps {\r\n url: string;\r\n transparency?: TextureTransparency;\r\n gradient?: never;\r\n imageBuffer?: never;\r\n imageSource?: never;\r\n width?: never;\r\n format?: never;\r\n}\r\n\r\nexport interface TextureImageBufferProps {\r\n imageBuffer: Uint8Array;\r\n format: ImageBufferFormat;\r\n transparency?: TextureTransparency;\r\n width: number;\r\n gradient?: never;\r\n imageSource?: never;\r\n url?: never;\r\n}\r\n\r\nexport interface TextureImageSourceProps {\r\n imageSource: Uint8Array | string;\r\n format: ImageSourceFormat;\r\n transparency?: TextureTransparency;\r\n width?: never;\r\n url?: never;\r\n imageBuffer?: never;\r\n gradient?: never;\r\n}\r\n\r\nexport interface TextureGradientSource {\r\n gradient: Gradient.Symb;\r\n transparency?: never;\r\n format?: never;\r\n imageBuffer?: never;\r\n imageSource?: never;\r\n url?: never;\r\n width?: never;\r\n}\r\n\r\nexport type TextureGradientSourceProps = Omit<TextureGradientSource, \"gradient\"> & { gradient: Gradient.SymbProps };\r\nexport type TextureSource = TextureUrlProps | TextureImageBufferProps | TextureImageSourceProps | TextureGradientSource;\r\nexport type TextureSourceProps = TextureUrlProps | TextureImageBufferProps | TextureImageSourceProps | TextureGradientSourceProps;\r\n\r\nexport interface WorkerTextureProps {\r\n type: RenderTexture.Type;\r\n transparency?: TextureTransparency;\r\n source: TextureSourceProps;\r\n}\r\n\r\nexport class WorkerTexture extends RenderTexture {\r\n public readonly index: number;\r\n public readonly source: TextureSource;\r\n\r\n public constructor(index: number, params: WorkerTextureParams | Gradient.Symb) {\r\n let type = RenderTexture.Type.Normal;\r\n if (!(params instanceof Gradient.Symb) && undefined !== params.type) {\r\n type = params.type;\r\n }\r\n\r\n super(type);\r\n\r\n this.index = index;\r\n if (params instanceof Gradient.Symb) {\r\n this.source = { gradient: params };\r\n } else {\r\n const transparency = params.transparency;\r\n if (params.source instanceof URL) {\r\n this.source = { transparency, url: params.source.toString() };\r\n } else if (params.source instanceof ImageSource) {\r\n this.source = { transparency, imageSource: params.source.data, format: params.source.format };\r\n } else {\r\n this.source = { transparency, imageBuffer: params.source.data, format: params.source.format, width: params.source.width };\r\n }\r\n }\r\n }\r\n\r\n public override dispose() { }\r\n public override get bytesUsed() { return 0; } // doesn't matter, nobody's calling this.\r\n\r\n public toProps(xfer: Set<Transferable>): WorkerTextureProps {\r\n const source = this.source.gradient ? { ...this.source, gradient: this.source.gradient.toJSON() } : this.source;\r\n const buffer = source.imageBuffer ?? source.imageSource;\r\n if (buffer instanceof Uint8Array) {\r\n xfer.add(buffer.buffer);\r\n }\r\n\r\n return {\r\n type: this.type,\r\n source,\r\n };\r\n }\r\n}\r\n\r\nfunction materialColorToImdl(color: ColorDef | RgbColorProps | undefined): ColorDefProps | undefined {\r\n if (!(color instanceof ColorDef)) {\r\n color = RgbColor.fromJSON(color).toColorDef();\r\n }\r\n\r\n return color?.toJSON();\r\n}\r\n\r\nexport class WorkerMaterial extends RenderMaterial {\r\n public readonly params: MaterialParams;\r\n\r\n public constructor(params: MaterialParams) {\r\n let textureMapping;\r\n if (params.textureMapping) {\r\n textureMapping = new TextureMapping(params.textureMapping.texture, new TextureMapping.Params({\r\n textureMat2x3: params.textureMapping.transform,\r\n mapMode: params.textureMapping.mode,\r\n textureWeight: params.textureMapping.weight,\r\n worldMapping: params.textureMapping.worldMapping,\r\n useConstantLod: params.textureMapping.useConstantLod,\r\n constantLodProps: params.textureMapping.constantLodProps,\r\n }));\r\n textureMapping.normalMapParams = params.textureMapping.normalMapParams;\r\n }\r\n\r\n super({ textureMapping });\r\n\r\n this.params = params;\r\n }\r\n\r\n public toImdl(): ImdlModel.SurfaceMaterial {\r\n let diffuse;\r\n if (this.params.diffuse) {\r\n diffuse = {\r\n weight: this.params.diffuse.weight,\r\n color: materialColorToImdl(this.params.diffuse.color),\r\n };\r\n }\r\n\r\n let specular;\r\n if (this.params.specular) {\r\n specular = {\r\n weight: this.params.specular.weight,\r\n exponent: this.params.specular.exponent,\r\n color: materialColorToImdl(this.params.specular.color),\r\n };\r\n }\r\n\r\n return {\r\n isAtlas: false,\r\n material: {\r\n alpha: this.params.alpha,\r\n diffuse,\r\n specular,\r\n },\r\n };\r\n }\r\n}\r\n\r\nexport class WorkerGraphicDescriptionContextImpl implements WorkerGraphicDescriptionContext {\r\n public readonly [_implementationProhibited] = undefined;\r\n public readonly constraints: GraphicDescriptionConstraints;\r\n public readonly transientIds: TransientIdSequence;\r\n public readonly textures: WorkerTexture[] = [];\r\n public readonly materials: WorkerMaterial[] = [];\r\n\r\n public constructor(props: WorkerGraphicDescriptionContextProps) {\r\n const propsImpl = props as WorkerGraphicDescriptionContextPropsImpl;\r\n if (typeof propsImpl.transientIds !== \"object\" || typeof propsImpl.constraints !== \"object\") {\r\n throw new Error(\"Invalid WorkerGraphicDescriptionContextProps\");\r\n }\r\n\r\n this.constraints = propsImpl.constraints;\r\n this.transientIds = TransientIdSequence.fromJSON(propsImpl.transientIds);\r\n }\r\n\r\n public createMaterial(params: MaterialParams): RenderMaterial {\r\n const material = new WorkerMaterial(params);\r\n this.materials.push(material);\r\n return material;\r\n }\r\n\r\n public createTexture(params: WorkerTextureParams): RenderTexture {\r\n const texture = new WorkerTexture(this.textures.length, params);\r\n this.textures.push(texture);\r\n return texture;\r\n }\r\n\r\n public createGradientTexture(gradient: Gradient.Symb): RenderTexture {\r\n const existing = this.textures.find((tx) => tx.source.gradient && tx.source.gradient.equals(gradient));\r\n if (existing) {\r\n return existing;\r\n }\r\n\r\n const texture = new WorkerTexture(this.textures.length, gradient);\r\n this.textures.push(texture);\r\n return texture;\r\n }\r\n\r\n public toProps(transferables: Set<Transferable>): GraphicDescriptionContextPropsImpl {\r\n // We don't yet have any transferable objects. In the future we expect to support transferring texture image data for textures created on the worker thread.\r\n return {\r\n [_implementationProhibited]: undefined,\r\n transientIds: this.transientIds.toJSON(),\r\n textures: this.textures.map((tx) => tx.toProps(transferables)),\r\n };\r\n }\r\n}\r\n\r\n"]}
|
|
1
|
+
{"version":3,"file":"GraphicDescriptionContextImpl.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/GraphicDescriptionContextImpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstancedGraphicPropsBuilder.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/InstancedGraphicPropsBuilder.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAgB,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;AAErC;;GAEG;AACH,MAAM,OAAO,4BAA4B;IACtB,UAAU,GAAe,EAAE,CAAC;IAC5B,eAAe,GAAG,IAAI,OAAO,EAAE,CAAC;IACzC,cAAc,GAAG,KAAK,CAAC;IAExB,GAAG,CAAC,QAAkB;QAC3B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtH,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/C,MAAM,CAAC,YAAsC;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QACxC,MAAM,eAAe,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAEzD,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACxG,MAAM,YAAY,GAAG,YAAa,CAAC,MAAM,CAAC,OAAO,IAAI,cAAc,CAAC,CAAC;gBACrE,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC;gBAC5C,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrD,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1D,CAAC;YAED,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC;YAChC,IAAI,kBAAkB,IAAI,IAAI,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrB,IAAI,KAAK,wBAAgB,CAAC;gBAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;oBACzB,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;oBACnE,KAAK,6BAAmB,CAAC;gBAC3B,CAAC;gBAED,IAAI,SAAS,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;oBAClC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACzE,KAAK,8BAAqB,CAAC;gBAC7B,CAAC;gBAED,IAAI,SAAS,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC7B,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC1E,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC1E,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC1E,KAAK,wBAAgB,CAAC;gBACxB,CAAC;gBAED,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;YACrC,CAAC;YAED,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC;YAC9B,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5E,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC;YAErB,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAE/B,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAE/B,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3C,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5C,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,OAAO;YACL,KAAK;YACL,UAAU;YACV,eAAe;YACf,UAAU;YACV,kBAAkB;SACnB,CAAC;IACJ,CAAC;CACF"
|
|
1
|
+
{"version":3,"file":"InstancedGraphicPropsBuilder.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/InstancedGraphicPropsBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineCode.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/LineCode.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAkB;IACvD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;AACH,CAAC"
|
|
1
|
+
{"version":3,"file":"LineCode.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/LineCode.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAkB;IACvD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeshBuilder.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshBuilder.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { assert, Dictionary } from \"@itwin/core-bentley\";\r\nimport { Angle, IndexedPolyface, Point2d, Point3d, Polyface, PolyfaceVisitor, Range3d, Vector3d } from \"@itwin/core-geometry\";\r\nimport { Feature, MeshEdge, MeshEdges, MeshPolyline, OctEncodedNormal, OctEncodedNormalPair, QPoint3dList, TextureMapping } from \"@itwin/core-common\";\r\nimport { DisplayParams } from \"./DisplayParams\";\r\nimport { Triangle, TriangleKey, TriangleSet } from \"./Primitives\";\r\nimport { StrokesPrimitivePointLists } from \"./Strokes\";\r\nimport { VertexKey, VertexKeyProps, VertexMap } from \"./VertexKey\";\r\nimport { Mesh } from \"./MeshPrimitives\";\r\n\r\n// Describes a vertex along with the index of the source vertex in the source PolyfaceVisitor.\r\ntype VertexKeyPropsWithIndex = VertexKeyProps & { sourceIndex: number };\r\n\r\n/** @internal */\r\nexport class MeshBuilder {\r\n public readonly vertexMap: VertexMap;\r\n private _triangleSet?: TriangleSet;\r\n private _currentPolyface?: MeshBuilderPolyface;\r\n public readonly mesh: Mesh;\r\n public readonly tolerance: number;\r\n public readonly areaTolerance: number;\r\n public readonly tileRange: Range3d;\r\n public get currentPolyface(): MeshBuilderPolyface | undefined { return this._currentPolyface; }\r\n public get displayParams(): DisplayParams { return this.mesh.displayParams; }\r\n public set displayParams(params: DisplayParams) { this.mesh.displayParams = params; }\r\n\r\n /** create reference for triangleSet on demand */\r\n public get triangleSet(): TriangleSet {\r\n if (undefined === this._triangleSet)\r\n this._triangleSet = new TriangleSet();\r\n\r\n return this._triangleSet;\r\n }\r\n\r\n private constructor(mesh: Mesh, tolerance: number, areaTolerance: number, tileRange: Range3d) {\r\n this.mesh = mesh;\r\n this.tolerance = tolerance;\r\n this.areaTolerance = areaTolerance;\r\n this.tileRange = tileRange;\r\n\r\n let vertexTolerance;\r\n if (mesh.points instanceof QPoint3dList) {\r\n const p0 = mesh.points.params.unquantize(0, 0, 0);\r\n const p1 = mesh.points.params.unquantize(1, 1, 1);\r\n vertexTolerance = p1.minus(p0, p0);\r\n } else {\r\n vertexTolerance = { x: tolerance, y: tolerance, z: tolerance };\r\n }\r\n\r\n this.vertexMap = new VertexMap(vertexTolerance);\r\n }\r\n\r\n /** create a new MeshBuilder */\r\n public static create(props: MeshBuilder.Props): MeshBuilder {\r\n const mesh = Mesh.create(props);\r\n const { tolerance, areaTolerance, range } = props;\r\n return new MeshBuilder(mesh, tolerance, areaTolerance, range);\r\n }\r\n\r\n /**\r\n * iterate through each point list of the strokes primitive and either load the point string or polyline into builder\r\n * @param strokes lists of stroke primitive point lists to iterate\r\n * @param isDisjoint if true add point string, else add polyline\r\n * @param fillColor\r\n */\r\n public addStrokePointLists(strokes: StrokesPrimitivePointLists, isDisjoint: boolean, fillColor: number, feature: Feature | undefined): void {\r\n for (const strokePoints of strokes) {\r\n if (isDisjoint)\r\n this.addPointString(strokePoints.points, fillColor, feature);\r\n else\r\n this.addPolyline(strokePoints.points, fillColor, feature);\r\n }\r\n }\r\n\r\n /**\r\n * add data from polyface into mesh builder\r\n * @param polyface the indexed polyface to iterate the facets of to load each facet's triangles' vertices\r\n * @param props the properties required for this operation\r\n */\r\n public addFromPolyface(polyface: IndexedPolyface, props: MeshBuilder.PolyfaceOptions, feature: Feature | undefined): void {\r\n this.beginPolyface(polyface, props.edgeOptions);\r\n const visitor = polyface.createVisitor();\r\n\r\n while (visitor.moveToNextFacet()) {\r\n this.addFromPolyfaceVisitor(visitor, props, feature);\r\n }\r\n\r\n this.endPolyface();\r\n }\r\n\r\n /**\r\n * @param visitor the PolyfaceVisitor containing the face data to be added\r\n * @param props the properties required for this operation:\r\n */\r\n public addFromPolyfaceVisitor(visitor: PolyfaceVisitor, options: MeshBuilder.PolyfaceOptions, feature: Feature | undefined): void {\r\n const { pointCount, normalCount, paramCount, requireNormals } = visitor;\r\n const { includeParams, mappedTexture } = options;\r\n\r\n const isDegenerate = requireNormals && normalCount < pointCount; // TFS#790263: Degenerate triangle - no normals.\r\n\r\n // a triangle must have at least 3 points\r\n if (pointCount < 3 || isDegenerate)\r\n return;\r\n\r\n const haveParam = includeParams && paramCount > 0;\r\n const triangleCount = pointCount - 2;\r\n\r\n assert(!includeParams || paramCount > 0);\r\n assert(!haveParam || undefined !== mappedTexture);\r\n\r\n // The face represented by this visitor should be convex (we request that in facet options) - so we do a simple fan triangulation.\r\n const polyfaceVisitorOptions = { ...options, triangleCount, haveParam };\r\n for (let triangleIndex = 0; triangleIndex < triangleCount; triangleIndex++) {\r\n const triangle = this.createTriangle(triangleIndex, visitor, polyfaceVisitorOptions, feature);\r\n if (undefined !== triangle)\r\n this.addTriangle(triangle);\r\n }\r\n }\r\n\r\n public createTriangleVertices(triangleIndex: number, visitor: PolyfaceVisitor, options: MeshBuilder.PolyfaceVisitorOptions, feature: Feature | undefined): VertexKeyPropsWithIndex[] | undefined {\r\n const { point, requireNormals } = visitor;\r\n const { fillColor, haveParam } = options;\r\n\r\n // If we do not have UVParams stored on the IndexedPolyface, compute them now\r\n let params: Point2d[] | undefined;\r\n if (haveParam && options.mappedTexture) {\r\n assert(this.mesh.points.length === 0 || this.mesh.uvParams.length !== 0);\r\n const mappedTexture = options.mappedTexture;\r\n const transformToImodel = mappedTexture.params.textureMatrix.transform;\r\n if (transformToImodel)\r\n params = mappedTexture.computeUVParams(visitor, transformToImodel);\r\n assert(params !== undefined);\r\n }\r\n\r\n const vertices = [];\r\n for (let i = 0; i < 3; ++i) {\r\n const vertexIndex = 0 === i ? 0 : triangleIndex + i;\r\n const position = point.getPoint3dAtUncheckedPointIndex(vertexIndex);\r\n const normal = requireNormals ? OctEncodedNormal.fromVector(visitor.getNormal(vertexIndex)!) : undefined;\r\n const uvParam: Point2d | undefined = params ? params[vertexIndex] : undefined;\r\n vertices[i] = { position, fillColor, normal, uvParam, sourceIndex: vertexIndex, feature };\r\n }\r\n\r\n // Previously we would add all 3 vertices to our map, then detect degenerate triangles in AddTriangle().\r\n // This led to unused vertex data, and caused mismatch in # of vertices when recreating the MeshBuilder from the data in the tile cache.\r\n // Detect beforehand instead.\r\n if (this.vertexMap.arePositionsAlmostEqual(vertices[0], vertices[1])\r\n || this.vertexMap.arePositionsAlmostEqual(vertices[0], vertices[2])\r\n || this.vertexMap.arePositionsAlmostEqual(vertices[1], vertices[2]))\r\n return undefined;\r\n\r\n return vertices;\r\n }\r\n\r\n public createTriangle(triangleIndex: number, visitor: PolyfaceVisitor, options: MeshBuilder.PolyfaceVisitorOptions, feature: Feature | undefined): Triangle | undefined {\r\n // generate vertex key properties for each of the three sides of the triangle\r\n const vertices = this.createTriangleVertices(triangleIndex, visitor, options, feature);\r\n\r\n // avoid creating degenerate triangles\r\n if (undefined === vertices)\r\n return undefined;\r\n\r\n const { edgeVisible } = visitor;\r\n\r\n const triangle = new Triangle();\r\n\r\n triangle.setEdgeVisibility(\r\n 0 === triangleIndex ? edgeVisible[0] : false,\r\n edgeVisible[triangleIndex + 1],\r\n triangleIndex === options.triangleCount - 1 ? edgeVisible[triangleIndex + 2] : false,\r\n );\r\n\r\n // set each triangle index to the index associated with the vertex key location in the vertex map\r\n vertices.forEach((vertexProps, i: number) => {\r\n let vertexKeyIndex;\r\n if (visitor.auxData) {\r\n // No deduplication with auxData (for now...)\r\n vertexKeyIndex = this.mesh.addVertex(vertexProps);\r\n this.mesh.addAuxChannels(visitor.auxData.channels, vertexProps.sourceIndex);\r\n } else {\r\n vertexKeyIndex = this.addVertex(vertexProps);\r\n }\r\n\r\n triangle.indices[i] = vertexKeyIndex;\r\n\r\n // if the current polyface exists, map the vertex key index to the visitor's client point index\r\n if (this.currentPolyface !== undefined)\r\n this.currentPolyface.vertexIndexMap.set(vertexKeyIndex, visitor.clientPointIndex(vertexProps.sourceIndex));\r\n });\r\n\r\n return triangle;\r\n }\r\n\r\n /** removed Feature for now */\r\n public addPolyline(points: Point3d[], fillColor: number, feature: Feature | undefined): void {\r\n const { mesh } = this;\r\n\r\n const poly = new MeshPolyline();\r\n for (const position of points)\r\n poly.addIndex(this.addVertex({ position, fillColor, feature }));\r\n\r\n mesh.addPolyline(poly);\r\n }\r\n\r\n /** removed Feature for now */\r\n public addPointString(points: Point3d[], fillColor: number, feature: Feature | undefined): void {\r\n const { mesh } = this;\r\n const poly = new MeshPolyline();\r\n\r\n for (const position of points)\r\n poly.addIndex(this.addVertex({ position, fillColor, feature }));\r\n\r\n mesh.addPolyline(poly);\r\n }\r\n\r\n public beginPolyface(polyface: Polyface, options: MeshEdgeCreationOptions): void {\r\n if (!options.generateNoEdges) {\r\n const triangles = this.mesh.triangles;\r\n this._currentPolyface = new MeshBuilderPolyface(polyface, options, triangles === undefined ? 0 : triangles.length);\r\n }\r\n }\r\n\r\n public endPolyface(): void {\r\n const { currentPolyface, mesh } = this;\r\n if (undefined === currentPolyface)\r\n return;\r\n\r\n this._currentPolyface = undefined;\r\n buildMeshEdges(mesh, currentPolyface);\r\n }\r\n\r\n public addVertex(vertex: VertexKeyProps, addToMeshOnInsert = true): number {\r\n // if vertex key isn't duplicate, then also insert properties into mesh\r\n const onInsert = (vk: VertexKey) => this.mesh.addVertex(vk);\r\n return this.vertexMap.insertKey(vertex, addToMeshOnInsert ? onInsert : undefined);\r\n }\r\n\r\n public addTriangle(triangle: Triangle): void {\r\n // Attempt to avoid adding vertices originating from degenerate triangles before we get here.\r\n // Removed assert and just return if degenerate at this point because uncommon cases (not worth testing for) can still occur.\r\n if (triangle.isDegenerate)\r\n return;\r\n\r\n const onInsert = (_vk: TriangleKey) => this.mesh.addTriangle(triangle);\r\n this.triangleSet.insertKey(triangle, onInsert);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport namespace MeshBuilder {\r\n export interface Props extends Mesh.Props {\r\n tolerance: number;\r\n areaTolerance: number;\r\n }\r\n export interface PolyfaceOptions {\r\n includeParams: boolean;\r\n fillColor: number;\r\n mappedTexture?: TextureMapping;\r\n edgeOptions: MeshEdgeCreationOptions;\r\n }\r\n\r\n export interface PolyfaceVisitorOptions extends PolyfaceOptions {\r\n triangleCount: number;\r\n haveParam: boolean;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshEdgeCreationOptions {\r\n public readonly type: MeshEdgeCreationOptions.Type;\r\n public readonly minCreaseAngle = 20.0 * Angle.radiansPerDegree;\r\n public get generateAllEdges(): boolean { return this.type === MeshEdgeCreationOptions.Type.AllEdges; }\r\n public get generateNoEdges(): boolean { return this.type === MeshEdgeCreationOptions.Type.NoEdges; }\r\n public get generateCreaseEdges(): boolean { return 0 !== (this.type & MeshEdgeCreationOptions.Type.CreaseEdges); }\r\n /** Create edge chains for polyfaces that do not already have them. */\r\n public get createEdgeChains(): boolean { return 0 !== (this.type & MeshEdgeCreationOptions.Type.CreateChains); }\r\n constructor(type = MeshEdgeCreationOptions.Type.NoEdges) { this.type = type; }\r\n}\r\n\r\n/** @internal */\r\nexport namespace MeshEdgeCreationOptions {\r\n export enum Type {\r\n NoEdges = 0x0000,\r\n CreaseEdges = 0x0001 << 1,\r\n SmoothEdges = 0x0001 << 2,\r\n CreateChains = 0x0001 << 3,\r\n DefaultEdges = CreaseEdges,\r\n AllEdges = CreaseEdges | SmoothEdges,\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class MeshBuilderPolyface {\r\n public readonly polyface: Polyface;\r\n public readonly edgeOptions: MeshEdgeCreationOptions;\r\n public readonly vertexIndexMap: Map<number, number> = new Map<number, number>();\r\n public readonly baseTriangleIndex: number;\r\n constructor(polyface: Polyface, edgeOptions: MeshEdgeCreationOptions, baseTriangleIndex: number) {\r\n this.polyface = polyface;\r\n this.edgeOptions = edgeOptions;\r\n this.baseTriangleIndex = baseTriangleIndex;\r\n }\r\n}\r\n\r\nclass EdgeInfo {\r\n public faceIndex1?: number;\r\n\r\n public constructor(\r\n public visible: boolean,\r\n public faceIndex0: number,\r\n public edge: MeshEdge,\r\n public point0: Point3d,\r\n public point1: Point3d) {\r\n }\r\n\r\n public addFace(visible: boolean, faceIndex: number) {\r\n if (undefined === this.faceIndex1) {\r\n this.visible ||= visible;\r\n this.faceIndex1 = faceIndex;\r\n }\r\n }\r\n}\r\n\r\nfunction buildMeshEdges(mesh: Mesh, polyface: MeshBuilderPolyface): void {\r\n if (!mesh.triangles)\r\n return;\r\n\r\n const edgeMap = new Dictionary<MeshEdge, EdgeInfo>((lhs, rhs) => lhs.compareTo(rhs));\r\n const triangleNormals: Vector3d[] = [];\r\n\r\n // We need to detect the edge pairs -- Can't do that from the Mesh indices as these are not shared - so we'll\r\n // assume that the polyface indices are properly shared, this should be true as a seperate index array is used\r\n // for Polyfaces.\r\n const triangle = new Triangle();\r\n const polyfacePoints = [new Point3d(), new Point3d(), new Point3d()];\r\n const polyfaceIndices = [0, 0, 0];\r\n\r\n for (let triangleIndex = polyface.baseTriangleIndex; triangleIndex < mesh.triangles.length; triangleIndex++) {\r\n let indexNotFound = false;\r\n mesh.triangles.getTriangle(triangleIndex, triangle);\r\n for (let j = 0; j < 3; j++) {\r\n const foundPolyfaceIndex = polyface.vertexIndexMap.get(triangle.indices[j]);\r\n assert(undefined !== foundPolyfaceIndex);\r\n if (undefined === foundPolyfaceIndex) {\r\n indexNotFound = true;\r\n continue;\r\n }\r\n\r\n polyfaceIndices[j] = foundPolyfaceIndex;\r\n polyface.polyface.data.getPoint(foundPolyfaceIndex, polyfacePoints[j]);\r\n }\r\n\r\n if (indexNotFound)\r\n continue;\r\n\r\n for (let j = 0; j < 3; j++) {\r\n const jNext = (j + 1) % 3;\r\n const triangleNormalIndex = triangleNormals.length;\r\n const meshEdge = new MeshEdge(triangle.indices[j], triangle.indices[jNext]);\r\n const polyfaceEdge = new MeshEdge(polyfaceIndices[j], polyfaceIndices[jNext]);\r\n const edgeInfo = new EdgeInfo(triangle.isEdgeVisible(j), triangleNormalIndex, meshEdge, polyfacePoints[j], polyfacePoints[jNext]);\r\n\r\n const findOrInsert = edgeMap.findOrInsert(polyfaceEdge, edgeInfo);\r\n if (!findOrInsert.inserted)\r\n findOrInsert.value.addFace(edgeInfo.visible, triangleNormalIndex);\r\n }\r\n\r\n const normal = Vector3d.createCrossProductToPoints(polyfacePoints[0], polyfacePoints[1], polyfacePoints[2]);\r\n normal.normalizeInPlace();\r\n triangleNormals.push(normal);\r\n }\r\n\r\n // If there is no visibility indication in the mesh, infer from the mesh geometry.\r\n if (!polyface.edgeOptions.generateAllEdges) {\r\n const minEdgeDot = Math.cos(polyface.edgeOptions.minCreaseAngle);\r\n for (const edgeInfo of edgeMap.values()) {\r\n if (undefined !== edgeInfo.faceIndex1) {\r\n const normal0 = triangleNormals[edgeInfo.faceIndex0];\r\n const normal1 = triangleNormals[edgeInfo.faceIndex1];\r\n if (Math.abs(normal0.dotProduct(normal1)) > minEdgeDot)\r\n edgeInfo.visible = false;\r\n }\r\n }\r\n }\r\n\r\n // Now populate the MeshEdges.\r\n // ###TODO edge chains?\r\n if (undefined === mesh.edges)\r\n mesh.edges = new MeshEdges();\r\n\r\n const maxPlanarDot = 0.999999;\r\n for (const edgeInfo of edgeMap.values()) {\r\n if (edgeInfo.visible) {\r\n mesh.edges.visible.push(edgeInfo.edge);\r\n } else if (undefined !== edgeInfo.faceIndex1) {\r\n const normal0 = triangleNormals[edgeInfo.faceIndex0];\r\n const normal1 = triangleNormals[edgeInfo.faceIndex1];\r\n if (Math.abs(normal0.dotProduct(normal1)) < maxPlanarDot) {\r\n mesh.edges.silhouette.push(edgeInfo.edge);\r\n mesh.edges.silhouetteNormals.push(new OctEncodedNormalPair(OctEncodedNormal.fromVector(normal0), OctEncodedNormal.fromVector(normal1)));\r\n }\r\n }\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"MeshBuilder.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeshBuilderMap.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshBuilderMap.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { compareBooleans, compareNumbers, Dictionary, Id64String } from \"@itwin/core-bentley\";\r\nimport { Range3d } from \"@itwin/core-geometry\";\r\nimport { Feature, FeatureTable } from \"@itwin/core-common\";\r\nimport { DisplayParams } from \"./DisplayParams\";\r\nimport { MeshPrimitiveType } from \"./MeshPrimitive\";\r\nimport { GeometryList } from \"./GeometryList\";\r\nimport { Geometry } from \"./GeometryPrimitives\";\r\nimport { PolyfacePrimitive } from \"./Polyface\";\r\nimport { GeometryOptions, ToleranceRatio } from \"./Primitives\";\r\nimport { StrokesPrimitive } from \"./Strokes\";\r\nimport { MeshBuilder, MeshEdgeCreationOptions } from \"./MeshBuilder\";\r\nimport { Mesh, MeshList } from \"./MeshPrimitives\";\r\n\r\n/** @internal */\r\nexport class MeshBuilderMap extends Dictionary<MeshBuilderMap.Key, MeshBuilder> {\r\n public readonly range: Range3d;\r\n public readonly vertexTolerance: number;\r\n public readonly facetAreaTolerance: number;\r\n public readonly tolerance: number;\r\n public readonly is2d: boolean;\r\n public readonly features?: FeatureTable;\r\n public readonly options: GeometryOptions;\r\n private readonly _isVolumeClassifier: boolean;\r\n private _keyOrder = 0;\r\n\r\n constructor(tolerance: number, range: Range3d, is2d: boolean, options: GeometryOptions, pickable: { isVolumeClassifier?: boolean, modelId?: Id64String } | undefined) {\r\n super((lhs: MeshBuilderMap.Key, rhs: MeshBuilderMap.Key) => lhs.compare(rhs));\r\n this.tolerance = tolerance;\r\n this.vertexTolerance = tolerance * ToleranceRatio.vertex;\r\n this.facetAreaTolerance = tolerance * ToleranceRatio.facetArea;\r\n this.range = range;\r\n this.is2d = is2d;\r\n this.options = options;\r\n this._isVolumeClassifier = pickable?.isVolumeClassifier ?? false;\r\n\r\n if (pickable)\r\n this.features = new FeatureTable(2048 * 1024, pickable.modelId);\r\n }\r\n\r\n public static createFromGeometries(geometries: GeometryList, tolerance: number, range: Range3d, is2d: boolean, options: GeometryOptions, pickable: { isVolumeClassifier?: boolean, modelId?: Id64String } | undefined): MeshBuilderMap {\r\n const map = new MeshBuilderMap(tolerance, range, is2d, options, pickable);\r\n\r\n for (const geom of geometries)\r\n map.loadGeometry(geom);\r\n\r\n return map;\r\n }\r\n\r\n public toMeshes(): MeshList {\r\n const meshes = new MeshList(this.features, this.range);\r\n for (const builder of this._values) {\r\n if (builder.mesh.points.length > 0)\r\n meshes.push(builder.mesh);\r\n }\r\n return meshes;\r\n }\r\n\r\n /**\r\n * extract polyfaces and strokes from geometry into MeshBuilder stored in builderMap\r\n * @param geom Geometry instance to extract polyfaces and strokes from\r\n */\r\n public loadGeometry(geom: Geometry): void {\r\n this.loadPolyfacePrimitiveList(geom);\r\n this.loadStrokePrimitiveList(geom);\r\n }\r\n\r\n /**\r\n * extract polyface primitives from geometry in meshBuilder stored in builderMap\r\n * @param geom Geometry instance to extract polyfaces from\r\n */\r\n public loadPolyfacePrimitiveList(geom: Geometry): void {\r\n const polyfaces = geom.getPolyfaces(this.tolerance);\r\n\r\n if (polyfaces !== undefined)\r\n for (const polyface of polyfaces)\r\n this.loadIndexedPolyface(polyface, geom.feature);\r\n }\r\n\r\n /**\r\n * extract indexed polyfaces into meshBuilder stored in builderMap\r\n * @param polyface PolyfacePrimitive to extract indexed polyfaces from\r\n */\r\n public loadIndexedPolyface(polyface: PolyfacePrimitive, feature: Feature | undefined): void {\r\n const { indexedPolyface, displayParams, isPlanar } = polyface;\r\n const { pointCount, normalCount } = indexedPolyface;\r\n const { fillColor, isTextured } = displayParams;\r\n const textureMapping = displayParams.textureMapping;\r\n\r\n if (pointCount === 0)\r\n return;\r\n\r\n const builder = this.getBuilder(displayParams, MeshPrimitiveType.Mesh, normalCount > 0, isPlanar);\r\n const edgeOptions = new MeshEdgeCreationOptions(polyface.displayEdges && this.options.wantEdges ? MeshEdgeCreationOptions.Type.DefaultEdges : MeshEdgeCreationOptions.Type.NoEdges);\r\n builder.addFromPolyface(indexedPolyface, { edgeOptions, includeParams: isTextured, fillColor: fillColor.tbgr, mappedTexture: textureMapping }, feature);\r\n }\r\n\r\n /**\r\n * extract stroke primitives from geometry in meshBuilder stored in builderMap\r\n * @param geom Geometry instance to extract strokes from\r\n */\r\n public loadStrokePrimitiveList(geom: Geometry): void {\r\n const strokes = geom.getStrokes(this.tolerance);\r\n\r\n if (undefined !== strokes)\r\n for (const stroke of strokes)\r\n this.loadStrokesPrimitive(stroke, geom.feature);\r\n }\r\n\r\n /**\r\n * extract strokes primitive into meshBuilder stored in builderMap\r\n * @param strokePrimitive StrokesPrimitive instance to extractfrom\r\n */\r\n public loadStrokesPrimitive(strokePrimitive: StrokesPrimitive, feature: Feature | undefined): void {\r\n const { displayParams, isDisjoint, isPlanar, strokes } = strokePrimitive;\r\n\r\n const type = isDisjoint ? MeshPrimitiveType.Point : MeshPrimitiveType.Polyline;\r\n const builder = this.getBuilder(displayParams, type, false, isPlanar);\r\n builder.addStrokePointLists(strokes, isDisjoint, displayParams.lineColor.tbgr, feature);\r\n }\r\n\r\n public getBuilder(displayParams: DisplayParams, type: MeshPrimitiveType, hasNormals: boolean, isPlanar: boolean): MeshBuilder {\r\n const { facetAreaTolerance, tolerance, is2d, range } = this;\r\n const key = this.getKey(displayParams, type, hasNormals, isPlanar);\r\n\r\n const quantizePositions = false; // ###TODO should this be configurable?\r\n return this.getBuilderFromKey(key, {\r\n displayParams,\r\n type,\r\n range,\r\n quantizePositions,\r\n is2d,\r\n isPlanar,\r\n tolerance,\r\n areaTolerance: facetAreaTolerance,\r\n features: this.features,\r\n isVolumeClassifier: this._isVolumeClassifier,\r\n });\r\n }\r\n\r\n public getKey(displayParams: DisplayParams, type: MeshPrimitiveType, hasNormals: boolean, isPlanar: boolean): MeshBuilderMap.Key {\r\n const key = new MeshBuilderMap.Key(displayParams, type, hasNormals, isPlanar);\r\n\r\n if (this.options.preserveOrder)\r\n key.order = ++this._keyOrder;\r\n\r\n return key;\r\n }\r\n\r\n /**\r\n * gets builder associated with key if defined, otherwise creates a new builder and sets that with key\r\n * @param key MeshBuilderMap.Key to associate with builder\r\n * @param props MeshBuilder.Props required to create builder if it does not already exist\r\n * @returns builder reference, changes will update instance stored in builderMap\r\n */\r\n public getBuilderFromKey(key: MeshBuilderMap.Key, props: MeshBuilder.Props): MeshBuilder {\r\n let builder = this.get(key);\r\n if (undefined === builder) {\r\n builder = MeshBuilder.create(props);\r\n this.set(key, builder);\r\n }\r\n return builder;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport namespace MeshBuilderMap {\r\n export class Key {\r\n public order: number = 0;\r\n public readonly params: DisplayParams;\r\n public readonly type: MeshPrimitiveType;\r\n public readonly hasNormals: boolean;\r\n public readonly isPlanar: boolean;\r\n\r\n constructor(params: DisplayParams, type: MeshPrimitiveType, hasNormals: boolean, isPlanar: boolean) {\r\n this.params = params;\r\n this.type = type;\r\n this.hasNormals = hasNormals;\r\n this.isPlanar = isPlanar;\r\n }\r\n\r\n public static createFromMesh(mesh: Mesh): Key {\r\n return new Key(mesh.displayParams, mesh.type, mesh.normals.length !== 0, mesh.isPlanar);\r\n }\r\n\r\n public compare(rhs: Key): number {\r\n let diff = compareNumbers(this.order, rhs.order);\r\n if (0 === diff) {\r\n diff = compareNumbers(this.type, rhs.type);\r\n if (0 === diff) {\r\n diff = compareBooleans(this.isPlanar, rhs.isPlanar);\r\n if (0 === diff) {\r\n diff = compareBooleans(this.hasNormals, rhs.hasNormals);\r\n if (0 === diff) {\r\n diff = this.params.compareForMerge(rhs.params);\r\n }\r\n }\r\n }\r\n }\r\n\r\n return diff;\r\n }\r\n\r\n public equals(rhs: Key): boolean { return 0 === this.compare(rhs); }\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"MeshBuilderMap.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshBuilderMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeshParams.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshParams.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"
|
|
1
|
+
{"version":3,"file":"MeshParams.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshParams.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeshPrimitive.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshPrimitive.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAKH,gBAAgB;AAChB,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,yDAAI,CAAA;IACJ,iEAAQ,CAAA;IACR,2DAAK,CAAA;AACP,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B"
|
|
1
|
+
{"version":3,"file":"MeshPrimitive.js","sourceRoot":"","sources":["../../../../../src/common/internal/render/MeshPrimitive.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAKH,gBAAgB;AAChB,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,yDAAI,CAAA;IACJ,iEAAQ,CAAA;IACR,2DAAK,CAAA;AACP,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B"}
|