@arcgis/core 4.24.0-next.20220430 → 4.24.0-next.20220503
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/Basemap.js +1 -1
- package/Color.js +1 -1
- package/Ground.js +1 -1
- package/Map.js +1 -1
- package/PopupTemplate.js +1 -1
- package/WebMap.js +1 -1
- package/WebScene.js +1 -1
- package/analysis/LinearDimension.js +1 -1
- package/analysis/SliceAnalysis.js +1 -1
- package/applications/SceneViewer/sceneViewerUtils.js +1 -1
- package/arcade/Dictionary.js +1 -1
- package/arcade/Feature.js +1 -1
- package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
- package/arcade/featureset/support/FeatureSet.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{e06461703e6f1acfcfdc.js → 076d1b1101b59af0d389.js} +1 -1
- package/assets/esri/core/workers/chunks/0b72d123386dc4ec7538.js +1 -0
- package/assets/esri/core/workers/chunks/0d53e575f11198867619.js +1 -0
- package/assets/esri/core/workers/chunks/0e6e3cf07c84d9f040c0.js +1 -0
- package/assets/esri/core/workers/chunks/105728404ddd9e73d5c9.js +1 -0
- package/assets/esri/core/workers/chunks/11106873b009b98e4286.js +1 -0
- package/assets/esri/core/workers/chunks/11a7b156591d1feca952.js +1 -0
- package/assets/esri/core/workers/chunks/{94325f920a125610e1f5.js → 12feeace7215248be23f.js} +1 -1
- package/assets/esri/core/workers/chunks/17be5bd0d1c233d73d7a.js +1 -0
- package/assets/esri/core/workers/chunks/1b53bd65407ba5c479d7.js +1 -0
- package/assets/esri/core/workers/chunks/1d91aa745b49b2ab36cf.js +1 -0
- package/assets/esri/core/workers/chunks/{fd35b69872ac9393924f.js → 1db8bfb1731be3ae320c.js} +1 -1
- package/assets/esri/core/workers/chunks/{3433361f09c84b31aec4.js → 2290bd6dc2e6bb136e14.js} +1 -1
- package/assets/esri/core/workers/chunks/24217129d492e170f0f0.js +1 -0
- package/assets/esri/core/workers/chunks/24e194107e0e5090125b.js +1 -0
- package/assets/esri/core/workers/chunks/2a1301a1d0cd4c0c17cf.js +1 -0
- package/assets/esri/core/workers/chunks/{178831b0d0bdabcc45e7.js → 2a676221ca1fc8e0cf34.js} +1 -1
- package/assets/esri/core/workers/chunks/2aede0d1dcac8592436b.js +1 -0
- package/assets/esri/core/workers/chunks/2b93ad626f5e75b97692.js +1 -0
- package/assets/esri/core/workers/chunks/2d03210fc6b5884c6bf9.js +1 -0
- package/assets/esri/core/workers/chunks/{b10c333abe4f4e52841c.js → 2dfd3def105005fc72c7.js} +1 -1
- package/assets/esri/core/workers/chunks/2f8ff35b8ab15c0e39c2.js +1 -0
- package/assets/esri/core/workers/chunks/36272141b3c33cb19026.js +1 -0
- package/assets/esri/core/workers/chunks/36c8e8de9c3f67d32572.js +1 -0
- package/assets/esri/core/workers/chunks/3ab8c6ae2f2713f637b0.js +1 -0
- package/assets/esri/core/workers/chunks/3c058381adcfdc407aa1.js +1 -0
- package/assets/esri/core/workers/chunks/3f39df1dfc0a685e5f9d.js +1 -0
- package/assets/esri/core/workers/chunks/3fd52a03b3126556aee6.js +1 -0
- package/assets/esri/core/workers/chunks/4082d8573f41f952c72e.js +1 -0
- package/assets/esri/core/workers/chunks/40b11eea270f6688ff9c.js +1 -0
- package/assets/esri/core/workers/chunks/4281b4b27f4767cdd3ae.js +1 -0
- package/assets/esri/core/workers/chunks/43fcaaeb6fd179e9199b.js +1 -0
- package/assets/esri/core/workers/chunks/4c65b27d80b23c0c3101.js +1 -0
- package/assets/esri/core/workers/chunks/{a6406a248b7b2ed65f35.js → 4ec7d59b0c814dbaa7a4.js} +1 -1
- package/assets/esri/core/workers/chunks/4f378ad6f4299183df85.js +1 -0
- package/assets/esri/core/workers/chunks/505b0aa5ee3e5a26c351.js +1 -0
- package/assets/esri/core/workers/chunks/509a9cdd0228a730bcea.js +1 -0
- package/assets/esri/core/workers/chunks/52255ad573cec0a34720.js +1 -0
- package/assets/esri/core/workers/chunks/52d4fdc451a58a858af1.js +1 -0
- package/assets/esri/core/workers/chunks/5405f478af3563580926.js +1 -0
- package/assets/esri/core/workers/chunks/54577c2522ca3ff08f7e.js +1 -0
- package/assets/esri/core/workers/chunks/54d67e450da6ce2641b4.js +1 -0
- package/assets/esri/core/workers/chunks/56d3cb0ae0069a8eadde.js +1 -0
- package/assets/esri/core/workers/chunks/5b4efe0014162f777534.js +1 -0
- package/assets/esri/core/workers/chunks/5baa162351551817838b.js +1 -0
- package/assets/esri/core/workers/chunks/5cf2064bfd9d0847d9ec.js +1 -0
- package/assets/esri/core/workers/chunks/620dc3c13c345d5aa9f6.js +1 -0
- package/assets/esri/core/workers/chunks/7c290763920f52a1f504.js +1 -0
- package/assets/esri/core/workers/chunks/7dc266be958e34e81007.js +972 -0
- package/assets/esri/core/workers/chunks/7dfd70f4fa1096e56641.js +1 -0
- package/assets/esri/core/workers/chunks/7f097de06972a68cd08a.js +1 -0
- package/assets/esri/core/workers/chunks/8033531b0cc706b40d86.js +1 -0
- package/assets/esri/core/workers/chunks/814234844a056d9f1ddc.js +1 -0
- package/assets/esri/core/workers/chunks/83700cdd60ceecc639cd.js +1 -0
- package/assets/esri/core/workers/chunks/857df84cea67079a91e5.js +1 -0
- package/assets/esri/core/workers/chunks/8793070d288878d6f49b.js +1 -0
- package/assets/esri/core/workers/chunks/8865c5cc28df60364e60.js +1 -0
- package/assets/esri/core/workers/chunks/{e9f786d4ba3143ed9644.js → 8cc85d1d46dda16ad041.js} +1 -1
- package/assets/esri/core/workers/chunks/958a7ef2cbf048819988.js +1 -0
- package/assets/esri/core/workers/chunks/967af0aa4dc4da032fdc.js +1 -0
- package/assets/esri/core/workers/chunks/9722880bd7f455b2bd07.js +1 -0
- package/assets/esri/core/workers/chunks/9d738aab0d907cd09a9d.js +1 -0
- package/assets/esri/core/workers/chunks/{86b31ae136f931d7884a.js → 9e6df034d7949880471f.js} +1 -1
- package/assets/esri/core/workers/chunks/a056a79f31cddb066f15.js +1 -0
- package/assets/esri/core/workers/chunks/a2c9fd78d42df7314a3e.js +1 -0
- package/assets/esri/core/workers/chunks/a4dcb50f6622cb1444c8.js +1 -0
- package/assets/esri/core/workers/chunks/a6bfbe449b8c2fa5334c.js +1 -0
- package/assets/esri/core/workers/chunks/a8ed1a938dc164b401d9.js +1 -0
- package/assets/esri/core/workers/chunks/a9a73bc4875a5aeaf1b9.js +1 -0
- package/assets/esri/core/workers/chunks/ac0df52b2f2a4874e4ea.js +1 -0
- package/assets/esri/core/workers/chunks/{431efa172901ab8e4d53.js → acfa8eb19225f7862b1d.js} +1 -1
- package/assets/esri/core/workers/chunks/adae54f116f311d72d97.js +1 -0
- package/assets/esri/core/workers/chunks/{718073d13d3de67b629b.js → aeeb364b7c1876f6e7db.js} +1 -1
- package/assets/esri/core/workers/chunks/afddfe620e6539991e6b.js +1 -0
- package/assets/esri/core/workers/chunks/b02a83845d3da4caee9d.js +1 -0
- package/assets/esri/core/workers/chunks/{0d21506b7d4f9afdbb09.js → b3847a6bbd45d813f03c.js} +1 -1
- package/assets/esri/core/workers/chunks/b4c23630d6c85f7b59c0.js +1 -0
- package/assets/esri/core/workers/chunks/{c318b229911b60fc3cbf.js → b50ae3dc7e43ff452568.js} +1 -1
- package/assets/esri/core/workers/chunks/b5ede4df4620097c6528.js +1 -0
- package/assets/esri/core/workers/chunks/b7d7ad127f8939cbdec2.js +1 -0
- package/assets/esri/core/workers/chunks/bf1d1c02d12b526b0750.js +1 -0
- package/assets/esri/core/workers/chunks/c0e6dbecdbd30066a82c.js +1 -0
- package/assets/esri/core/workers/chunks/c2a36243eb105d570bff.js +1 -0
- package/assets/esri/core/workers/chunks/c8a3a28809542396c6fd.js +1 -0
- package/assets/esri/core/workers/chunks/cf1047ad176a25dcd2d6.js +1 -0
- package/assets/esri/core/workers/chunks/d03de043d43691665a93.js +1 -0
- package/assets/esri/core/workers/chunks/d3fecbaca51ef8844026.js +1 -0
- package/assets/esri/core/workers/chunks/dafe120243db6648a4ab.js +1 -0
- package/assets/esri/core/workers/chunks/dccc33d87cb7d902f5c7.js +1 -0
- package/assets/esri/core/workers/chunks/dd43f5647900ee27af22.js +1 -0
- package/assets/esri/core/workers/chunks/{52489e2f7748dc610263.js → dfdd853dd6c023089963.js} +1 -1
- package/assets/esri/core/workers/chunks/e6f76f62cf58fb1e67c6.js +1 -0
- package/assets/esri/core/workers/chunks/ea73a1d9cad5e1a5d861.js +1 -0
- package/assets/esri/core/workers/chunks/{4130ea1f5a9f197168d7.js → ed4519ac9533a4d340f1.js} +1 -1
- package/assets/esri/core/workers/chunks/f0e462f5a16852f33225.js +1 -0
- package/assets/esri/core/workers/chunks/f13c29bcc71aed8f3a2e.js +1 -0
- package/assets/esri/core/workers/chunks/f356e505c36397fda3cf.js +1 -0
- package/assets/esri/core/workers/chunks/f55cbaf5a1d6ee6ac171.js +1 -0
- package/assets/esri/core/workers/chunks/f6e613ae6812a347a26c.js +1 -0
- package/assets/esri/core/workers/chunks/fb3279408bd5323ec612.js +1 -0
- package/assets/esri/core/workers/chunks/fdf80a371b7b2a45f1ff.js +1 -0
- package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
- package/chunks/ChapmanAtmosphere.glsl.js +15 -15
- package/chunks/CheckerBoard.glsl.js +3 -3
- package/chunks/Clouds.glsl.js +2 -3
- package/chunks/CloudsComposition.glsl.js +3 -3
- package/chunks/ColorMaterial.glsl.js +11 -11
- package/chunks/DefaultMaterial.glsl.js +26 -26
- package/chunks/EdgeShader.glsl.js +3 -3
- package/chunks/Fog.glsl.js +6 -6
- package/chunks/HUDMaterial.glsl.js +48 -48
- package/chunks/HeatmapDensity.glsl.js +7 -7
- package/chunks/HighlightApply.glsl.js +3 -3
- package/chunks/LineCallout.glsl.js +3 -3
- package/chunks/LineMarker.glsl.js +22 -22
- package/chunks/MeasurementArrow.glsl.js +4 -4
- package/chunks/NativeLine.glsl.js +11 -11
- package/chunks/Path.glsl.js +16 -16
- package/chunks/Pattern.glsl.js +30 -30
- package/chunks/RasterColorizer.glsl.js +4 -4
- package/chunks/RealisticTree.glsl.js +20 -20
- package/chunks/RibbonLine.glsl.js +39 -39
- package/chunks/ShadedColorMaterial.glsl.js +10 -10
- package/chunks/ShadowCastVisualize.glsl.js +5 -5
- package/chunks/ShadowHighlight.glsl.js +2 -2
- package/chunks/SlicePlaneMaterial.glsl.js +3 -3
- package/chunks/Stars.glsl.js +2 -2
- package/chunks/WaterSurface.glsl.js +20 -20
- package/chunks/languageUtils.js +1 -1
- package/chunks/persistableUrlUtils.js +1 -1
- package/chunks/vec22.js +1 -1
- package/chunks/vec2f64.js +1 -1
- package/chunks/vec3.js +1 -1
- package/chunks/vec33.js +1 -1
- package/chunks/vec43.js +1 -1
- package/colorUtils.js +1 -1
- package/config.js +1 -1
- package/core/Accessor.js +1 -1
- package/core/AsyncUpdate.js +1 -1
- package/core/Clonable.js +1 -1
- package/core/Collection.js +1 -1
- package/core/HandleOwner.js +1 -1
- package/core/Loadable.js +1 -1
- package/core/NestedMap.js +1 -1
- package/core/accessorSupport/DefaultsStore.js +1 -1
- package/core/accessorSupport/Properties.js +1 -1
- package/core/accessorSupport/decorators/enumeration.js +1 -1
- package/core/accessorSupport/extensions/serializableProperty/reader.js +1 -1
- package/core/accessorSupport/extensions/serializableProperty/writePolicyUtils.js +1 -1
- package/core/accessorSupport/extensions/serializableProperty/writer.js +1 -1
- package/core/accessorSupport/read.js +1 -1
- package/core/accessorSupport/tracking.js +1 -1
- package/core/accessorSupport/write.js +1 -1
- package/core/devEnvironmentUtils.js +1 -1
- package/core/has.js +1 -1
- package/core/libs/gl-matrix-2/factories/vec2f64.js +1 -1
- package/core/libs/gl-matrix-2/math/vec3.js +1 -1
- package/core/libs/rbush/PooledRBush.js +1 -1
- package/core/promiseUtils.js +1 -1
- package/core/reactiveUtils.js +1 -1
- package/core/scheduling.js +1 -1
- package/core/throttle.js +1 -1
- package/core/urlUtils.js +1 -1
- package/core/watchUtils.js +1 -1
- package/core/workers/RemoteClient.js +1 -1
- package/core/workers/WorkerOwner.js +1 -1
- package/core/workers/loaderConfig.js +1 -1
- package/core/workers/workerFactory.js +1 -1
- package/geometry/Mesh.js +1 -1
- package/geometry/geometryEngine.js +1 -1
- package/geometry/geometryEngineAsync.js +1 -1
- package/geometry/projection.js +1 -1
- package/geometry/support/axisAngleDegrees.js +1 -1
- package/geometry/support/meshUtils/centerAt.js +1 -1
- package/geometry/support/meshUtils/deduplicate.js +1 -1
- package/geometry/support/meshUtils/elevation.js +1 -1
- package/geometry/support/meshUtils/geographicUtils.js +1 -1
- package/geometry/support/meshUtils/georeference.js +1 -1
- package/geometry/support/meshUtils/loadExternal.js +1 -1
- package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
- package/geometry/support/meshUtils/offset.js +1 -1
- package/geometry/support/meshUtils/rotate.js +1 -1
- package/geometry/support/meshUtils/scale.js +1 -1
- package/geometry/support/normalizeUtils.js +1 -1
- package/geometry/support/normalizeUtilsCommon.js +1 -1
- package/geometry/support/offset.js +1 -1
- package/geometry/support/rotate.js +1 -1
- package/identity/IdentityManagerBase.js +1 -1
- package/identity/IdentityModal.js +1 -1
- package/interfaces.d.ts +109 -2
- package/intl/locale.js +1 -1
- package/intl/messages.js +1 -1
- package/kernel.js +1 -1
- package/layers/AnalysisLayer.js +1 -1
- package/layers/CSVLayer.js +1 -1
- package/layers/FeatureLayer.js +1 -1
- package/layers/GeoJSONLayer.js +1 -1
- package/layers/GeoRSSLayer.js +1 -1
- package/layers/ImageryLayer.js +1 -1
- package/layers/ImageryTileLayer.js +1 -1
- package/layers/Layer.js +1 -1
- package/layers/MapImageLayer.js +1 -1
- package/layers/MapNotesLayer.js +1 -1
- package/layers/OGCFeatureLayer.js +1 -1
- package/layers/RouteLayer.js +1 -1
- package/layers/SceneLayer.js +1 -1
- package/layers/StreamLayer.js +1 -1
- package/layers/SubtypeGroupLayer.js +1 -1
- package/layers/TileLayer.js +1 -1
- package/layers/VectorTileLayer.js +1 -1
- package/layers/VoxelLayer.js +1 -1
- package/layers/VoxelWasmPerScene.js +1 -1
- package/layers/WCSLayer.js +1 -1
- package/layers/WFSLayer.js +1 -1
- package/layers/WMSLayer.js +1 -1
- package/layers/WMTSLayer.js +1 -1
- package/layers/buildingSublayers/BuildingComponentSublayer.js +1 -1
- package/layers/effects/EffectView.js +1 -1
- package/layers/effects/FeatureEffectView.js +1 -1
- package/layers/effects/jsonUtils.js +1 -1
- package/layers/graphics/OptimizedGeometry.js +1 -1
- package/layers/graphics/centroid.js +1 -1
- package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/graphics/data/QueryEngineResult.js +1 -1
- package/layers/graphics/data/StreamFeatureManager.js +1 -1
- package/layers/graphics/editingSupport.js +1 -1
- package/layers/graphics/objectIdUtils.js +1 -1
- package/layers/graphics/sources/CSVSource.js +1 -1
- package/layers/graphics/sources/FeatureLayerSource.js +1 -1
- package/layers/graphics/sources/GeoJSONSource.js +1 -1
- package/layers/graphics/sources/MemorySource.js +1 -1
- package/layers/graphics/sources/OGCFeatureSource.js +1 -1
- package/layers/graphics/sources/WFSSource.js +1 -1
- package/layers/graphics/sources/WFSSourceWorker.js +1 -1
- package/layers/graphics/sources/connections/WebSocketConnection.js +1 -1
- package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
- package/layers/graphics/sources/geojson/geojson.js +1 -1
- package/layers/graphics/sources/support/CSVSourceWorker.js +1 -1
- package/layers/graphics/sources/support/QueryTask.js +1 -1
- package/layers/mixins/APIKeyMixin.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/ArcGISMapService.js +1 -1
- package/layers/mixins/ImageryTileMixin.js +1 -1
- package/layers/mixins/OperationalLayer.js +1 -1
- package/layers/mixins/PortalLayer.js +1 -1
- package/layers/mixins/SceneService.js +1 -1
- package/layers/mixins/refresh.js +1 -1
- package/layers/ogc/dateUtils.js +1 -1
- package/layers/ogc/ogcFeatureUtils.js +1 -1
- package/layers/ogc/wfsUtils.js +1 -1
- package/layers/save/featureLayerUtils.js +1 -1
- package/layers/support/ExportImageParameters.js +1 -1
- package/layers/support/ExportImageServiceParameters.js +1 -1
- package/layers/support/ExportWMSImageParameters.js +1 -1
- package/layers/support/FeatureEffect.js +1 -1
- package/layers/support/FeatureType.js +1 -1
- package/layers/support/FetchAssociatedFeatureLayer.js +1 -1
- package/layers/support/LabelClass.js +1 -1
- package/layers/support/LayerContingentValuesCache.js +1 -1
- package/layers/support/RasterFunction.js +1 -1
- package/layers/support/RasterInfo.js +1 -1
- package/layers/support/RasterJobHandler.js +1 -1
- package/layers/support/RasterWorker.js +1 -1
- package/layers/support/Sublayer.js +1 -1
- package/layers/support/SubtypeSublayer.js +1 -1
- package/layers/support/TilemapCache.js +1 -1
- package/layers/support/TimeReference.d.ts +4 -0
- package/layers/support/WMTSSublayer.js +1 -1
- package/layers/support/arcgisLayers.js +1 -1
- package/layers/support/commonProperties.js +1 -1
- package/layers/support/editableLayers.js +1 -1
- package/layers/support/fieldUtils.js +1 -1
- package/layers/support/floorFilterUtils.js +1 -1
- package/layers/support/imageryRendererUtils.js +1 -1
- package/layers/support/layerUtils.js +1 -1
- package/layers/support/layersCreator.js +1 -1
- package/layers/support/rasterDatasets/BaseRaster.js +1 -1
- package/layers/support/rasterDatasets/CloudRaster.js +1 -1
- package/layers/support/rasterDatasets/ImageAuxRaster.js +1 -1
- package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
- package/layers/support/rasterDatasets/InMemoryRaster.js +1 -1
- package/layers/support/rasterDatasets/MRFRaster.js +1 -1
- package/layers/support/rasterDatasets/TIFFRaster.js +1 -1
- package/layers/support/rasterDatasets/WCSRaster.js +1 -1
- package/layers/support/rasterDatasets/multipartParser.js +1 -1
- package/layers/support/rasterDatasets/pamParser.js +1 -1
- package/layers/support/rasterDatasets/wcsCapabilitiesParser.js +1 -1
- package/layers/support/rasterDatasets/wcsCoverageParser.js +1 -1
- package/layers/support/rasterDatasets/xmlUtilities.js +1 -1
- package/layers/support/rasterFormats/Lerc.js +1 -1
- package/layers/support/rasterFormats/RasterCodec.js +1 -1
- package/layers/support/rasterFormats/TiffDecoder.js +1 -1
- package/layers/support/rasterFunctions/pixelUtils.js +1 -1
- package/layers/support/rasterFunctions/rasterProjectionHelper.js +1 -1
- package/layers/support/rasterFunctions/stretchUtils.js +1 -1
- package/layers/support/rasterFunctions/vectorFieldUtils.js +1 -1
- package/layers/support/rasterTransforms/PolynomialTransform.js +1 -1
- package/layers/support/rasterTransforms/utils.js +1 -1
- package/layers/support/source/DataLayerSource.js +1 -1
- package/layers/support/source/QueryTableDataSource.js +1 -1
- package/layers/support/vectorTileLayerLoader.js +1 -1
- package/layers/support/wmsUtils.js +1 -1
- package/layers/support/wmtsUtils.js +1 -1
- package/libs/maquette-advanced-projector/projector.js +1 -1
- package/networks/Network.js +1 -1
- package/networks/UtilityNetwork.js +1 -1
- package/networks/support/utils.js +1 -1
- package/package.json +1 -1
- package/popup/content/ExpressionContent.js +1 -1
- package/portal/Portal.js +1 -1
- package/portal/PortalItem.js +1 -1
- package/portal/support/geometryServiceUtils.js +1 -1
- package/portal/support/layersLoader.js +1 -1
- package/portal/support/portalItemUtils.js +1 -1
- package/portal/support/portalLayers.js +1 -1
- package/renderers/DictionaryRenderer.js +1 -1
- package/renderers/FlowRenderer.js +1 -1
- package/renderers/RasterColormapRenderer.js +1 -1
- package/renderers/RasterStretchRenderer.js +1 -1
- package/renderers/VectorFieldRenderer.js +1 -1
- package/renderers/support/RasterSymbolizer.js +1 -1
- package/renderers/support/UniqueValueInfo.js +1 -1
- package/renderers/support/colorRampUtils.js +1 -1
- package/renderers/support/heatmapUtils.js +1 -1
- package/renderers/support/rasterRendererHelper.js +1 -1
- package/request.js +1 -1
- package/rest/identify.js +1 -1
- package/rest/imageService.js +1 -1
- package/rest/networkService.js +1 -1
- package/rest/networks/support/SynthesizeAssociationGeometriesParameters.js +1 -1
- package/rest/operations/identify.js +1 -1
- package/rest/print.js +1 -1
- package/rest/query/executeQuery.js +1 -1
- package/rest/query/operations/query.js +1 -1
- package/rest/query/operations/queryRelatedRecords.js +1 -1
- package/rest/query/operations/queryTopFeatures.js +1 -1
- package/rest/route.js +1 -1
- package/rest/support/DirectionLine.js +1 -1
- package/rest/support/DirectionPoint.js +1 -1
- package/rest/support/DirectionsFeatureSet.js +1 -1
- package/rest/support/FeatureSet.js +1 -1
- package/rest/support/ImageSampleParameters.js +1 -1
- package/rest/support/PointBarrier.js +1 -1
- package/rest/support/PolygonBarrier.js +1 -1
- package/rest/support/PolylineBarrier.js +1 -1
- package/rest/support/RouteInfo.js +1 -1
- package/rest/support/Stop.js +1 -1
- package/rest/support/meshFeatureSet.js +1 -1
- package/rest/support/printTaskUtils.js +1 -1
- package/smartMapping/labels/clusters.js +1 -1
- package/smartMapping/raster/renderers/rgb.js +1 -1
- package/smartMapping/raster/renderers/uniqueValue.js +1 -1
- package/smartMapping/raster/support/adapters/ImageryLayerAdapter.js +1 -1
- package/smartMapping/raster/support/adapters/RasterLayerAdapter.js +1 -1
- package/smartMapping/raster/support/utils.js +1 -1
- package/smartMapping/renderers/color.js +1 -1
- package/smartMapping/renderers/size.js +1 -1
- package/smartMapping/renderers/support/utils.js +1 -1
- package/smartMapping/renderers/univariateColorSize.js +1 -1
- package/smartMapping/statistics/support/WorkerClient.js +1 -1
- package/smartMapping/support/adapters/CSVLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/OGCFeatureLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/SceneLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/support/utils.js +1 -1
- package/statistics/utils.js +1 -1
- package/support/LayersMixin.js +1 -1
- package/support/TablesMixin.js +1 -1
- package/support/arcadeUtils.js +1 -1
- package/support/basemapUtils.js +1 -1
- package/support/popupUtils.js +1 -1
- package/support/revision.js +1 -1
- package/support/timeUtils.js +1 -1
- package/symbols/FillSymbol3DLayer.js +1 -1
- package/symbols/LineSymbol3DLayer.js +1 -1
- package/symbols/LineSymbolMarker.js +1 -1
- package/symbols/PictureFillSymbol.js +1 -1
- package/symbols/PointSymbol3D.js +1 -1
- package/symbols/SimpleLineSymbol.js +1 -1
- package/symbols/SimpleMarkerSymbol.js +1 -1
- package/symbols/cim/CIMResourceManager.js +1 -1
- package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
- package/symbols/cim/CIMSymbolHelper.js +1 -1
- package/symbols/cim/ExpandedCIM.js +1 -1
- package/symbols/cim/SDFHelper.js +1 -1
- package/symbols/cim/cimAnalyzer.js +1 -1
- package/symbols/cim/effects/EffectControlMeasureLine.js +1 -1
- package/symbols/cim/effects/EffectDashes.js +1 -1
- package/symbols/cim/effects/EffectOffset.js +1 -1
- package/symbols/cim/placements/PlacementAlongLineSameSize.js +1 -1
- package/symbols/cim/utils.js +1 -1
- package/symbols/support/cimSymbolUtils.js +1 -1
- package/symbols/support/jsonUtils.js +1 -1
- package/symbols/support/previewCIMSymbol.js +1 -1
- package/symbols/support/previewSymbol2D.js +1 -1
- package/symbols/support/previewSymbol3D.js +1 -1
- package/symbols/support/previewWebStyleSymbol.js +1 -1
- package/symbols/support/svgUtils.js +1 -1
- package/symbols/support/symbolConversion.js +1 -1
- package/symbols/support/symbolUtils.js +1 -1
- package/tasks/GenerateRendererTask.js +1 -1
- package/views/2d/MapViewConstraints.js +1 -1
- package/views/2d/constraints/GeometryConstraint.js +1 -1
- package/views/2d/engine/Bitmap.js +1 -1
- package/views/2d/engine/Container.js +1 -1
- package/views/2d/engine/DisplayObject.js +1 -1
- package/views/2d/engine/Stage.js +1 -1
- package/views/2d/engine/imagery/BrushRasterBitmap.js +1 -1
- package/views/2d/engine/imagery/RasterBitmap.js +1 -1
- package/views/2d/engine/imagery/RasterVFDisplayObject.js +1 -1
- package/views/2d/engine/vectorTiles/TilemapRequest.js +1 -1
- package/views/2d/engine/vectorTiles/WorkerTileHandler.js +1 -1
- package/views/2d/engine/vectorTiles/buckets/FillBucket.js +1 -1
- package/views/2d/engine/vectorTiles/buckets/LineBucket.js +1 -1
- package/views/2d/engine/vectorTiles/expression/expression.js +1 -1
- package/views/2d/engine/vectorTiles/shaders/VTLMaterial.js +1 -1
- package/views/2d/engine/vectorTiles/style/StyleLayer.js +1 -1
- package/views/2d/engine/vectorTiles/style/StyleRepository.js +1 -1
- package/views/2d/engine/vectorTiles/style/VectorTileSource.js +1 -1
- package/views/2d/engine/webgl/FeatureTile.js +1 -1
- package/views/2d/engine/webgl/GraphicTile.js +1 -1
- package/views/2d/engine/webgl/TextureManager.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushHeatmap.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushVTLCircle.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushVTLFill.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushVTLLine.js +1 -1
- package/views/2d/engine/webgl/collisions/CollisionEngine.js +1 -1
- package/views/2d/engine/webgl/collisions/MetricReader.js +1 -1
- package/views/2d/engine/webgl/cpuMapped/DisplayRecordReader.js +1 -1
- package/views/2d/engine/webgl/cpuMapped/FreeList.js +1 -1
- package/views/2d/engine/webgl/mesh/MeshData.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLBaseLineTemplate.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLBaseMarkerTemplate.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLBaseTextTemplate.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLDynamicFillTemplate.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLLabelTemplate.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLLineTemplate.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/WGLMeshTemplate.js +1 -1
- package/views/2d/engine/webgl/painter/RenderPass.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/engine/webgl/techniques/dotDensity/TechniqueDotDensity.js +1 -1
- package/views/2d/input/MapViewInputManager.js +1 -1
- package/views/2d/input/handlers/GamepadNavigation.js +1 -1
- package/views/2d/interactive/editingTools/draw/DrawGraphicTool2D.js +1 -1
- package/views/2d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles2D.js +1 -1
- package/views/2d/layers/BaseLayerView2D.js +1 -1
- package/views/2d/layers/BaseLayerViewGL2D.js +1 -1
- package/views/2d/layers/BitmapTileLayerView2D.js +1 -1
- package/views/2d/layers/FeatureLayerView2D.js +1 -1
- package/views/2d/layers/GeoRSSLayerView2D.js +1 -1
- package/views/2d/layers/GraphicsLayerView2D.js +1 -1
- package/views/2d/layers/ImageryLayerView2D.js +1 -1
- package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
- package/views/2d/layers/KMLLayerView2D.js +1 -1
- package/views/2d/layers/LayerView2D.js +1 -1
- package/views/2d/layers/SubtypeGroupLayerView2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/2d/layers/VectorTileLayerView2D.js +1 -1
- package/views/2d/layers/WMTSLayerView2D.js +1 -1
- package/views/2d/layers/features/FeatureStore2D.js +1 -1
- package/views/2d/layers/features/Pipeline.js +1 -1
- package/views/2d/layers/features/batchUtils.js +1 -1
- package/views/2d/layers/features/controllers/FeatureController2D.js +1 -1
- package/views/2d/layers/features/controllers/support/sourceAdapters.js +1 -1
- package/views/2d/layers/features/createSymbolSchema.js +1 -1
- package/views/2d/layers/features/processors/SymbolProcessor.js +1 -1
- package/views/2d/layers/features/schemaUtils.js +1 -1
- package/views/2d/layers/features/sources/BaseFeatureSource.js +1 -1
- package/views/2d/layers/features/sources/DataTileSource.js +1 -1
- package/views/2d/layers/features/sources/DataTileSubscription.js +1 -1
- package/views/2d/layers/features/sources/SnapshotFeatureSource.js +1 -1
- package/views/2d/layers/features/support/ClusterStore.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderJSON.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderPBF.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderPBFHeader.js +1 -1
- package/views/2d/layers/features/support/ResourceManagerProxy.js +1 -1
- package/views/2d/layers/features/tileRenderers/SymbolTileRenderer.js +1 -1
- package/views/2d/layers/features/tileRenderers/support/WGLFeatureView.js +1 -1
- package/views/2d/layers/graphics/graphicsUtils.js +1 -1
- package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
- package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
- package/views/2d/layers/imagery/VectorFieldTileView2D.js +1 -1
- package/views/2d/layers/support/ExportStrategy.js +1 -1
- package/views/2d/layers/support/FeatureCommandQueue.js +1 -1
- package/views/2d/magnifier/MagnifierView2D.js +1 -1
- package/views/2d/support/engineHelpers.js +1 -1
- package/views/2d/tiling/TileManager.js +1 -1
- package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
- package/views/3d/analysis/AreaMeasurementAnalysisView3D.js +1 -1
- package/views/3d/analysis/Dimensioning/DimensioningVisualization.js +5 -0
- package/views/3d/analysis/Dimensioning/LinearDimensionVisualization.js +5 -0
- package/views/3d/analysis/DimensioningAnalysisView3D.js +1 -1
- package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementController.js +1 -1
- package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
- package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
- package/views/3d/analysis/LineOfSightAnalysisView3D.js +1 -1
- package/views/3d/analysis/Slice/SliceTool.js +1 -1
- package/views/3d/analysis/SliceAnalysisView3D.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.js +1 -1
- package/views/3d/environment/Clouds.glsl.js +1 -1
- package/views/3d/environment/CloudsComposition.glsl.js +1 -1
- package/views/3d/environment/CloudsComposition.js +1 -1
- package/views/3d/environment/CloudsCompositionParameters.js +5 -0
- package/views/3d/environment/EnvironmentRenderer.js +1 -1
- package/views/3d/environment/Fog.glsl.js +1 -1
- package/views/3d/environment/Fog.js +1 -1
- package/views/3d/environment/Precipitation.js +1 -1
- package/views/3d/environment/SceneViewEnvironment.js +1 -1
- package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.js +1 -1
- package/views/3d/environment/Stars.glsl.js +1 -1
- package/views/3d/environment/Stars.js +1 -1
- package/views/3d/externalRenderers/ExternalRendererStore.js +1 -1
- package/views/3d/glTF/internal/Resource.js +1 -1
- package/views/3d/glTF/loader.js +1 -1
- package/views/3d/input/SceneInputManager.js +1 -1
- package/views/3d/input/handlers/TwoFingerTilt.js +1 -1
- package/views/3d/interactive/Manipulator3D.js +1 -1
- package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
- package/views/3d/interactive/editingTools/manipulations/MoveManipulation.js +1 -1
- package/views/3d/interactive/editingTools/moveGraphic/isSupportedGraphic.js +1 -1
- package/views/3d/interactive/editingTools/reshapeGraphic/GraphicReshapeTool.js +1 -1
- package/views/3d/interactive/editingTools/reshapeGraphic/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/reshapeGraphic/isSupportedGraphic.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/isSupportedGraphic.js +1 -1
- package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DView.js +1 -1
- package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
- package/views/3d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles3D.js +1 -1
- package/views/3d/interactive/visualElements/DrapedVisualElementResources.js +1 -1
- package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/VisualElementResources.js +1 -1
- package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
- package/views/3d/layers/ElevationLayerView3D.js +1 -1
- package/views/3d/layers/FeatureLayerView3D.js +1 -1
- package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
- package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
- package/views/3d/layers/GraphicsLayerView3D.js +1 -1
- package/views/3d/layers/GraphicsView3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/ImageryLayerView3D.js +1 -1
- package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
- package/views/3d/layers/LayerView3D.js +1 -1
- package/views/3d/layers/RouteLayerView3D.js +1 -1
- package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
- package/views/3d/layers/SceneLayerView3D.js +1 -1
- package/views/3d/layers/SceneLayerWorker.js +1 -1
- package/views/3d/layers/StreamLayerView3D.js +1 -1
- package/views/3d/layers/TiledLayerView3D.js +1 -1
- package/views/3d/layers/VectorTileLayerView3D.js +1 -1
- package/views/3d/layers/VoxelLayerView3D.js +1 -1
- package/views/3d/layers/WMSLayerView3D.js +1 -1
- package/views/3d/layers/WMTSLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFilterVisibility.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFrustumVisibility.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPointSymbol.js +1 -1
- package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
- package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/GraphicsDeconflictor.js +1 -1
- package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
- package/views/3d/layers/graphics/Labeler.js +1 -1
- package/views/3d/layers/i3s/I3SAttributeOverrides.js +1 -1
- package/views/3d/layers/i3s/I3SMeshViewFilter.js +1 -1
- package/views/3d/layers/i3s/I3SStreamDataController.js +1 -1
- package/views/3d/layers/i3s/I3SUtil.js +1 -1
- package/views/3d/layers/support/FeatureTileTree3D.js +1 -1
- package/views/3d/layers/support/FeatureTileTree3DDebugger.js +1 -1
- package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
- package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
- package/views/3d/layers/support/featureTileQuery3D.js +1 -1
- package/views/3d/state/ConstraintsManager.js +1 -1
- package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
- package/views/3d/support/ResourceController.js +1 -1
- package/views/3d/support/SharedSymbolResources.js +1 -1
- package/views/3d/support/TextureCollection.js +1 -1
- package/views/3d/support/cameraUtils.js +1 -1
- package/views/3d/support/pointsOfInterest/CameraOnSurface.js +1 -1
- package/views/3d/support/pointsOfInterest/Focus.js +1 -1
- package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
- package/views/3d/support/pointsOfInterest/StableSurfaceCenter.js +1 -1
- package/views/3d/terrain/OverlayFramebufferObject.js +1 -1
- package/views/3d/terrain/OverlayManager.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/PatchGeometry.js +1 -1
- package/views/3d/terrain/PatchGeometryFactory.js +1 -1
- package/views/3d/terrain/PatchRenderData.js +1 -1
- package/views/3d/terrain/PlanarPatch.js +1 -1
- package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
- package/views/3d/terrain/RasterTile.js +1 -1
- package/views/3d/terrain/SphericalPatch.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/Tile.js +1 -1
- package/views/3d/terrain/TileCompositor.js +1 -1
- package/views/3d/terrain/TileRenderer.js +1 -1
- package/views/3d/terrain/TilingSchemeLogic.js +1 -1
- package/views/3d/terrain/terrainUtils.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentIntersectionData.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +2 -2
- package/views/3d/webgl-engine/core/material/MaterialBase.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +8 -8
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +13 -13
- package/views/3d/webgl-engine/core/shaderLibrary/raster/BasicGrid.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/raster/Colormap.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/raster/Common.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/raster/Projection.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/raster/RasterColorizer.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeMaterialColor.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js +3 -3
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +13 -13
- package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +17 -17
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +7 -7
- package/views/3d/webgl-engine/core/shaderLibrary/shading/WaterDistortion.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +15 -15
- package/views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderModules/BooleanPassUniform.js +5 -0
- package/views/3d/webgl-engine/core/shaderModules/Float4DrawUniform.js +5 -0
- package/views/3d/webgl-engine/core/shaderModules/{Matrix3Uniform.js → Float4PassUniform.js} +1 -1
- package/views/3d/webgl-engine/core/shaderModules/Float4Uniform.js +1 -1
- package/views/3d/webgl-engine/core/shaderModules/Matrix3DrawUniform.js +5 -0
- package/views/3d/webgl-engine/core/shaderModules/Matrix3PassUniform.js +5 -0
- package/views/3d/webgl-engine/core/shaderModules/{TextureCubeUniform.js → TextureCubePassUniform.js} +1 -1
- package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/lib/AutoDisposable.js +1 -1
- package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
- package/views/3d/webgl-engine/lib/GLTextureMaterial.js +1 -1
- package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowHighlight.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
- package/views/3d/webgl-engine/lib/Texture.js +1 -1
- package/views/3d/webgl-engine/lib/WebGLLayer.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
- package/views/3d/webgl-engine/lib/intersectorUtilsConversions.js +1 -1
- package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
- package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/{VisualVariableMaterialParameters.js → VisualVariablePassParameters.js} +1 -1
- package/views/3d/webgl-engine/materials/WaterGLMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/3d/webgl-engine/parts/requireUtils.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HeatmapDensity.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HighlightApply.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/Magnifier.glsl.js +3 -3
- package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/Path.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RealisticTree.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastVisualize.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowHighlight.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/AdjustProjectedPosition.glsl.js +3 -3
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeShader.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +5 -5
- package/views/BasemapView.js +1 -1
- package/views/GroundView.js +1 -1
- package/views/LayerViewManager.js +1 -1
- package/views/MapView.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/ToolViewManager.js +1 -1
- package/views/View.js +1 -1
- package/views/draw/DrawAction.js +1 -1
- package/views/draw/DrawGraphicTool.js +1 -1
- package/views/draw/DrawOperation.js +1 -1
- package/views/draw/DrawTool.js +1 -1
- package/views/draw/support/Box.js +1 -1
- package/views/draw/support/GraphicMover.js +1 -1
- package/views/draw/support/Reshape.js +1 -1
- package/views/interactive/coordinateHelper.js +1 -1
- package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
- package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
- package/views/interactive/snapping/SnappingManager.js +1 -1
- package/views/interactive/snapping/featureSources/WorkerTileTreeDebugger.js +1 -1
- package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
- package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileStore.js +1 -1
- package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
- package/views/layers/FeatureLayerView.js +1 -1
- package/views/layers/GroupLayerView.js +1 -1
- package/views/layers/ImageryLayerView.js +1 -1
- package/views/layers/ImageryTileLayerView.js +1 -1
- package/views/layers/LayerView.js +1 -1
- package/views/layers/MapImageLayerView.js +1 -1
- package/views/layers/WMSLayerView.js +1 -1
- package/views/support/AllocationTracer.js +1 -1
- package/views/support/DefaultsFromMap.js +1 -1
- package/views/support/geometry2dUtils.js +1 -1
- package/views/support/layerViewUtils.js +1 -1
- package/views/support/waitForResources.js +1 -1
- package/views/ui/UI.js +1 -1
- package/views/webgl/BufferObject.js +1 -1
- package/views/webgl/FramebufferObject.js +1 -1
- package/views/webgl/RenderingContext.js +1 -1
- package/views/webgl/Texture.js +1 -1
- package/views/webgl/UniformBufferLayout.js +1 -1
- package/views/webgl/VertexArrayObject.js +1 -1
- package/views/webgl/capabilities.js +1 -1
- package/views/webgl/rasterUtils.js +1 -1
- package/views/webgl/testFloatBufferBlend.js +1 -1
- package/webdoc/widgets/TimeSlider.js +1 -1
- package/webmap/Bookmark.js +1 -1
- package/webscene/Slide.js +1 -1
- package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
- package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.js +1 -1
- package/widgets/AreaMeasurement2D.js +1 -1
- package/widgets/AreaMeasurement3D.js +1 -1
- package/widgets/Attribution.js +1 -1
- package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
- package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
- package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
- package/widgets/BasemapLayerList.js +1 -1
- package/widgets/BasemapToggle/BasemapToggleViewModel.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
- package/widgets/Bookmarks.js +1 -1
- package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesNode.js +1 -1
- package/widgets/BuildingExplorer/BuildingExplorerViewModel.js +1 -1
- package/widgets/BuildingExplorer/BuildingLevel.js +1 -1
- package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
- package/widgets/BuildingExplorer/BuildingNumericFilterViewModel.js +1 -1
- package/widgets/BuildingExplorer/BuildingPhase.js +1 -1
- package/widgets/BuildingExplorer/support/buildingLayerUtils.js +1 -1
- package/widgets/BuildingExplorer.js +1 -1
- package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
- package/widgets/CoordinateConversion/support/Format.js +1 -1
- package/widgets/Daylight/DaylightViewModel.js +1 -1
- package/widgets/Daylight/support/SliderWithDropdown.js +1 -1
- package/widgets/Daylight.js +1 -1
- package/widgets/DirectLineMeasurement3D.js +1 -1
- package/widgets/Directions/DirectionsViewModel.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.js +1 -1
- package/widgets/DistanceMeasurement2D.js +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
- package/widgets/Editor/CreateWorkflow.js +1 -1
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/UpdateWorkflow.js +1 -1
- package/widgets/Editor/workflowUtils.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineGround.js +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineInput.js +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineView.js +1 -1
- package/widgets/ElevationProfile/ElevationProfileTool.js +1 -1
- package/widgets/ElevationProfile/ElevationProfileViewModel.js +1 -1
- package/widgets/ElevationProfile/components/Statistics.js +1 -1
- package/widgets/ElevationProfile/support/elevationQuerySourceUtils.js +1 -1
- package/widgets/ElevationProfile/support/profileUtils.js +1 -1
- package/widgets/ElevationProfile.js +1 -1
- package/widgets/Expand.js +1 -1
- package/widgets/Feature/FeatureAttachments.js +1 -1
- package/widgets/Feature/FeatureContent.js +1 -1
- package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
- package/widgets/Feature/FeatureExpression.js +1 -1
- package/widgets/Feature/FeatureFields/FeatureFieldsViewModel.js +1 -1
- package/widgets/Feature/FeatureFields.js +1 -1
- package/widgets/Feature/FeatureMedia/FeatureMediaViewModel.js +1 -1
- package/widgets/Feature/FeatureMedia.js +1 -1
- package/widgets/Feature/FeatureViewModel.js +1 -1
- package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
- package/widgets/Feature/support/featureUtils.js +1 -1
- package/widgets/Feature/support/relatedFeatureUtils.js +1 -1
- package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
- package/widgets/FeatureForm/InputField.js +1 -1
- package/widgets/FeatureForm/support/formTemplateUtils.js +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
- package/widgets/FeatureTable/FieldColumn.js +1 -1
- package/widgets/FeatureTable/Grid/Column.js +1 -1
- package/widgets/FeatureTable/Grid/EditorColumn.js +1 -1
- package/widgets/FeatureTable/Grid/Grid.js +1 -1
- package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
- package/widgets/FeatureTable/Grid/support/ButtonMenu.js +1 -1
- package/widgets/FeatureTable/Grid/support/LocalStore.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
- package/widgets/FeatureTemplates/ItemList.js +1 -1
- package/widgets/FeatureTemplates/TemplateItem.js +1 -1
- package/widgets/FeatureTemplates.js +1 -1
- package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
- package/widgets/FloorFilter.js +1 -1
- package/widgets/Fullscreen.js +1 -1
- package/widgets/Home.js +1 -1
- package/widgets/LayerList/LayerListViewModel.js +1 -1
- package/widgets/LayerList/support/layerListUtils.js +1 -1
- package/widgets/LayerList.js +1 -1
- package/widgets/Legend/LegendViewModel.js +1 -1
- package/widgets/Legend/styles/Card.js +1 -1
- package/widgets/Legend/styles/support/univariateUtils.js +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Legend/support/clusterUtils.js +1 -1
- package/widgets/Legend/support/sizeRampUtils.js +1 -1
- package/widgets/Locate/LocateViewModel.js +1 -1
- package/widgets/Popup/PopupViewModel.js +1 -1
- package/widgets/Popup/actionUtils.js +1 -1
- package/widgets/Popup.js +1 -1
- package/widgets/Print/PrintViewModel.js +1 -1
- package/widgets/Print.js +1 -1
- package/widgets/ScaleRangeSlider/ScaleRangeSliderViewModel.js +1 -1
- package/widgets/Search/LayerSearchSource.js +1 -1
- package/widgets/Search/SearchResultRenderer.js +1 -1
- package/widgets/Search/SearchViewModel.js +1 -1
- package/widgets/Search/support/geometryUtils.js +1 -1
- package/widgets/Search/support/layerSearchUtils.js +1 -1
- package/widgets/Search/support/locatorUtils.js +1 -1
- package/widgets/Search.js +1 -1
- package/widgets/ShadowCast/components/DiscreteConfigurator.js +1 -1
- package/widgets/ShadowCast/components/Label.js +1 -1
- package/widgets/ShadowCast/components/TimezonePicker.js +1 -1
- package/widgets/ShadowCast.js +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Sketch.js +1 -1
- package/widgets/Slider.js +1 -1
- package/widgets/Swipe/SwipeViewModel.js +1 -1
- package/widgets/TableList/TableListViewModel.js +1 -1
- package/widgets/TableList/support/tableListUtils.js +1 -1
- package/widgets/TableList.js +1 -1
- package/widgets/TimeSlider/TimeSliderViewModel.js +1 -1
- package/widgets/TimeSlider/utils.js +1 -1
- package/widgets/TimeSlider.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
- package/widgets/Weather.js +1 -1
- package/widgets/Widget.js +1 -1
- package/widgets/smartMapping/BinaryColorSizeSlider/BinaryColorSizeSliderViewModel.js +1 -1
- package/widgets/smartMapping/BinaryColorSizeSlider.js +1 -1
- package/widgets/smartMapping/ClassedColorSlider.js +1 -1
- package/widgets/smartMapping/ClassedSizeSlider.js +1 -1
- package/widgets/smartMapping/ColorSizeSlider.js +1 -1
- package/widgets/smartMapping/SizeSlider/SizeSliderViewModel.js +1 -1
- package/widgets/smartMapping/SmartMappingSliderBase.js +1 -1
- package/widgets/smartMapping/SmartMappingSliderViewModel.js +1 -1
- package/widgets/support/AnalysisViewModel.js +1 -1
- package/widgets/support/ColorPicker.js +1 -1
- package/widgets/support/DatePicker.js +1 -1
- package/widgets/support/InteractiveAnalysisViewModel.js +1 -1
- package/widgets/support/Popover.js +1 -1
- package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
- package/widgets/support/SelectionToolbar.js +1 -1
- package/widgets/support/Selector2D/SelectionOperation2D.js +1 -1
- package/widgets/support/Selector2D.js +1 -1
- package/widgets/support/SnappingControls/SnappingControlsViewModel.js +1 -1
- package/widgets/support/SnappingControls.js +1 -1
- package/widgets/support/jsxWidgetSupport.js +1 -1
- package/widgets/support/widgetUtils.js +1 -1
- package/assets/esri/core/workers/chunks/049c5c30bd37693dddb7.js +0 -1
- package/assets/esri/core/workers/chunks/055a0ebf22a82f859474.js +0 -1
- package/assets/esri/core/workers/chunks/0b12ff7b2ed2838afbb8.js +0 -1
- package/assets/esri/core/workers/chunks/0e25548573baf855e394.js +0 -1
- package/assets/esri/core/workers/chunks/0edd4c3ca6e7d749d0e5.js +0 -1
- package/assets/esri/core/workers/chunks/0fcbf7e2db58e38ee6d1.js +0 -1
- package/assets/esri/core/workers/chunks/133f971e72a1a6277ac4.js +0 -1
- package/assets/esri/core/workers/chunks/135a90ae61f3b3cae91b.js +0 -1
- package/assets/esri/core/workers/chunks/13fde7fd56c39fa3f2d5.js +0 -1
- package/assets/esri/core/workers/chunks/1c90855c3b0e5dcff908.js +0 -1
- package/assets/esri/core/workers/chunks/1dbef1919c7ac10a6bcc.js +0 -1
- package/assets/esri/core/workers/chunks/1facbda248863cf72cbd.js +0 -1
- package/assets/esri/core/workers/chunks/1fb2d7abe6c8efa84695.js +0 -1
- package/assets/esri/core/workers/chunks/2068377c2a796d5f2245.js +0 -1
- package/assets/esri/core/workers/chunks/28a5878cbe5880476855.js +0 -1
- package/assets/esri/core/workers/chunks/2cf3934b3ecabdf207c8.js +0 -1
- package/assets/esri/core/workers/chunks/2d42711a629384144625.js +0 -1
- package/assets/esri/core/workers/chunks/3021fda52083fc67d18c.js +0 -1
- package/assets/esri/core/workers/chunks/30333a95dc0a44e23fb5.js +0 -1
- package/assets/esri/core/workers/chunks/30837d93116f0337972f.js +0 -1
- package/assets/esri/core/workers/chunks/320543485c8e22485075.js +0 -1
- package/assets/esri/core/workers/chunks/3f0f7da92a6e4493686e.js +0 -1
- package/assets/esri/core/workers/chunks/42057f252ba4e82a8b45.js +0 -1
- package/assets/esri/core/workers/chunks/45a3f6033cdf4bc74a4c.js +0 -1
- package/assets/esri/core/workers/chunks/492b65fe99641f5740f0.js +0 -1
- package/assets/esri/core/workers/chunks/4d1cd7df617273c489f4.js +0 -1
- package/assets/esri/core/workers/chunks/4df9dfa80dbbae9b743d.js +0 -1
- package/assets/esri/core/workers/chunks/515c1c055666ff4740f3.js +0 -1
- package/assets/esri/core/workers/chunks/541e644fc77dbe527124.js +0 -1
- package/assets/esri/core/workers/chunks/59e341b2db44351bf557.js +0 -1
- package/assets/esri/core/workers/chunks/5a10b58533b4116115ac.js +0 -1
- package/assets/esri/core/workers/chunks/5f940853341d7e2bc852.js +0 -1
- package/assets/esri/core/workers/chunks/5ff2cdecf95e0136dd52.js +0 -1
- package/assets/esri/core/workers/chunks/6147bfbe2bd7292d6ad0.js +0 -1
- package/assets/esri/core/workers/chunks/6467f996fe9f136c370b.js +0 -1
- package/assets/esri/core/workers/chunks/682a8f15f352de76df69.js +0 -1
- package/assets/esri/core/workers/chunks/6a06635089761ee3e6d4.js +0 -972
- package/assets/esri/core/workers/chunks/725828a41917d3d56f2d.js +0 -1
- package/assets/esri/core/workers/chunks/794b47764ebb0257ed41.js +0 -1
- package/assets/esri/core/workers/chunks/7fd03a75eb07a09cda35.js +0 -1
- package/assets/esri/core/workers/chunks/86ad6b020c01850d9095.js +0 -1
- package/assets/esri/core/workers/chunks/86f9d1ce36661781d962.js +0 -1
- package/assets/esri/core/workers/chunks/8dcf6c836b53b40dfbf1.js +0 -1
- package/assets/esri/core/workers/chunks/8e98ff9404a802352037.js +0 -1
- package/assets/esri/core/workers/chunks/94e51fe1c539df6257c2.js +0 -1
- package/assets/esri/core/workers/chunks/9519a02b9b8db88a3150.js +0 -1
- package/assets/esri/core/workers/chunks/9a8b50ed75219b4a42e1.js +0 -1
- package/assets/esri/core/workers/chunks/9f3a094aa4b47e4eb046.js +0 -1
- package/assets/esri/core/workers/chunks/a0ebf25c9c9a7f839b93.js +0 -1
- package/assets/esri/core/workers/chunks/a25f0a195f9217665530.js +0 -1
- package/assets/esri/core/workers/chunks/a2be1e0b632cef87f6a4.js +0 -1
- package/assets/esri/core/workers/chunks/a4d8cf9829da9cfc5f36.js +0 -1
- package/assets/esri/core/workers/chunks/a562059dbdd1bf1fab66.js +0 -1
- package/assets/esri/core/workers/chunks/a59ee7d2b98c85f27dd2.js +0 -1
- package/assets/esri/core/workers/chunks/a5dbab94697757c87c49.js +0 -1
- package/assets/esri/core/workers/chunks/a5e65d5a7a536759d1cc.js +0 -1
- package/assets/esri/core/workers/chunks/a8ac0b6a3eba35e3a5b6.js +0 -1
- package/assets/esri/core/workers/chunks/acbd0f4d72d1f5d8e4e8.js +0 -1
- package/assets/esri/core/workers/chunks/acc97a210f36bff2d1b0.js +0 -1
- package/assets/esri/core/workers/chunks/ad68fe924456d6d7d4f0.js +0 -1
- package/assets/esri/core/workers/chunks/b06c949fc7d08e376a5f.js +0 -1
- package/assets/esri/core/workers/chunks/b26bd8fde2fc65bb67fb.js +0 -1
- package/assets/esri/core/workers/chunks/b4405e9fe6c0cf7250d3.js +0 -1
- package/assets/esri/core/workers/chunks/bc08fe3b03767bd694c5.js +0 -1
- package/assets/esri/core/workers/chunks/c11501e96ffd81bf39a0.js +0 -1
- package/assets/esri/core/workers/chunks/c44116378cc1bc627044.js +0 -1
- package/assets/esri/core/workers/chunks/c9b09099488d0e719dfb.js +0 -1
- package/assets/esri/core/workers/chunks/cbea4f1eb814115748db.js +0 -1
- package/assets/esri/core/workers/chunks/ce262a2accd982988ef1.js +0 -1
- package/assets/esri/core/workers/chunks/d15e6662d90718411d62.js +0 -1
- package/assets/esri/core/workers/chunks/d16aac3461af9cee0c29.js +0 -1
- package/assets/esri/core/workers/chunks/d60dd3e1028f714f2258.js +0 -1
- package/assets/esri/core/workers/chunks/d6c150c243ca1f6108f9.js +0 -1
- package/assets/esri/core/workers/chunks/d85748b57a71999caf3a.js +0 -1
- package/assets/esri/core/workers/chunks/d8c59b1d73650c060dfb.js +0 -1
- package/assets/esri/core/workers/chunks/dcb6e1b33402d7fa455b.js +0 -1
- package/assets/esri/core/workers/chunks/df653bca2b14dffc82d1.js +0 -1
- package/assets/esri/core/workers/chunks/e2a12142439d3037a3a7.js +0 -1
- package/assets/esri/core/workers/chunks/e3e1d87b8532bf84a18d.js +0 -1
- package/assets/esri/core/workers/chunks/e7744b7e0c16bba93151.js +0 -1
- package/assets/esri/core/workers/chunks/ea50effc5c39870dc871.js +0 -1
- package/assets/esri/core/workers/chunks/f1665a64564593f2a438.js +0 -1
- package/assets/esri/core/workers/chunks/f4c12f3a5e7f89106ae0.js +0 -1
- package/assets/esri/core/workers/chunks/fbefdc74b3aab716187f.js +0 -1
- package/assets/esri/core/workers/chunks/fc4fd9db056579e09bfe.js +0 -1
- package/assets/esri/core/workers/chunks/fd4907fa96f55128764d.js +0 -1
- package/views/3d/webgl-engine/core/shaderModules/BooleanUniform.js +0 -5
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{TransparencyPassType as t}from"../lib/basicInterfaces.js";import r from"../lib/GLMaterial.js";import{Material as i,MaterialParameters as s}from"../lib/Material.js";import{RenderSlot as n}from"../lib/RenderSlot.js";import{DefaultBufferWriter as
|
|
5
|
+
import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{TransparencyPassType as t}from"../lib/basicInterfaces.js";import r from"../lib/GLMaterial.js";import{Material as i,MaterialParameters as s}from"../lib/Material.js";import{RenderSlot as n}from"../lib/RenderSlot.js";import{DefaultBufferWriter as o,PositionUVLayout as a}from"./internal/DefaultBufferWriter.js";import{intersectTriangleGeometry as h}from"./internal/MaterialUtil.js";import{CheckerBoardTechnique as u}from"../shaders/CheckerBoardTechnique.js";import{CheckerBoardTechniqueConfiguration as p}from"../shaders/CheckerBoardTechniqueConfiguration.js";class l extends i{constructor(e){super(e,new f),this.techniqueConfig=new p}dispose(){}getConfiguration(e,r){return this.techniqueConfig.transparent=this.parameters.transparent,this.techniqueConfig.writeDepth=this.parameters.writeDepth,this.techniqueConfig.polygonOffset=this.parameters.polygonOffset,this.techniqueConfig.transparencyPassType=r?r.transparencyPassType:t.NONE,this.techniqueConfig.hasMultipassTerrain=!!r&&r.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=!!r&&r.multipassTerrain.cullAboveGround,this.techniqueConfig}intersect(e,t,r,i,s,n,o){return h(e,t,i,s,n,void 0,o)}requiresSlot(e){let t=n.OPAQUE_MATERIAL;return this.parameters.transparent&&(t=this.parameters.writeDepth?n.TRANSPARENT_MATERIAL:n.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL),e===t||e===n.DRAPED_MATERIAL}createGLMaterial(t){return t.output===e.Color||t.output===e.Alpha?new c(t):null}createBufferWriter(){return new o(a)}}class c extends r{beginSlot(e){return this.ensureTechnique(u,e)}}class f extends s{constructor(){super(...arguments),this.size=[1,1],this.color1=[.75,.75,.75,1],this.color2=[.5,.5,.5,1],this.transparent=!1,this.writeDepth=!0,this.polygonOffset=!1}}export{l as CheckerBoardMaterial,f as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{Z as t}from"../../../../chunks/vec4f64.js";import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{CullFaceOptions as r}from"../lib/basicInterfaces.js";import s from"../lib/GLMaterial.js";import{outputFromPass as i}from"../lib/GLMaterials.js";import{Material as a,MaterialParameters as o}from"../lib/Material.js";import{OITPolygonOffsetLimit as n}from"../lib/OrderIndependentTransparency.js";import{RenderSlot as
|
|
5
|
+
import{Z as t}from"../../../../chunks/vec4f64.js";import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{CullFaceOptions as r}from"../lib/basicInterfaces.js";import s from"../lib/GLMaterial.js";import{outputFromPass as i}from"../lib/GLMaterials.js";import{Material as a,MaterialParameters as o}from"../lib/Material.js";import{OITPolygonOffsetLimit as n}from"../lib/OrderIndependentTransparency.js";import{RenderSlot as h}from"../lib/RenderSlot.js";import{DefaultBufferWriter as u,PositionColorLayout as l}from"./internal/DefaultBufferWriter.js";import{intersectTriangleGeometry as c}from"./internal/MaterialUtil.js";import{ColorMaterialTechnique as p}from"../shaders/ColorMaterialTechnique.js";import{ColorMaterialTechniqueConfiguration as f}from"../shaders/ColorMaterialTechniqueConfiguration.js";class m extends a{constructor(t){super(t,new d),this.supportsEdges=!0,this._configuration=new f}getConfiguration(t,e){return this._configuration.output=t,this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasVertexColors=this.parameters.hasVertexColors,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this.parameters.transparent,this._configuration.polygonOffset=this.parameters.polygonOffset,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=this.parameters.hasOccludees,this._configuration.transparencyPassType=e.transparencyPassType,this._configuration.enableOffset=e.camera.relativeElevation<n,this._configuration.hasMultipassTerrain=e.multipassTerrain.enabled,this._configuration.cullAboveGround=e.multipassTerrain.cullAboveGround,this._configuration}intersect(t,e,r,s,i,a,o){c(t,e,s,i,a,void 0,o)}requiresSlot(t,r){if(t===h.DRAPED_MATERIAL)return!0;if(i(r)===e.Highlight)return t===h.OPAQUE_MATERIAL;return t===(this.parameters.transparent?this.parameters.writeDepth?h.TRANSPARENT_MATERIAL:h.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL:h.OPAQUE_MATERIAL)}createGLMaterial(t){return t.output===e.Color||t.output===e.Alpha||t.output===e.Highlight||t.output===e.Depth&&this.parameters.writeLinearDepth?new _(t):null}createBufferWriter(){return new u(l)}}class _ extends s{_updateOccludeeState(t){t.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:t.hasOccludees})}beginSlot(t){return this._output!==e.Color&&this._output!==e.Alpha||this._updateOccludeeState(t),this.ensureTechnique(p,t)}}class d extends o{constructor(){super(...arguments),this.color=t,this.transparent=!1,this.writeDepth=!0,this.writeLinearDepth=!1,this.hasVertexColors=!1,this.polygonOffset=!1,this.hasSlicePlane=!1,this.cullFace=r.None,this.hasOccludees=!1}}export{m as ColorMaterial,d as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isSome as e}from"../../../../core/maybe.js";import{s as t,c as s,n as r,b as i,l as a,g as n,e as o,t as h}from"../../../../chunks/vec3.js";import{c,f as u}from"../../../../chunks/vec3f64.js";import{ViewingMode as l}from"../../../ViewingMode.js";import{newLayout as
|
|
5
|
+
import{isSome as e}from"../../../../core/maybe.js";import{s as t,c as s,n as r,b as i,l as a,g as n,e as o,t as h}from"../../../../chunks/vec3.js";import{c,f as u}from"../../../../chunks/vec3f64.js";import{ViewingMode as l}from"../../../ViewingMode.js";import{newLayout as m}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as p}from"../core/shaderLibrary/ShaderOutputOptions.js";import{NormalAttributeType as f}from"../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{NormalsDoubleSidedMode as d}from"../core/shaderLibrary/shading/Normals.glsl.js";import{PBRMode as g}from"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{CullFaceOptions as T}from"../lib/basicInterfaces.js";import{GLTextureMaterial as C}from"../lib/GLTextureMaterial.js";import{Material as b}from"../lib/Material.js";import{OITPolygonOffsetLimit as v}from"../lib/OrderIndependentTransparency.js";import{RenderPass as A}from"../lib/RenderPass.js";import{RenderSlot as S}from"../lib/RenderSlot.js";import{VertexAttribute as O}from"../lib/VertexAttribute.js";import{getVerticalOffsetObject3D as x}from"../lib/verticalOffsetUtils.js";import{writeDefaultAttributes as q}from"./internal/bufferWriterUtils.js";import{verticalOffsetAtDistance as M,intersectTriangleGeometry as L}from"./internal/MaterialUtil.js";import{DefaultMaterialTechnique as E,DefaultMaterialPassParameters as I}from"../shaders/DefaultMaterialTechnique.js";import{DefaultMaterialTechniqueConfiguration as P}from"../shaders/DefaultMaterialTechniqueConfiguration.js";import{RealisticTreeTechnique as R}from"../shaders/RealisticTreeTechnique.js";class D extends b{constructor(e){super(e,w),this.supportsEdges=!0,this.techniqueConfig=new P,this.vertexBufferLayout=j(this.parameters),this.instanceBufferLayout=e.instanced?B(this.parameters):null}isVisibleInPass(e){return e!==A.MATERIAL_DEPTH_SHADOWMAP_ALL&&e!==A.MATERIAL_DEPTH_SHADOWMAP_DEFAULT&&e!==A.MATERIAL_DEPTH_SHADOWMAP_HIGHLIGHT||this.parameters.castShadows}isVisible(){const t=this.parameters;if(!super.isVisible()||0===t.layerOpacity)return!1;const{instanced:s,hasVertexColors:r,hasSymbolColors:i,vvColorEnabled:a}=t,n=e(s)&&s.includes("color"),o="replace"===t.colorMixMode,h=t.opacity>0,c=t.externalColor&&t.externalColor[3]>0;return r&&(n||a||i)?!!o||h:r?o?c:h:n||a||i?!!o||h:o?c:h}getConfiguration(t,s){return this.techniqueConfig.output=t,this.techniqueConfig.hasNormalTexture=!!this.parameters.normalTextureId,this.techniqueConfig.hasColorTexture=!!this.parameters.textureId,this.techniqueConfig.hasVertexTangents=this.parameters.hasVertexTangents,this.techniqueConfig.instanced=!!this.parameters.instanced,this.techniqueConfig.instancedDoublePrecision=this.parameters.instancedDoublePrecision,this.techniqueConfig.vvSize=this.parameters.vvSizeEnabled,this.techniqueConfig.hasVerticalOffset=e(this.parameters.verticalOffset),this.techniqueConfig.hasScreenSizePerspective=e(this.parameters.screenSizePerspective),this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasSliceHighlight=this.parameters.hasSliceHighlight,this.techniqueConfig.alphaDiscardMode=this.parameters.textureAlphaMode,this.techniqueConfig.normalType="screenDerivative"===this.parameters.normals?f.ScreenDerivative:f.Attribute,this.techniqueConfig.transparent=this.parameters.transparent,this.techniqueConfig.writeDepth=this.parameters.writeDepth,e(this.parameters.customDepthTest)&&(this.techniqueConfig.customDepthTest=this.parameters.customDepthTest),this.techniqueConfig.hasOccludees=this.parameters.hasOccludees,this.techniqueConfig.cullFace=this.parameters.hasSlicePlane?T.None:this.parameters.cullFace,this.techniqueConfig.hasMultipassTerrain=s.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=s.multipassTerrain.cullAboveGround,this.techniqueConfig.hasModelTransformation=e(this.parameters.modelTransformation),t!==p.Color&&t!==p.Alpha||(this.techniqueConfig.hasVertexColors=this.parameters.hasVertexColors,this.techniqueConfig.hasSymbolColors=this.parameters.hasSymbolColors,this.parameters.treeRendering?this.techniqueConfig.doubleSidedMode=d.WindingOrder:this.techniqueConfig.doubleSidedMode=this.parameters.doubleSided&&"normal"===this.parameters.doubleSidedType?d.View:this.parameters.doubleSided&&"winding-order"===this.parameters.doubleSidedType?d.WindingOrder:d.None,this.techniqueConfig.instancedColor=e(this.parameters.instanced)&&this.parameters.instanced.includes("color"),this.techniqueConfig.receiveShadows=this.parameters.receiveShadows&&this.parameters.shadowMappingEnabled,this.techniqueConfig.receiveAmbientOcclusion=!!s.ssaoHelper.ready&&this.parameters.receiveSSAO,this.techniqueConfig.vvColor=this.parameters.vvColorEnabled,this.techniqueConfig.textureAlphaPremultiplied=!!this.parameters.textureAlphaPremultiplied,this.techniqueConfig.pbrMode=this.parameters.usePBR?this.parameters.isSchematic?g.Schematic:g.Normal:g.Disabled,this.techniqueConfig.hasMetalnessAndRoughnessTexture=!!this.parameters.metallicRoughnessTextureId,this.techniqueConfig.hasEmissionTexture=!!this.parameters.emissiveTextureId,this.techniqueConfig.hasOcclusionTexture=!!this.parameters.occlusionTextureId,this.techniqueConfig.offsetBackfaces=!(!this.parameters.transparent||!this.parameters.offsetTransparentBackfaces),this.techniqueConfig.transparencyPassType=s.transparencyPassType,this.techniqueConfig.enableOffset=s.camera.relativeElevation<v),this.techniqueConfig}intersect(c,u,m,p,f,d,g){if(e(this.parameters.verticalOffset)){const e=p.camera;t(z,m[12],m[13],m[14]);let c=null;switch(p.viewingMode){case l.Global:c=r(U,z);break;case l.Local:c=s(U,G)}let u=0;const g=i(k,z,e.eye),T=a(g),C=n(g,g,1/T);let b=null;this.parameters.screenSizePerspective&&(b=o(c,C)),u+=M(e,T,this.parameters.verticalOffset,b,this.parameters.screenSizePerspective),n(c,c,u),h(W,c,p.transform.inverseRotation),f=i(V,f,W),d=i(H,d,W)}L(c,u,p,f,d,x(p.verticalOffset),g)}requiresSlot(e){return e===(this.parameters.transparent?this.parameters.writeDepth?S.TRANSPARENT_MATERIAL:S.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL:S.OPAQUE_MATERIAL)||e===S.DRAPED_MATERIAL}createGLMaterial(e){return e.output===p.Color||e.output===p.Alpha||e.output===p.Depth||e.output===p.Normal||e.output===p.Shadow||e.output===p.Highlight?new y(e):null}createBufferWriter(){return new N(this.vertexBufferLayout,this.instanceBufferLayout)}}class y extends C{constructor(e){super({...e,...e.material.parameters})}_updateParameters(e){const s=this._material.parameters;this.updateTexture(s.textureId);const r=e.camera.viewInverseTransposeMatrix;return t(s.origin,r[3],r[7],r[11]),this._material.setParameters(this.textureBindParameters),this.ensureTechnique(s.treeRendering?R:E,e)}_updateShadowState(e){e.shadowMap.enabled!==this._material.parameters.shadowMappingEnabled&&this._material.setParameters({shadowMappingEnabled:e.shadowMap.enabled})}_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:e.hasOccludees})}beginSlot(e){return this._output!==p.Color&&this._output!==p.Alpha||(this._updateShadowState(e),this._updateOccludeeState(e)),this._updateParameters(e)}}class _ extends I{constructor(){super(...arguments),this.initTextureTransparent=!1,this.treeRendering=!1,this.hasVertexTangents=!1}}const w=new _;class N{constructor(e,t){this.vertexBufferLayout=e,this.instanceBufferLayout=t}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(O.POSITION).length}write(e,t,s,r){q(t,this.vertexBufferLayout,e.transformation,e.invTranspTransformation,s,r)}}function j(e){const t=e.textureId||e.normalTextureId||e.metallicRoughnessTextureId||e.emissiveTextureId||e.occlusionTextureId,s=m().vec3f(O.POSITION).vec3f(O.NORMAL);return e.hasVertexTangents&&s.vec4f(O.TANGENT),t&&s.vec2f(O.UV0),e.hasVertexColors&&s.vec4u8(O.COLOR),e.hasSymbolColors&&s.vec4u8(O.SYMBOLCOLOR),s}function B(t){let s=m();return s=t.instancedDoublePrecision?s.vec3f(O.MODELORIGINHI).vec3f(O.MODELORIGINLO).mat3f(O.MODEL).mat3f(O.MODELNORMAL):s.mat4f(O.MODEL).mat4f(O.MODELNORMAL),e(t.instanced)&&t.instanced.includes("color")&&(s=s.vec4f(O.INSTANCECOLOR)),e(t.instanced)&&t.instanced.includes("featureAttribute")&&(s=s.vec4f(O.INSTANCEFEATUREATTRIBUTE)),s}const V=c(),H=c(),G=u(0,0,1),U=c(),W=c(),z=c(),k=c();export{y as DefaultGLMaterial,D as DefaultMaterial,_ as DefaultMaterialParameters,B as getInstanceBufferLayout};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{clamp as e}from"../../../../core/mathUtils.js";import{isSome as t,unwrapOr as s}from"../../../../core/maybe.js";import{f as r}from"../../../../chunks/mat3.js";import{c as i}from"../../../../chunks/mat3f64.js";import{a as n}from"../../../../chunks/mat4.js";import{c as a}from"../../../../chunks/mat4f64.js";import{c as o}from"../../../../chunks/vec2.js";import{a as c,f as l}from"../../../../chunks/vec2f64.js";import{s as f,m as h,n as u,b as p,g as m,c as d,l as g,i as O,t as S,e as v,a as A}from"../../../../chunks/vec3.js";import{c as P,f as b}from"../../../../chunks/vec3f64.js";import{c as x}from"../../../../chunks/vec4f64.js";import{isMat4 as C}from"../../../../core/libs/gl-matrix-2/types/mat4.js";import{create as y}from"../../../../geometry/support/aaBoundingRect.js";import{newLayout as I}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as z}from"../core/shaderLibrary/ShaderOutputOptions.js";import{HUDSpace as T}from"../core/shaderLibrary/hud/HUD.glsl.js";import{computeAttachmentOriginPoints as _}from"../lib/geometryDataUtils.js";import{GLTextureMaterial as M,GLTextureMaterialBindParameters as j}from"../lib/GLTextureMaterial.js";import{Material as U,RenderOccludedFlag as q}from"../lib/Material.js";import{RenderSlot as w}from"../lib/RenderSlot.js";import{applyScaleFactor as D,applyPrecomputedScaleFactor as L,precomputeScaleFactor as E}from"../lib/screenSizePerspectiveUtils.js";import{assert as R}from"../lib/Util.js";import{VertexAttribute as V}from"../lib/VertexAttribute.js";import{writePosition as N,writeNormal as G,writeColor as H,writeBufferVec4 as X}from"./internal/bufferWriterUtils.js";import{verticalOffsetAtDistance as B}from"./internal/MaterialUtil.js";import{isInstanceHidden as k}from"./renderers/utils.js";import{c as F}from"../../../../chunks/HUDMaterial.glsl.js";import{HUDMaterialTechnique as W}from"../shaders/HUDMaterialTechnique.js";import{HUDMaterialTechniqueConfiguration as Z}from"../shaders/HUDMaterialTechniqueConfiguration.js";class J extends U{constructor(e){super(e,new Se),this.techniqueConfig=new Z}getConfiguration(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasVerticalOffset=!!this.parameters.verticalOffset,this.techniqueConfig.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this.techniqueConfig.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits?T.Screen:T.World,this.techniqueConfig.hasPolygonOffset=this.parameters.polygonOffset,this.techniqueConfig.isDraped=this.parameters.isDraped,this.techniqueConfig.occlusionTestEnabled=this.parameters.occlusionTest,this.techniqueConfig.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this.techniqueConfig.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this.techniqueConfig.vvSize=!!this.parameters.vvSizeEnabled,this.techniqueConfig.vvColor=!!this.parameters.vvColorEnabled,e===z.Color&&(this.techniqueConfig.debugDrawLabelBorder=!!this.parameters.debugDrawLabelBorder),e===z.Highlight&&(this.techniqueConfig.binaryHighlightOcclusionEnabled=this.parameters.binaryHighlightOcclusion),this.techniqueConfig.depthEnabled=this.parameters.depthEnabled,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.hasMultipassGeometry=t.multipassGeometry.enabled,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig}intersect(e,s,r,i,n,a,o,c,l){t(l)?this._intersectDrapedHudGeometry(e,a,o,c,l):this._intersectHudGeometry(e,s,r,i,o,c)}_intersectDrapedHudGeometry(e,s,r,i,n){const a=e.vertexAttributes.get(V.POSITION),o=e.vertexAttributes.get(V.SIZE),c=this.parameters,l=F(c);let f=1,h=1;if(t(i)){const e=i(pe);f=e[0],h=e[5]}f*=e.screenToWorldRatio,h*=e.screenToWorldRatio;const u=de*e.screenToWorldRatio;for(let t=0;t<a.data.length/a.size;t++){const i=t*a.size,p=a.data[i],m=a.data[i+1],d=t*o.size;let g;ge[0]=o.data[d]*f,ge[1]=o.data[d+1]*h,c.textureIsSignedDistanceField&&(g=c.outlineSize*e.screenToWorldRatio/2),ee(s,p,m,ge,u,g,c,l)&&r(n.dist,n.normal,-1,!1)}}_intersectHudGeometry(e,s,i,a,o,c){if(!a.options.selectionMode||!a.options.hud||k(s))return;const l=this.parameters;let S=1,v=1;if(r(ce,i),t(c)){const e=c(pe);S=e[0],v=e[5],$(ce)}const A=e.vertexAttributes.get(V.POSITION),b=e.vertexAttributes.get(V.SIZE),x=e.vertexAttributes.get(V.NORMAL),C=e.vertexAttributes.get(V.AUXPOS1);R(A.size>=3);const y=a.point,I=a.camera,z=F(l);S*=I.pixelRatio,v*=I.pixelRatio;const T="screen"===this.parameters.centerOffsetUnits;for(let t=0;t<A.data.length/A.size;t++){const e=t*A.size;f(re,A.data[e],A.data[e+1],A.data[e+2]),h(re,re,i);const s=t*b.size;ge[0]=b.data[s]*S,ge[1]=b.data[s+1]*v,h(re,re,I.viewMatrix);const r=t*C.size;if(f(he,C.data[r+0],C.data[r+1],C.data[r+2]),!T&&(re[0]+=he[0],re[1]+=he[1],0!==he[2])){const e=he[2];u(he,re),p(re,re,m(he,he,e))}const c=t*x.size;if(f(ie,x.data[c],x.data[c+1],x.data[c+2]),this._normalAndViewAngle(ie,ce,I,ue),this._applyVerticalOffsetTransformationView(re,ue,I,te),I.applyProjection(re,ne),ne[0]>-1){ne[0]=Math.floor(ne[0]),ne[1]=Math.floor(ne[1]),T&&(he[0]||he[1])&&(ne[0]+=he[0],0!==he[1]&&(ne[1]+=D(he[1],te.factorAlignment)),I.unapplyProjection(ne,re)),ne[0]+=this.parameters.screenOffset[0],ne[1]+=this.parameters.screenOffset[1],L(ge,te.factor,ge);const e=me*I.pixelRatio;let t;if(l.textureIsSignedDistanceField&&(t=l.outlineSize*I.pixelRatio/2),ee(y,ne[0],ne[1],ge,e,t,l,z)){const e=a.ray;if(h(oe,re,n(fe,I.viewMatrix)),ne[0]=y[0],ne[1]=y[1],I.unprojectFromRenderScreen(ne,re)){const t=P();d(t,e.direction);const s=1/g(t);m(t,t,s);o(O(e.origin,re)*s,t,-1,!0,1,oe)}}}}}computeAttachmentOrigin(e,t){const s=e.vertexAttributes;if(!s)return!1;const r=s.get(V.POSITION),i=e.indices.get(V.POSITION);return _(r,i,t)}createBufferWriter(){return new Ae(this)}_normalAndViewAngle(e,t,s,i){return C(t)&&(t=r(le,t)),S(i.normal,e,t),h(i.normal,i.normal,s.viewInverseTransposeMatrix),i.cosAngle=v(ae,Oe),i}_updateScaleInfo(e,s,r){const i=this.parameters;t(i.screenSizePerspective)?E(r,s,i.screenSizePerspective,e.factor):(e.factor.scale=1,e.factor.factor=0,e.factor.minPixelSize=0,e.factor.paddingPixels=0),t(i.screenSizePerspectiveAlignment)?E(r,s,i.screenSizePerspectiveAlignment,e.factorAlignment):(e.factorAlignment.factor=e.factor.factor,e.factorAlignment.scale=e.factor.scale,e.factorAlignment.minPixelSize=e.factor.minPixelSize,e.factorAlignment.paddingPixels=e.factor.paddingPixels)}applyShaderOffsetsView(e,t,s,r,i,n,a){const o=this._normalAndViewAngle(t,s,i,ue);return this._applyVerticalGroundOffsetView(e,o,i,a),this._applyVerticalOffsetTransformationView(a,o,i,n),this._applyPolygonOffsetView(a,o,r[3],i,a),this._applyCenterOffsetView(a,r,a),a}applyShaderOffsetsNDC(e,s,r,i,n){return this._applyCenterOffsetNDC(e,s,r,i),t(n)&&d(n,i),this._applyPolygonOffsetNDC(i,s,r,i),i}_applyPolygonOffsetView(t,s,r,i,n){const a=i.aboveGround?1:-1;let o=Math.sign(r);0===o&&(o=a);const c=a*o;if(this.parameters.shaderPolygonOffset<=0)return d(n,t);const l=e(Math.abs(s.cosAngle),.01,1),f=1-Math.sqrt(1-l*l)/l/i.viewport[2];return m(n,t,c>0?f:1/f),n}_applyVerticalGroundOffsetView(e,t,s,r){const i=g(e),n=s.aboveGround?1:-1,a=.5*s.computeRenderPixelSizeAtDist(i),o=m(re,t.normal,n*a);return A(r,e,o),r}_applyVerticalOffsetTransformationView(e,t,r,i){const n=this.parameters;if(!n.verticalOffset||!n.verticalOffset.screenLength){if(n.screenSizePerspective||n.screenSizePerspectiveAlignment){const s=g(e);this._updateScaleInfo(i,s,t.cosAngle)}else i.factor.scale=1,i.factorAlignment.scale=1;return e}const a=g(e),o=s(n.screenSizePerspectiveAlignment,n.screenSizePerspective),c=B(r,a,n.verticalOffset,t.cosAngle,o);return this._updateScaleInfo(i,a,t.cosAngle),m(t.normal,t.normal,c),A(e,e,t.normal)}_applyCenterOffsetView(e,t,s){const r="screen"!==this.parameters.centerOffsetUnits;return s!==e&&d(s,e),r&&(s[0]+=t[0],s[1]+=t[1],t[2]&&(u(ie,s),A(s,s,m(ie,ie,t[2])))),s}_applyCenterOffsetNDC(e,t,s,r){const i="screen"!==this.parameters.centerOffsetUnits;return r!==e&&d(r,e),i||(r[0]+=t[0]/s.fullWidth*2,r[1]+=t[1]/s.fullHeight*2),r}_applyPolygonOffsetNDC(e,t,s,r){const i=this.parameters.shaderPolygonOffset;if(e!==r&&d(r,e),i){const e=s.aboveGround?1:-1,n=e*Math.sign(t[3]);r[2]-=(n||e)*i}return r}requiresSlot(e){if(e===w.DRAPED_MATERIAL)return!0;const{drawInSecondSlot:t,occlusionTest:s}=this.parameters;return e===(t?w.LABEL_MATERIAL:w.HUD_MATERIAL)||s&&e===w.OCCLUSION_PIXELS}createGLMaterial(e){return e.output===z.Color||e.output===z.Alpha?new Q(e):e.output===z.Highlight?new K(e):null}calculateRelativeScreenBounds(e,t,s=y()){return Y(this.parameters,e,t,s),s[2]=s[0]+e[0],s[3]=s[1]+e[1],s}}class K extends M{constructor(e){super({...e,...e.material.parameters})}_updateParameters(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.passParameters),this.selectProgram(e)}selectProgram(e){return this.ensureTechnique(W,e)}beginSlot(e){return this._updateParameters(e)}}class Q extends K{_isOcclusionSlot(e){return e.slot===w.OCCLUSION_PIXELS&&this._material.parameters.occlusionTest&&(this._output===z.Color||this._output===z.Alpha)}selectProgram(e){return this.ensureTechnique(W,e,this._isOcclusionSlot(e)?z.Occlusion:this._output)}}function Y(e,t,s,r=se){return o(r,e.anchorPosition),r[0]*=-t[0],r[1]*=-t[1],r[0]+=e.screenOffset[0]*s,r[1]+=e.screenOffset[1]*s,r}function $(e){const t=e[0],s=e[1],r=e[2],i=e[3],n=e[4],a=e[5],o=e[6],c=e[7],l=e[8],f=1/Math.sqrt(t*t+s*s+r*r),h=1/Math.sqrt(i*i+n*n+a*a),u=1/Math.sqrt(o*o+c*c+l*l);return e[0]=t*f,e[1]=s*f,e[2]=r*f,e[3]=i*h,e[4]=n*h,e[5]=a*h,e[6]=o*u,e[7]=c*u,e[8]=l*u,e}function ee(e,s,r,i,n,a,o,c){let l=s-n-(c[0]>0?i[0]*c[0]:0),f=l+i[0]+2*n,h=r-n-(c[1]>0?i[1]*c[1]:0),u=h+i[1]+2*n;const p=o.distanceFieldBoundingBox;return o.textureIsSignedDistanceField&&t(p)&&(l+=i[0]*p[0],h+=i[1]*p[1],f-=i[0]*(1-p[2]),u-=i[1]*(1-p[3]),l-=a,f+=a,h-=a,u+=a),e[0]>l&&e[0]<f&&e[1]>h&&e[1]<u}const te={factor:{scale:0,factor:0,minPixelSize:0,paddingPixels:0},factorAlignment:{scale:0,factor:0,minPixelSize:0,paddingPixels:0}},se=c(),re=P(),ie=P(),ne=x(),ae=P(),oe=P(),ce=i(),le=i(),fe=a(),he=P(),ue={normal:ae,cosAngle:0},pe=a(),me=1,de=2,ge=[0,0],Oe=b(0,0,1);class Se extends j{constructor(){super(...arguments),this.renderOccluded=q.Occlude,this.color=[1,1,1,1],this.texCoordScale=[1,1],this.polygonOffset=!1,this.anchorPosition=l(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.outlineColor=[1,1,1,1],this.outlineSize=0,this.vvSizeEnabled=!1,this.vvSizeMinSize=[1,1,1],this.vvSizeMaxSize=[100,100,100],this.vvSizeOffset=[0,0,0],this.vvSizeFactor=[1,1,1],this.vvColorEnabled=!1,this.vvColorValues=[0,0,0,0,0,0,0,0],this.vvColorColors=[1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.binaryHighlightOcclusion=!0,this.debugDrawLabelBorder=!1,this.centerOffsetUnits="world",this.drawInSecondSlot=!1,this.depthEnabled=!0,this.isDraped=!1}}const ve=I().vec3f(V.POSITION).vec3f(V.NORMAL).vec2f(V.UV0).vec4u8(V.COLOR).vec2f(V.SIZE).vec4f(V.AUXPOS1).vec4f(V.AUXPOS2);class Ae{constructor(e){this.material=e,this.vertexBufferLayout=ve}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return 6*e.indices.get(V.POSITION).length}write(e,t,s,r){N(t.indices.get(V.POSITION),t.vertexAttributes.get(V.POSITION).data,e.transformation,s.position,r,6),G(t.indices.get(V.NORMAL),t.vertexAttributes.get(V.NORMAL).data,e.invTranspTransformation,s.normal,r,6);{const e=t.vertexAttributes.get(V.UV0).data;let i,n,a,o;if(null==e||e.length<4){const e=this.material.parameters;i=0,n=0,a=e.texCoordScale[0],o=e.texCoordScale[1]}else i=e[0],n=e[1],a=e[2],o=e[3];a=Math.min(1.99999,a+1),o=Math.min(1.99999,o+1);const c=t.indices.get(V.POSITION).length,l=s.uv0;let f=r;for(let t=0;t<c;++t)l.set(f,0,i),l.set(f,1,n),f+=1,l.set(f,0,a),l.set(f,1,n),f+=1,l.set(f,0,a),l.set(f,1,o),f+=1,l.set(f,0,a),l.set(f,1,o),f+=1,l.set(f,0,i),l.set(f,1,o),f+=1,l.set(f,0,i),l.set(f,1,n),f+=1}H(t.indices.get(V.COLOR),t.vertexAttributes.get(V.COLOR).data,4,s.color,r,6);{const e=t.indices.get(V.SIZE),i=t.vertexAttributes.get(V.SIZE).data,n=e.length,a=s.size;let o=r;for(let t=0;t<n;++t){const s=i[2*e[t]],r=i[2*e[t]+1];for(let e=0;e<6;++e)a.set(o,0,s),a.set(o,1,r),o+=1}}t.indices.get(V.AUXPOS1)&&t.vertexAttributes.get(V.AUXPOS1)&&X(t.indices.get(V.AUXPOS1),t.vertexAttributes.get(V.AUXPOS1).data,s.auxpos1,r,6),t.indices.get(V.AUXPOS2)&&t.vertexAttributes.get(V.AUXPOS2)&&X(t.indices.get(V.AUXPOS2),t.vertexAttributes.get(V.AUXPOS2).data,s.auxpos2,r,6)}}export{J as HUDMaterial,Se as Parameters};
|
|
5
|
+
import{clamp as e}from"../../../../core/mathUtils.js";import{isSome as t,unwrapOr as s}from"../../../../core/maybe.js";import{f as i}from"../../../../chunks/mat3.js";import{c as r}from"../../../../chunks/mat3f64.js";import{a as n}from"../../../../chunks/mat4.js";import{c as a}from"../../../../chunks/mat4f64.js";import{c as o}from"../../../../chunks/vec2.js";import{a as c,f as l}from"../../../../chunks/vec2f64.js";import{s as f,m as h,n as u,b as p,g as m,c as d,l as g,i as O,t as S,e as v,a as A}from"../../../../chunks/vec3.js";import{c as P,f as b}from"../../../../chunks/vec3f64.js";import{c as x}from"../../../../chunks/vec4f64.js";import{isMat4 as C}from"../../../../core/libs/gl-matrix-2/types/mat4.js";import{create as y}from"../../../../geometry/support/aaBoundingRect.js";import{newLayout as I}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as z}from"../core/shaderLibrary/ShaderOutputOptions.js";import{HUDSpace as T}from"../core/shaderLibrary/hud/HUD.glsl.js";import{computeAttachmentOriginPoints as _}from"../lib/geometryDataUtils.js";import{GLTextureMaterial as M,GLTextureMaterialBindParameters as j}from"../lib/GLTextureMaterial.js";import{Material as U,RenderOccludedFlag as q}from"../lib/Material.js";import{RenderSlot as w}from"../lib/RenderSlot.js";import{applyScaleFactor as D,applyPrecomputedScaleFactor as L,precomputeScaleFactor as E}from"../lib/screenSizePerspectiveUtils.js";import{assert as R}from"../lib/Util.js";import{VertexAttribute as V}from"../lib/VertexAttribute.js";import{writePosition as N,writeNormal as G,writeColor as H,writeBufferVec4 as B}from"./internal/bufferWriterUtils.js";import{verticalOffsetAtDistance as X}from"./internal/MaterialUtil.js";import{isInstanceHidden as k}from"./renderers/utils.js";import{c as F}from"../../../../chunks/HUDMaterial.glsl.js";import{HUDMaterialTechnique as W}from"../shaders/HUDMaterialTechnique.js";import{HUDMaterialTechniqueConfiguration as Z}from"../shaders/HUDMaterialTechniqueConfiguration.js";class J extends U{constructor(e){super(e,new Se),this.techniqueConfig=new Z}getConfiguration(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasVerticalOffset=!!this.parameters.verticalOffset,this.techniqueConfig.hasScreenSizePerspective=!!this.parameters.screenSizePerspective,this.techniqueConfig.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits?T.Screen:T.World,this.techniqueConfig.hasPolygonOffset=this.parameters.polygonOffset,this.techniqueConfig.isDraped=this.parameters.isDraped,this.techniqueConfig.occlusionTestEnabled=this.parameters.occlusionTest,this.techniqueConfig.pixelSnappingEnabled=this.parameters.pixelSnappingEnabled,this.techniqueConfig.signedDistanceFieldEnabled=this.parameters.textureIsSignedDistanceField,this.techniqueConfig.vvSize=!!this.parameters.vvSizeEnabled,this.techniqueConfig.vvColor=!!this.parameters.vvColorEnabled,e===z.Color&&(this.techniqueConfig.debugDrawLabelBorder=!!this.parameters.debugDrawLabelBorder),e===z.Highlight&&(this.techniqueConfig.binaryHighlightOcclusionEnabled=this.parameters.binaryHighlightOcclusion),this.techniqueConfig.depthEnabled=this.parameters.depthEnabled,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.hasMultipassGeometry=t.multipassGeometry.enabled,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig}intersect(e,s,i,r,n,a,o,c,l){t(l)?this._intersectDrapedHudGeometry(e,a,o,c,l):this._intersectHudGeometry(e,s,i,r,o,c)}_intersectDrapedHudGeometry(e,s,i,r,n){const a=e.vertexAttributes.get(V.POSITION),o=e.vertexAttributes.get(V.SIZE),c=this.parameters,l=F(c);let f=1,h=1;if(t(r)){const e=r(pe);f=e[0],h=e[5]}f*=e.screenToWorldRatio,h*=e.screenToWorldRatio;const u=de*e.screenToWorldRatio;for(let t=0;t<a.data.length/a.size;t++){const r=t*a.size,p=a.data[r],m=a.data[r+1],d=t*o.size;let g;ge[0]=o.data[d]*f,ge[1]=o.data[d+1]*h,c.textureIsSignedDistanceField&&(g=c.outlineSize*e.screenToWorldRatio/2),ee(s,p,m,ge,u,g,c,l)&&i(n.dist,n.normal,-1,!1)}}_intersectHudGeometry(e,s,r,a,o,c){if(!a.options.selectionMode||!a.options.hud||k(s))return;const l=this.parameters;let S=1,v=1;if(i(ce,r),t(c)){const e=c(pe);S=e[0],v=e[5],$(ce)}const A=e.vertexAttributes.get(V.POSITION),b=e.vertexAttributes.get(V.SIZE),x=e.vertexAttributes.get(V.NORMAL),C=e.vertexAttributes.get(V.AUXPOS1);R(A.size>=3);const y=a.point,I=a.camera,z=F(l);S*=I.pixelRatio,v*=I.pixelRatio;const T="screen"===this.parameters.centerOffsetUnits;for(let t=0;t<A.data.length/A.size;t++){const e=t*A.size;f(ie,A.data[e],A.data[e+1],A.data[e+2]),h(ie,ie,r);const s=t*b.size;ge[0]=b.data[s]*S,ge[1]=b.data[s+1]*v,h(ie,ie,I.viewMatrix);const i=t*C.size;if(f(he,C.data[i+0],C.data[i+1],C.data[i+2]),!T&&(ie[0]+=he[0],ie[1]+=he[1],0!==he[2])){const e=he[2];u(he,ie),p(ie,ie,m(he,he,e))}const c=t*x.size;if(f(re,x.data[c],x.data[c+1],x.data[c+2]),this._normalAndViewAngle(re,ce,I,ue),this._applyVerticalOffsetTransformationView(ie,ue,I,te),I.applyProjection(ie,ne),ne[0]>-1){ne[0]=Math.floor(ne[0]),ne[1]=Math.floor(ne[1]),T&&(he[0]||he[1])&&(ne[0]+=he[0],0!==he[1]&&(ne[1]+=D(he[1],te.factorAlignment)),I.unapplyProjection(ne,ie)),ne[0]+=this.parameters.screenOffset[0],ne[1]+=this.parameters.screenOffset[1],L(ge,te.factor,ge);const e=me*I.pixelRatio;let t;if(l.textureIsSignedDistanceField&&(t=l.outlineSize*I.pixelRatio/2),ee(y,ne[0],ne[1],ge,e,t,l,z)){const e=a.ray;if(h(oe,ie,n(fe,I.viewMatrix)),ne[0]=y[0],ne[1]=y[1],I.unprojectFromRenderScreen(ne,ie)){const t=P();d(t,e.direction);const s=1/g(t);m(t,t,s);o(O(e.origin,ie)*s,t,-1,!0,1,oe)}}}}}computeAttachmentOrigin(e,t){const s=e.vertexAttributes;if(!s)return!1;const i=s.get(V.POSITION),r=e.indices.get(V.POSITION);return _(i,r,t)}createBufferWriter(){return new Ae(this)}_normalAndViewAngle(e,t,s,r){return C(t)&&(t=i(le,t)),S(r.normal,e,t),h(r.normal,r.normal,s.viewInverseTransposeMatrix),r.cosAngle=v(ae,Oe),r}_updateScaleInfo(e,s,i){const r=this.parameters;t(r.screenSizePerspective)?E(i,s,r.screenSizePerspective,e.factor):(e.factor.scale=1,e.factor.factor=0,e.factor.minPixelSize=0,e.factor.paddingPixels=0),t(r.screenSizePerspectiveAlignment)?E(i,s,r.screenSizePerspectiveAlignment,e.factorAlignment):(e.factorAlignment.factor=e.factor.factor,e.factorAlignment.scale=e.factor.scale,e.factorAlignment.minPixelSize=e.factor.minPixelSize,e.factorAlignment.paddingPixels=e.factor.paddingPixels)}applyShaderOffsetsView(e,t,s,i,r,n,a){const o=this._normalAndViewAngle(t,s,r,ue);return this._applyVerticalGroundOffsetView(e,o,r,a),this._applyVerticalOffsetTransformationView(a,o,r,n),this._applyPolygonOffsetView(a,o,i[3],r,a),this._applyCenterOffsetView(a,i,a),a}applyShaderOffsetsNDC(e,s,i,r,n){return this._applyCenterOffsetNDC(e,s,i,r),t(n)&&d(n,r),this._applyPolygonOffsetNDC(r,s,i,r),r}_applyPolygonOffsetView(t,s,i,r,n){const a=r.aboveGround?1:-1;let o=Math.sign(i);0===o&&(o=a);const c=a*o;if(this.parameters.shaderPolygonOffset<=0)return d(n,t);const l=e(Math.abs(s.cosAngle),.01,1),f=1-Math.sqrt(1-l*l)/l/r.viewport[2];return m(n,t,c>0?f:1/f),n}_applyVerticalGroundOffsetView(e,t,s,i){const r=g(e),n=s.aboveGround?1:-1,a=.5*s.computeRenderPixelSizeAtDist(r),o=m(ie,t.normal,n*a);return A(i,e,o),i}_applyVerticalOffsetTransformationView(e,t,i,r){const n=this.parameters;if(!n.verticalOffset||!n.verticalOffset.screenLength){if(n.screenSizePerspective||n.screenSizePerspectiveAlignment){const s=g(e);this._updateScaleInfo(r,s,t.cosAngle)}else r.factor.scale=1,r.factorAlignment.scale=1;return e}const a=g(e),o=s(n.screenSizePerspectiveAlignment,n.screenSizePerspective),c=X(i,a,n.verticalOffset,t.cosAngle,o);return this._updateScaleInfo(r,a,t.cosAngle),m(t.normal,t.normal,c),A(e,e,t.normal)}_applyCenterOffsetView(e,t,s){const i="screen"!==this.parameters.centerOffsetUnits;return s!==e&&d(s,e),i&&(s[0]+=t[0],s[1]+=t[1],t[2]&&(u(re,s),A(s,s,m(re,re,t[2])))),s}_applyCenterOffsetNDC(e,t,s,i){const r="screen"!==this.parameters.centerOffsetUnits;return i!==e&&d(i,e),r||(i[0]+=t[0]/s.fullWidth*2,i[1]+=t[1]/s.fullHeight*2),i}_applyPolygonOffsetNDC(e,t,s,i){const r=this.parameters.shaderPolygonOffset;if(e!==i&&d(i,e),r){const e=s.aboveGround?1:-1,n=e*Math.sign(t[3]);i[2]-=(n||e)*r}return i}requiresSlot(e){if(e===w.DRAPED_MATERIAL)return!0;const{drawInSecondSlot:t,occlusionTest:s}=this.parameters;return e===(t?w.LABEL_MATERIAL:w.HUD_MATERIAL)||s&&e===w.OCCLUSION_PIXELS}createGLMaterial(e){return e.output===z.Color||e.output===z.Alpha?new Q(e):e.output===z.Highlight?new K(e):null}calculateRelativeScreenBounds(e,t,s=y()){return Y(this.parameters,e,t,s),s[2]=s[0]+e[0],s[3]=s[1]+e[1],s}}class K extends M{constructor(e){super({...e,...e.material.parameters})}selectProgram(e){return this.ensureTechnique(W,e)}beginSlot(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.selectProgram(e)}}class Q extends K{_isOcclusionSlot(e){return e.slot===w.OCCLUSION_PIXELS&&this._material.parameters.occlusionTest&&(this._output===z.Color||this._output===z.Alpha)}selectProgram(e){return this.ensureTechnique(W,e,this._isOcclusionSlot(e)?z.Occlusion:this._output)}}function Y(e,t,s,i=se){return o(i,e.anchorPosition),i[0]*=-t[0],i[1]*=-t[1],i[0]+=e.screenOffset[0]*s,i[1]+=e.screenOffset[1]*s,i}function $(e){const t=e[0],s=e[1],i=e[2],r=e[3],n=e[4],a=e[5],o=e[6],c=e[7],l=e[8],f=1/Math.sqrt(t*t+s*s+i*i),h=1/Math.sqrt(r*r+n*n+a*a),u=1/Math.sqrt(o*o+c*c+l*l);return e[0]=t*f,e[1]=s*f,e[2]=i*f,e[3]=r*h,e[4]=n*h,e[5]=a*h,e[6]=o*u,e[7]=c*u,e[8]=l*u,e}function ee(e,s,i,r,n,a,o,c){let l=s-n-(c[0]>0?r[0]*c[0]:0),f=l+r[0]+2*n,h=i-n-(c[1]>0?r[1]*c[1]:0),u=h+r[1]+2*n;const p=o.distanceFieldBoundingBox;return o.textureIsSignedDistanceField&&t(p)&&(l+=r[0]*p[0],h+=r[1]*p[1],f-=r[0]*(1-p[2]),u-=r[1]*(1-p[3]),l-=a,f+=a,h-=a,u+=a),e[0]>l&&e[0]<f&&e[1]>h&&e[1]<u}const te={factor:{scale:0,factor:0,minPixelSize:0,paddingPixels:0},factorAlignment:{scale:0,factor:0,minPixelSize:0,paddingPixels:0}},se=c(),ie=P(),re=P(),ne=x(),ae=P(),oe=P(),ce=r(),le=r(),fe=a(),he=P(),ue={normal:ae,cosAngle:0},pe=a(),me=1,de=2,ge=[0,0],Oe=b(0,0,1);class Se extends j{constructor(){super(...arguments),this.renderOccluded=q.Occlude,this.color=[1,1,1,1],this.texCoordScale=[1,1],this.polygonOffset=!1,this.anchorPosition=l(.5,.5),this.screenOffset=[0,0],this.shaderPolygonOffset=1e-5,this.textureIsSignedDistanceField=!1,this.outlineColor=[1,1,1,1],this.outlineSize=0,this.vvSizeEnabled=!1,this.vvSizeMinSize=[1,1,1],this.vvSizeMaxSize=[100,100,100],this.vvSizeOffset=[0,0,0],this.vvSizeFactor=[1,1,1],this.vvColorEnabled=!1,this.vvColorValues=[0,0,0,0,0,0,0,0],this.vvColorColors=[1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],this.hasSlicePlane=!1,this.pixelSnappingEnabled=!0,this.occlusionTest=!0,this.binaryHighlightOcclusion=!0,this.debugDrawLabelBorder=!1,this.centerOffsetUnits="world",this.drawInSecondSlot=!1,this.depthEnabled=!0,this.isDraped=!1}}const ve=I().vec3f(V.POSITION).vec3f(V.NORMAL).vec2f(V.UV0).vec4u8(V.COLOR).vec2f(V.SIZE).vec4f(V.AUXPOS1).vec4f(V.AUXPOS2);class Ae{constructor(e){this.material=e,this.vertexBufferLayout=ve}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return 6*e.indices.get(V.POSITION).length}write(e,t,s,i){N(t.indices.get(V.POSITION),t.vertexAttributes.get(V.POSITION).data,e.transformation,s.position,i,6),G(t.indices.get(V.NORMAL),t.vertexAttributes.get(V.NORMAL).data,e.invTranspTransformation,s.normal,i,6);{const e=t.vertexAttributes.get(V.UV0).data;let r,n,a,o;if(null==e||e.length<4){const e=this.material.parameters;r=0,n=0,a=e.texCoordScale[0],o=e.texCoordScale[1]}else r=e[0],n=e[1],a=e[2],o=e[3];a=Math.min(1.99999,a+1),o=Math.min(1.99999,o+1);const c=t.indices.get(V.POSITION).length,l=s.uv0;let f=i;for(let t=0;t<c;++t)l.set(f,0,r),l.set(f,1,n),f+=1,l.set(f,0,a),l.set(f,1,n),f+=1,l.set(f,0,a),l.set(f,1,o),f+=1,l.set(f,0,a),l.set(f,1,o),f+=1,l.set(f,0,r),l.set(f,1,o),f+=1,l.set(f,0,r),l.set(f,1,n),f+=1}H(t.indices.get(V.COLOR),t.vertexAttributes.get(V.COLOR).data,4,s.color,i,6);{const e=t.indices.get(V.SIZE),r=t.vertexAttributes.get(V.SIZE).data,n=e.length,a=s.size;let o=i;for(let t=0;t<n;++t){const s=r[2*e[t]],i=r[2*e[t]+1];for(let e=0;e<6;++e)a.set(o,0,s),a.set(o,1,i),o+=1}}t.indices.get(V.AUXPOS1)&&t.vertexAttributes.get(V.AUXPOS1)&&B(t.indices.get(V.AUXPOS1),t.vertexAttributes.get(V.AUXPOS1).data,s.auxpos1,i,6),t.indices.get(V.AUXPOS2)&&t.vertexAttributes.get(V.AUXPOS2)&&B(t.indices.get(V.AUXPOS2),t.vertexAttributes.get(V.AUXPOS2).data,s.auxpos2,i,6)}}export{J as HUDMaterial,Se as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{
|
|
5
|
+
import{disposeMaybe as e,isSome as t}from"../../../../core/maybe.js";import{createGaussianKernel as r}from"../../../../renderers/support/heatmapUtils.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import i from"../lib/GLMaterial.js";import{Material as n}from"../lib/Material.js";import{RenderPass as a}from"../lib/RenderPass.js";import{RenderSlot as o}from"../lib/RenderSlot.js";import{VertexAttribute as l}from"../lib/VertexAttribute.js";import{writePosition as u,writeBufferFloat as c}from"./internal/bufferWriterUtils.js";import{HeatmapDensityPassParameters as h,HeatmapDensityTechniqueConfiguration as m,HeatmapDensityTechnique as f}from"../shaders/HeatmapDensityTechnique.js";export{RadiusMode}from"../shaders/HeatmapDensityTechnique.js";import{TextureType as p,PixelFormat as T,SizedPixelFormat as d,PixelType as A,TextureSamplingMode as _,TextureWrapMode as R}from"../../../webgl/enums.js";import{Texture as g}from"../../../webgl/Texture.js";import{H as b}from"../../../../chunks/HeatmapDensity.glsl.js";class E extends h{constructor(){super(...arguments),this.isAttributeDriven=!1}}class x extends n{constructor(e){super(e,new E),this._techniqueConfig=new m}requiresSlot(e,t){return e===o.DRAPED_MATERIAL&&t===a.MATERIAL}getConfiguration(){return this._techniqueConfig.isAttributeDriven=this.parameters.isAttributeDriven,this._techniqueConfig}createGLMaterial(e){return new I(e)}intersect(){}createBufferWriter(){return new k(this.parameters.isAttributeDriven?j:D)}}class I extends i{constructor(e){super(e),this._kernelBlurRadius=1;const t=e.techniqueRep.constructionContext,{R32F:r,textureFloatLinear:s}=t.rctx.capabilities.textureFloat;if(this._floatInterpolationDisabled=!s,this._material.getConfiguration().mode===b.GaussianBlur){const e=null!=r;this._kernelTextureChannels=e?1:4,this._kernel=new g(t.rctx,{target:p.TEXTURE_2D,pixelFormat:e?T.RED:T.RGBA,internalFormat:e?d.R32F:T.RGBA,dataType:A.FLOAT,samplingMode:_.NEAREST,wrapMode:R.CLAMP_TO_EDGE,width:1,height:1})}this._material.setParameters({kernel:this._kernel})}dispose(){this._kernel=e(this._kernel),super.dispose()}beginSlot(e){if(t(this._kernel)){const{searchRadius:e,resolutionForScale:t}=this._material.parameters,r=Math.round(e);this._kernelBlurRadius!==r&&this._recomputeKernel(this._kernel,r),this._kernel.setSamplingMode(0===t||this._floatInterpolationDisabled?_.NEAREST:_.LINEAR)}return this.ensureTechnique(f,e)}_recomputeKernel(e,t){const s=r(Float32Array,t,{channels:this._kernelTextureChannels,halfKernel:!0});e.resize(s.length/this._kernelTextureChannels,1),e.setData(s),this._kernelBlurRadius=t}}class k{constructor(e){this.vertexBufferLayout=e}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(l.POSITION).length*B}write(e,t,r,s){u(t.indices.get(l.POSITION),t.vertexAttributes.get(l.POSITION).data,e.transformation,r.position,s,B);const i=t.indices.get(l.POSITION).length,n=r.uv0;let a=s;for(let l=0;l<i;++l)n.setValues(a++,-1,-1),n.setValues(a++,1,-1),n.setValues(a++,1,1),n.setValues(a++,1,1),n.setValues(a++,-1,1),n.setValues(a++,-1,-1);const o="featureAttribute"in r?r.featureAttribute:null;o&&c(t.indices.get(l.FEATUREATTRIBUTE),t.vertexAttributes.get(l.FEATUREATTRIBUTE).data,o,s,B)}}const D=s().vec3f(l.POSITION).vec2f(l.UV0),j=D.clone().f32(l.FEATUREATTRIBUTE),B=6;function v(e){return e instanceof x}export{x as HeatmapDensityMaterial,E as HeatmapDensityMaterialParameters,v as isHeatMapDensityMaterial};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{CullFaceOptions as t}from"../lib/basicInterfaces.js";import{outputFromPass as r}from"../lib/GLMaterials.js";import{GLTextureMaterial as
|
|
5
|
+
import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{CullFaceOptions as t}from"../lib/basicInterfaces.js";import{outputFromPass as r}from"../lib/GLMaterials.js";import{GLTextureMaterial as i}from"../lib/GLTextureMaterial.js";import{Material as s,MaterialParameters as a}from"../lib/Material.js";import{OITPolygonOffsetLimit as n}from"../lib/OrderIndependentTransparency.js";import{RenderSlot as u}from"../lib/RenderSlot.js";import{DefaultBufferWriter as h,PositionUVLayout as l}from"./internal/DefaultBufferWriter.js";import{intersectTriangleGeometry as o}from"./internal/MaterialUtil.js";import{ImageMaterialTechniqueConfiguration as c,ImageMaterialTechnique as p}from"../shaders/ImageMaterialTechnique.js";class m extends s{constructor(e){super(e,new f),this.supportsEdges=!0,this.techniqueConfig=new c}getConfiguration(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.cullFace=this.parameters.cullFace,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.transparent=this.parameters.transparent,this.techniqueConfig.writeDepth=this.parameters.writeDepth,this.techniqueConfig.hasOccludees=this.parameters.hasOccludees,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.enableOffset=t.camera.relativeElevation<n,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig}intersect(e,t,r,i,s,a,n){o(e,t,i,s,a,void 0,n)}requiresSlot(t,i){if(t===u.DRAPED_MATERIAL)return!0;if(r(i)===e.Highlight)return t===u.OPAQUE_MATERIAL;return t===(this.parameters.transparent?this.parameters.writeDepth?u.TRANSPARENT_MATERIAL:u.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL:u.OPAQUE_MATERIAL)}createGLMaterial(t){return t.output===e.Color||t.output===e.Alpha||t.output===e.Highlight?new d(t):void 0}createBufferWriter(){return new h(l)}}class d extends i{constructor(e){super({...e,...e.material.parameters})}_updateParameters(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.ensureTechnique(p,e)}_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&(this._material.setParameters({hasOccludees:e.hasOccludees}),this._updateParameters(e))}beginSlot(t){return this._output!==e.Color&&this._output!==e.Alpha||this._updateOccludeeState(t),this._updateParameters(t)}}class f extends a{constructor(){super(...arguments),this.transparent=!1,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=t.None,this.hasOccludees=!1,this.opacity=1,this.textureId=null,this.initTextureTransparent=!0}}export{m as ImageMaterial,f as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isSome as e}from"../../../../core/maybe.js";import{f as t}from"../../../../chunks/vec2f32.js";import{Z as r}from"../../../../chunks/vec2f64.js";import{newLayout as i}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as s}from"../core/shaderLibrary/ShaderOutputOptions.js";import{HUDSpace as n}from"../core/shaderLibrary/hud/HUD.glsl.js";import a from"../lib/GLMaterial.js";import{Material as o,MaterialParameters as u}from"../lib/Material.js";import{RenderSlot as f}from"../lib/RenderSlot.js";import{VertexAttribute as c}from"../lib/VertexAttribute.js";import{writePosition as l,writeNormal as h,writeBufferVec4 as m}from"./internal/bufferWriterUtils.js";import{LineCalloutTechnique as d}from"../shaders/LineCalloutTechnique.js";import{LineCalloutTechniqueConfiguration as p}from"../shaders/LineCalloutTechniqueConfiguration.js";class g extends o{constructor(e){super(e,new S),this.techniqueConfig=new p,this._uniqueMaterialIdentifier=g.uniqueMaterialIdentifier(this.parameters)}get uniqueMaterialIdentifier(){return this._uniqueMaterialIdentifier}getPassParameters(){return this.parameters}getConfiguration(t,r){const i=
|
|
5
|
+
import{isSome as e}from"../../../../core/maybe.js";import{f as t}from"../../../../chunks/vec2f32.js";import{Z as r}from"../../../../chunks/vec2f64.js";import{newLayout as i}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as s}from"../core/shaderLibrary/ShaderOutputOptions.js";import{HUDSpace as n}from"../core/shaderLibrary/hud/HUD.glsl.js";import a from"../lib/GLMaterial.js";import{Material as o,MaterialParameters as u}from"../lib/Material.js";import{RenderSlot as f}from"../lib/RenderSlot.js";import{VertexAttribute as c}from"../lib/VertexAttribute.js";import{writePosition as l,writeNormal as h,writeBufferVec4 as m}from"./internal/bufferWriterUtils.js";import{LineCalloutTechnique as d}from"../shaders/LineCalloutTechnique.js";import{LineCalloutTechniqueConfiguration as p}from"../shaders/LineCalloutTechniqueConfiguration.js";class g extends o{constructor(e){super(e,new S),this.techniqueConfig=new p,this._uniqueMaterialIdentifier=g.uniqueMaterialIdentifier(this.parameters)}get uniqueMaterialIdentifier(){return this._uniqueMaterialIdentifier}getPassParameters(){return this.parameters}getConfiguration(t,r){const i=r?.slot!==f.LINE_CALLOUTS;return this.techniqueConfig.occlusionTestEnabled=this.parameters.occlusionTest,this.techniqueConfig.hasVerticalOffset=e(this.parameters.verticalOffset),this.techniqueConfig.hasScreenSizePerspective=e(this.parameters.screenSizePerspective),this.techniqueConfig.depthHudEnabled=i,this.techniqueConfig.depthHudAlignStartEnabled=!!this.parameters.depthHUDAlignStart,this.techniqueConfig.screenCenterOffsetUnitsEnabled="screen"===this.parameters.centerOffsetUnits?n.Screen:n.World,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasMultipassGeometry=!!r&&r.multipassGeometry.enabled,this.techniqueConfig}intersect(){}requiresSlot(e){switch(e){case f.LINE_CALLOUTS:case f.LINE_CALLOUTS_HUD_DEPTH:return!0}return!1}createGLMaterial(e){return e.output===s.Color?new O(e):null}createBufferWriter(){return new C}validateParameters(e){const t=g.uniqueMaterialIdentifier(e);t!==this._uniqueMaterialIdentifier&&(this._uniqueMaterialIdentifier=t)}static uniqueMaterialIdentifier(e){return JSON.stringify({screenOffset:e.screenOffset||[0,0],centerOffsetUnits:e.centerOffsetUnits||"world"})}}class O extends a{beginSlot(e){return this.ensureTechnique(d,e)}}class S extends u{constructor(){super(...arguments),this.screenOffset=r,this.color=[0,0,0,1],this.size=1,this.occlusionTest=!1,this.shaderPolygonOffset=1e-5,this.depthHUDAlignStart=!1,this.centerOffsetUnits="world",this.hasSlicePlane=!1}}const q=i().vec3f(c.POSITION).vec3f(c.NORMAL).vec2f(c.UV0).vec4f(c.AUXPOS1),L=[t(0,0),t(1,0),t(0,1),t(1,0),t(1,1),t(0,1)];class C{constructor(){this.vertexBufferLayout=q}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return 6*e.indices.get(c.POSITION).length}write(e,t,r,i){l(t.indices.get(c.POSITION),t.vertexAttributes.get(c.POSITION).data,e.transformation,r.position,i,6),h(t.indices.get(c.NORMAL),t.vertexAttributes.get(c.NORMAL).data,e.invTranspTransformation,r.normal,i,6),m(t.indices.get(c.AUXPOS1),t.vertexAttributes.get(c.AUXPOS1).data,r.auxpos1,i,6);for(let s=0;s<L.length;++s)r.uv0.setVec(i+s,L[s])}}export{g as LineCalloutMaterial,S as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{s as e,
|
|
5
|
+
import{s as e,z as t,m as r}from"../../../../chunks/vec3.js";import{c as s}from"../../../../chunks/vec3f64.js";import{newLayout as a}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as i}from"../core/shaderLibrary/ShaderOutputOptions.js";import{outputFromPass as n}from"../lib/GLMaterials.js";import{GLTextureMaterial as h}from"../lib/GLTextureMaterial.js";import{Material as o,RenderOccludedFlag as u}from"../lib/Material.js";import{RenderSlot as c}from"../lib/RenderSlot.js";import{VertexAttribute as l}from"../lib/VertexAttribute.js";import{VisualVariablePassParameters as p}from"./VisualVariablePassParameters.js";import{markerVertexAttributeLocations as d,LineMarkerTechnique as m}from"../shaders/LineMarkerTechnique.js";import{LineMarkerTechniqueConfiguration as E}from"../shaders/LineMarkerTechniqueConfiguration.js";import{CapType as A}from"../shaders/RibbonLineTechniqueConfiguration.js";class T extends o{constructor(e){super(e,new v),this._vertexAttributeLocations=d,this.techniqueConfig=new E,this.layout=this.createLayout()}dispose(){}getConfiguration(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.draped=t.slot===c.DRAPED_MATERIAL,this.techniqueConfig.hasCap=this.parameters.cap!==A.BUTT,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasOccludees=this.parameters.hasOccludees,this.techniqueConfig.writeDepth=this.parameters.writeDepth,this.techniqueConfig.vvColor=this.parameters.vvColorEnabled,this.techniqueConfig.vvOpacity=this.parameters.vvOpacityEnabled,this.techniqueConfig.vvSize=this.parameters.vvSizeEnabled,this.techniqueConfig.occluder=this.parameters.renderOccluded===u.OccludeAndTransparentStencil,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig}intersect(){}createLayout(){const e=a().vec3f(l.POSITION).vec2f(l.UV0).vec3f(l.AUXPOS1);return this.parameters.vvSizeEnabled?e.f32(l.SIZEFEATUREATTRIBUTE):e.f32(l.SIZE),this.parameters.vvColorEnabled?e.f32(l.COLORFEATUREATTRIBUTE):e.vec4f(l.COLOR),this.parameters.vvOpacityEnabled&&e.f32(l.OPACITYFEATUREATTRIBUTE),e}createBufferWriter(){return new C(this.layout,this.parameters)}requiresSlot(e,t){if(e===c.DRAPED_MATERIAL)return!0;if(this.parameters.renderOccluded===u.OccludeAndTransparentStencil)return e===c.OPAQUE_MATERIAL||e===c.OCCLUDER_MATERIAL||e===c.TRANSPARENT_OCCLUDER_MATERIAL;const r=n(t);if(r===i.Color||r===i.Alpha){return e===(this.parameters.writeDepth?c.TRANSPARENT_MATERIAL:c.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL)}return e===c.OPAQUE_MATERIAL}createGLMaterial(e){return e.output===i.Color||e.output===i.Alpha||e.output===i.Highlight||e.output===i.Depth?new f(e):null}}class f extends h{_updateParameters(e){return this.updateTexture(this._material.parameters.textureId),this._material.setParameters(this.textureBindParameters),this.ensureTechnique(m,e)}_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:e.hasOccludees})}beginSlot(e){return this._output!==i.Color&&this._output!==i.Alpha||this._updateOccludeeState(e),this._updateParameters(e)}}class v extends p{constructor(){super(...arguments),this.width=0,this.color=[1,1,1,1],this.placement="end",this.cap=A.BUTT,this.writeDepth=!0,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.hasOccludees=!1}}class C{constructor(e,t){this.vertexBufferLayout=e,this.parameters=t}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(){return"begin-end"===this.parameters.placement?12:6}write(s,a,i,n){const h=a.vertexAttributes.get(l.POSITION).data,o=h.length/3;let u=1,c=0;this.parameters.vvSizeEnabled?c=a.vertexAttributes.get(l.SIZEFEATUREATTRIBUTE).data[0]:a.vertexAttributes.has(l.SIZE)&&(u=a.vertexAttributes.get(l.SIZE).data[0]);let p=[1,1,1,1],d=0;this.parameters.vvColorEnabled?d=a.vertexAttributes.get(l.COLORFEATUREATTRIBUTE).data[0]:a.vertexAttributes.has(l.COLOR)&&(p=a.vertexAttributes.get(l.COLOR).data);let m=0;this.parameters.vvOpacityEnabled&&(m=a.vertexAttributes.get(l.OPACITYFEATUREATTRIBUTE).data[0]);const E=s.transformation,A=new Float32Array(i.buffer);let T=n*(this.vertexBufferLayout.stride/4);const f=(e,t,r,s)=>{if(A[T++]=e[0],A[T++]=e[1],A[T++]=e[2],A[T++]=r[0],A[T++]=r[1],A[T++]=t[0],A[T++]=t[1],A[T++]=t[2],this.parameters.vvSizeEnabled?A[T++]=c:A[T++]=u,this.parameters.vvColorEnabled)A[T++]=d;else{const e=Math.min(4*s,p.length-4);A[T++]=p[e+0],A[T++]=p[e+1],A[T++]=p[e+2],A[T++]=p[e+3]}this.parameters.vvOpacityEnabled&&(A[T++]=m)};let v;!function(e){e[e.ASCENDING=1]="ASCENDING",e[e.DESCENDING=-1]="DESCENDING"}(v||(v={}));const C=(s,a)=>{const i=e(b,h[3*s],h[3*s+1],h[3*s+2]),n=O;let u=s+a;do{e(n,h[3*u],h[3*u+1],h[3*u+2]),u+=a}while(t(i,n)&&u>=0&&u<o);E&&(r(i,i,E),r(n,n,E)),f(i,n,[-1,-1],s),f(i,n,[1,-1],s),f(i,n,[1,1],s),f(i,n,[-1,-1],s),f(i,n,[1,1],s),f(i,n,[-1,1],s)},R=this.parameters.placement;"begin"!==R&&"begin-end"!==R||C(0,v.ASCENDING),"end"!==R&&"begin-end"!==R||C(o-1,v.DESCENDING)}}const b=s(),O=s();export{T as LineMarkerMaterial,v as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{s as e,n as t,b as r,f as s,i as o,m as i}from"../../../../chunks/vec3.js";import{c as n}from"../../../../chunks/vec3f64.js";import{newLayout as a}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as
|
|
5
|
+
import{s as e,n as t,b as r,f as s,i as o,m as i}from"../../../../chunks/vec3.js";import{c as n}from"../../../../chunks/vec3f64.js";import{newLayout as a}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as c}from"../core/shaderLibrary/ShaderOutputOptions.js";import{TransparencyPassType as u}from"../lib/basicInterfaces.js";import f from"../lib/GLMaterial.js";import{Material as l,MaterialParameters as p}from"../lib/Material.js";import{RenderSlot as h}from"../lib/RenderSlot.js";import{VertexAttribute as m}from"../lib/VertexAttribute.js";import{MeasurementArrowTechniqueConfiguration as d,MeasurementArrowTechnique as O}from"../shaders/MeasurementArrowTechnique.js";class g extends l{constructor(e){super(e,new v),this.techniqueConfig=new d}getConfiguration(e,t){return this.techniqueConfig.polygonOffsetEnabled=this.parameters.polygonOffset,this.techniqueConfig.transparent=this.parameters.stripeEvenColor[3]<1||this.parameters.stripeOddColor[3]<1||this.parameters.outlineColor[3]<1,this.techniqueConfig.transparencyPassType=t?.transparencyPassType??u.NONE,this.techniqueConfig}dispose(){}intersect(){}requiresSlot(e){return e===h.OPAQUE_MATERIAL}createGLMaterial(e){return e.output===c.Color?new b(e):null}createBufferWriter(){return new x}}class b extends f{beginSlot(e){return this.ensureTechnique(O,e)}}class v extends p{constructor(){super(...arguments),this.width=32,this.outlineSize=.2,this.outlineColor=[1,.5,0,1],this.stripeLength=1,this.stripeEvenColor=[1,1,1,1],this.stripeOddColor=[1,.5,0,1],this.polygonOffset=!1}}const C=a().vec3f(m.POSITION).vec3f(m.NORMAL).vec2f(m.UV0).f32(m.AUXPOS1),y=n(),A=n(),I=n(),T=n(),j=n();class x{constructor(){this.vertexBufferLayout=C}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return 2*(e.indices.get(m.POSITION).length/2+1)}write(n,a,c,u){const f=a.vertexAttributes.get(m.POSITION).data,l=a.vertexAttributes.get(m.NORMAL).data,p=f.length/3,h=a&&a.indices&&a.indices.get(m.POSITION);h&&h.length!==2*(p-1)&&console.warn("MeasurementArrowMaterial does not support indices");const d=y,O=A,g=I,b=T,v=j,C=n.transformation,x=n.invTranspTransformation,L=c.position,S=c.normal,w=c.uv0;let M=0;for(let m=0;m<p;++m){const n=3*m;if(e(d,f[n],f[n+1],f[n+2]),m<p-1){const o=3*(m+1);e(O,f[o],f[o+1],f[o+2]),e(v,l[o],l[o+1],l[o+2]),t(v,v),r(g,O,d),t(g,g),s(b,v,g),t(b,b)}const a=o(d,O);C&&x&&(i(d,d,C),i(O,O,C),i(b,b,x));const c=u+2*m,h=c+1;L.setVec(c,d),L.setVec(h,d),S.setVec(c,b),S.setVec(h,b),w.set(c,0,M),w.set(c,1,-1),w.set(h,0,M),w.set(h,1,1),m<p-1&&(M+=a)}const q=c.auxpos1;for(let e=0;e<2*p;++e)q.set(u+e,M)}}export{g as MeasurementArrowMaterial,v as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../../core/Logger.js";import{isSome as t,isNone as r}from"../../../../core/maybe.js";import{createRenderScreenPointArray3 as s}from"../../../../core/screenUtils.js";import{c as i}from"../../../../chunks/vec2.js";import{s as o,b as n,e as a,g as c,a as u,c as
|
|
5
|
+
import e from"../../../../core/Logger.js";import{isSome as t,isNone as r}from"../../../../core/maybe.js";import{createRenderScreenPointArray3 as s}from"../../../../core/screenUtils.js";import{c as i}from"../../../../chunks/vec2.js";import{s as o,b as n,e as a,g as c,a as u,c as f,l,i as m,m as p}from"../../../../chunks/vec3.js";import{c as h}from"../../../../chunks/vec3f64.js";import{O as d}from"../../../../chunks/vec4f64.js";import{PlaneIndex as g}from"../../../../geometry/support/frustum.js";import{create as A,distance2 as O,fromPoints as S,closestLineSegmentPoint as j}from"../../../../geometry/support/lineSegment.js";import{create as T,fromPoints as _,signedDistance as C,normal as b}from"../../../../geometry/support/plane.js";import{BufferViewVec3f as y,BufferViewVec2f as P}from"../../../../geometry/support/buffer/BufferView.js";import{ShaderOutput as v}from"../core/shaderLibrary/ShaderOutputOptions.js";import{computeAttachmentOriginLines as x}from"../lib/geometryDataUtils.js";import N from"../lib/GLMaterial.js";import{Material as E,MaterialParameters as R}from"../lib/Material.js";import{RenderSlot as I}from"../lib/RenderSlot.js";import{isTranslationMatrix as L}from"../lib/Util.js";import{VertexAttribute as q}from"../lib/VertexAttribute.js";import{writeDefaultAttributes as w}from"./internal/bufferWriterUtils.js";import{PositionColorLayout as U,PositionLayout as B,DefaultBufferWriter as V}from"./internal/DefaultBufferWriter.js";import{intersectDrapedRenderLineGeometry as M}from"./internal/MaterialUtil.js";import{isInstanceHidden as D}from"./renderers/utils.js";import{NativeLineTechnique as k}from"../shaders/NativeLineTechnique.js";import{NativeLineTechniqueConfiguration as G}from"../shaders/NativeLineTechniqueConfiguration.js";const X=e.getLogger("esri.views.3d.webgl-engine.materials.NativeLineMaterial");var F;!function(e){e[e.START=0]="START",e[e.END=1]="END"}(F||(F={}));class W extends E{constructor(e){super(e,new z),this._techniqueConfig=new G}getConfiguration(e,r){this._techniqueConfig.output=e,this._techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this._techniqueConfig.hasVertexColors=this.parameters.hasVertexColors,this._techniqueConfig.transparent=this.parameters.color[3]<1||this.parameters.width<1,this._techniqueConfig.draped=r.slot===I.DRAPED_MATERIAL;const s=t(this.parameters.stipplePattern);return this._techniqueConfig.stippleEnabled=s,this._techniqueConfig.stippleOffColorEnabled=s&&t(this.parameters.stippleOffColor),this._techniqueConfig.hasOccludees=this.parameters.hasOccludees,this._techniqueConfig.stipplePreferContinuous=this.parameters.stipplePreferContinuous,this._techniqueConfig}intersect(e,r,s,i,o,n,a,c,u){t(u)?M(e,i,u,n,1,a):this._intersectLineGeometry(e,r,s,i,a)}_intersectLineGeometry(e,t,r,s,p){if(!s.options.selectionMode||D(t))return;if(!L(r))return void X.error("intersection assumes a translation-only matrix");const h=e.vertexAttributes.get(q.POSITION).data,d=s.camera,A=oe;i(A,s.point);const T=2;o(ne[0],A[0]-T,A[1]+T,0),o(ne[1],A[0]+T,A[1]+T,0),o(ne[2],A[0]+T,A[1]-T,0),o(ne[3],A[0]-T,A[1]-T,0);for(let i=0;i<4;i++)if(!d.unprojectFromRenderScreen(ne[i],ae[i]))return;_(d.eye,ae[0],ae[1],ce),_(d.eye,ae[1],ae[2],ue),_(d.eye,ae[2],ae[3],fe),_(d.eye,ae[3],ae[0],le);let y=Number.MAX_VALUE,P=0;for(let i=0;i<h.length-5;i+=3){if(J[0]=h[i]+r[12],J[1]=h[i+1]+r[13],J[2]=h[i+2]+r[14],K[0]=h[i+3]+r[12],K[1]=h[i+4]+r[13],K[2]=h[i+5]+r[14],C(ce,J)<0&&C(ce,K)<0||C(ue,J)<0&&C(ue,K)<0||C(fe,J)<0&&C(fe,K)<0||C(le,J)<0&&C(le,K)<0)continue;if(d.projectToRenderScreen(J,$),d.projectToRenderScreen(K,ee),$[2]<0&&ee[2]>0){n(Y,J,K);const e=d.frustum,t=-C(e[g.NEAR],J)/a(Y,b(e[g.NEAR]));c(Y,Y,t),u(J,J,Y),d.projectToRenderScreen(J,$)}else if($[2]>0&&ee[2]<0){n(Y,K,J);const e=d.frustum,t=-C(e[g.NEAR],K)/a(Y,b(e[g.NEAR]));c(Y,Y,t),u(K,K,Y),d.projectToRenderScreen(K,ee)}else if($[2]<0&&ee[2]<0)continue;$[2]=0,ee[2]=0;const e=O(S($,ee,se),A);e<y&&(y=e,f(te,J),f(re,K),P=i/3)}const v=s.rayBegin,x=s.rayEnd;if(y<T*T){let e=Number.MAX_VALUE;if(j(S(te,re,se),S(v,x,ie),Z)){n(Z,Z,v);const t=l(Z);c(Z,Z,1/t),e=t/m(v,x)}p(e,Z,P,!1)}}computeAttachmentOrigin(e,t){const r=e.vertexAttributes;if(!r)return!1;const s=r.get(q.POSITION);return x(s,null,!1,t)}requiresSlot(e){return e===I.OPAQUE_MATERIAL||e===I.DRAPED_MATERIAL}createGLMaterial(e){return e.output===v.Color||e.output===v.Highlight?new H(e):null}createBufferWriter(){const e=this.parameters.hasVertexColors?U:B;return r(this.parameters.stipplePattern)?new V(e):new Q(e.clone().vec3f(q.AUXPOS1).vec2f(q.UV0))}}class H extends N{_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:e.hasOccludees})}beginSlot(e){return this._output===v.Color&&this._updateOccludeeState(e),this.ensureTechnique(k,e)}}class Q{constructor(e){this.vertexBufferLayout=e}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(q.POSITION).length}write(e,t,r,s){w(t,this.vertexBufferLayout,e.transformation,e.invTranspTransformation,r,s),this._writeAuxpos1(e,t,r,s),this._writeUV0(e,t,r,s)}_writeAuxpos1(e,t,r,s){const i=r.getField(q.AUXPOS1,y),o=t.indices.get(q.POSITION),n=t.vertexAttributes.get(q.POSITION).data,a=e.transformation,c=i.typedBufferStride,u=i.typedBuffer;s*=c;for(let f=0;f<o.length-1;f+=2)for(const e of[1,0]){const t=3*o[f+e],r=n[t],i=n[t+1],l=n[t+2],m=a[0]*r+a[4]*i+a[8]*l+a[12],p=a[1]*r+a[5]*i+a[9]*l+a[13],h=a[2]*r+a[6]*i+a[10]*l+a[14];u[s]=m,u[s+1]=p,u[s+2]=h,s+=c}}_writeUV0(e,t,r,s){const i=r.getField(q.UV0,P),n=t.indices.get(q.POSITION),a=t.vertexAttributes.get(q.POSITION).data,c=t.vertexAttributes.get(q.DISTANCETOSTART)?.data,u=e.transformation,l=i.typedBufferStride,h=i.typedBuffer;let d=0;h[s*=l]=F.START,h[s+1]=d,s+=l;const g=3*n[0],A=o(J,a[g],a[g+1],a[g+2]);u&&p(A,A,u);const O=K,S=n.length-1;let j=1;const T=c?(e,t,r)=>d=c[r]:(e,t,r)=>d+=m(e,t);for(let m=1;m<S;m+=2){const e=3*n[m];o(O,a[e],a[e+1],a[e+2]),u&&p(O,O,u),T(A,O,j++);for(let t=0;t<2;++t)h[s]=1-t,h[s+1]=d,s+=l;f(A,O)}const _=3*n[S];o(O,a[_],a[_+1],a[_+2]),u&&p(O,O,u),T(A,O,j),h[s]=F.END,h[s+1]=d}}class z extends R{constructor(){super(...arguments),this.color=d,this.hasVertexColors=!1,this.hasSlicePlane=!1,this.width=1,this.stipplePreferContinuous=!0,this.hasOccludees=!1}}const J=h(),K=h(),Y=h(),Z=h(),$=s(),ee=s(),te=h(),re=h(),se=A(),ie=A(),oe=h(),ne=[s(),s(),s(),s()],ae=[h(),h(),h(),h()],ce=T(),ue=T(),fe=T(),le=T();export{W as NativeLineMaterial,z as Parameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{clamp as e}from"../../../../core/mathUtils.js";import{isNone as t}from"../../../../core/maybe.js";import{fromValues as r}from"../../../../geometry/support/aaBoundingBox.js";import{BufferViewVec4f as i}from"../../../../geometry/support/buffer/BufferView.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as a}from"../core/shaderLibrary/ShaderOutputOptions.js";import{NormalsDoubleSidedMode as o}from"../core/shaderLibrary/shading/Normals.glsl.js";import{computeAttachmentOriginLines as n}from"../lib/geometryDataUtils.js";import u from"../lib/GLMaterial.js";import{Material as h}from"../lib/Material.js";import{isPathGeometry as
|
|
5
|
+
import{clamp as e}from"../../../../core/mathUtils.js";import{isNone as t}from"../../../../core/maybe.js";import{fromValues as r}from"../../../../geometry/support/aaBoundingBox.js";import{BufferViewVec4f as i}from"../../../../geometry/support/buffer/BufferView.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as a}from"../core/shaderLibrary/ShaderOutputOptions.js";import{NormalsDoubleSidedMode as o}from"../core/shaderLibrary/shading/Normals.glsl.js";import{computeAttachmentOriginLines as n}from"../lib/geometryDataUtils.js";import u from"../lib/GLMaterial.js";import{Material as h}from"../lib/Material.js";import{isPathGeometry as c}from"../lib/PathGeometry.js";import{RenderPass as l}from"../lib/RenderPass.js";import{RenderSlot as p}from"../lib/RenderSlot.js";import{assert as d}from"../lib/Util.js";import{VertexAttribute as m}from"../lib/VertexAttribute.js";import{pathVertexAttributeLocations as f,PathTechniqueConfiguration as b,PathTechnique as v,PathPassParameters as S}from"./PathTechnique.js";import{writeDefaultAttributes as A,writeBufferVec4 as g}from"./internal/bufferWriterUtils.js";import{intersectAabbInvDir as E}from"./internal/MaterialUtil.js";class _ extends h{constructor(e){super(e,new T),this.supportsEdges=!0,this._vertexAttributeLocations=f,this._configuration=new b,this.vertexBufferLayout=_.getVertexBufferLayout(this.parameters)}getConfiguration(e,t){return this._configuration.output=e,this._configuration.vvSize=this.parameters.vvSizeEnabled,this._configuration.vvColor=this.parameters.vvColorEnabled,this._configuration.vvOpacity=this.parameters.vvOpacityEnabled,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this.parameters.transparent,this._configuration.hasOccludees=this.parameters.hasOccludees,e!==a.Color&&e!==a.Alpha||(this._configuration.doubleSidedMode=this.parameters.doubleSided&&"normal"===this.parameters.doubleSidedType?o.View:this.parameters.doubleSided&&"winding-order"===this.parameters.doubleSidedType?o.WindingOrder:o.None,this._configuration.receiveShadows=this.parameters.receiveShadows,this._configuration.receiveAmbientOcclusion=!!t.ssaoHelper.ready&&this.parameters.receiveSSAO),this._configuration.transparencyPassType=t.transparencyPassType,this._configuration.hasMultipassTerrain=t.multipassTerrain.enabled,this._configuration.cullAboveGround=t.multipassTerrain.cullAboveGround,this._configuration}isVisibleInPass(e){return e!==l.MATERIAL_DEPTH_SHADOWMAP_ALL&&e!==l.MATERIAL_DEPTH_SHADOWMAP_DEFAULT&&e!==l.MATERIAL_DEPTH_SHADOWMAP_HIGHLIGHT||this.parameters.castShadows}isVisible(){const e=this.parameters;return!!super.isVisible()&&e.opacity>0}intersect(i,s,a,o,n,u,h){const l=i;if(!c(l))return;const p=l.path,d=[this.parameters.size[0],this.parameters.size[1]];if(this.parameters.vvSizeEnabled){const t=this.parameters.vvSizeOffset,r=this.parameters.vvSizeFactor,i=this.parameters.vvSizeMinSize,s=this.parameters.vvSizeMaxSize,a=p.sizeAttributeValue;d[0]*=e(t[0]+a*r[0],i[0],s[0]),d[1]*=e(t[2]+a*r[2],i[2],s[2])}const m=Math.max(d[0],d[1]),f=i.boundingInfo;if(t(f))return void this._intersectTriangles(p,d,n,u,h);const b=r(f.bbMin[0]-m,f.bbMin[1]-m,f.bbMin[2]-m,f.bbMax[0]+m,f.bbMax[1]+m,f.bbMax[2]+m),v=[u[0]-n[0],u[1]-n[1],u[2]-n[2]],S=Math.sqrt(v[0]*v[0]+v[1]*v[1]+v[2]*v[2]),A=[S/v[0],S/v[1],S/v[2]];E(b,n,A,o.tolerance)&&this._intersectTriangles(p,d,n,u,h)}_intersectTriangles(e,t,r,i,s){e.baked.size&&e.baked.size[0]===t[0]&&e.baked.size[1]===t[1]||e.baked.bake(t),e.baked.intersect(r,i,s)}computeAttachmentOrigin(e,t){const r=e.vertexAttributes;if(!r)return null;const i=r.get(m.POSITION);return n(i,null,!1,t)}createBufferWriter(){return new L(this.vertexBufferLayout)}requiresSlot(e){return e===(this.parameters.transparent?p.TRANSPARENT_MATERIAL:p.OPAQUE_MATERIAL)||e===p.DRAPED_MATERIAL}createGLMaterial(e){return e.output===a.Color||e.output===a.Alpha||e.output===a.Depth||e.output===a.Normal||e.output===a.Highlight||e.output===a.Shadow&&this.parameters.castShadows?new O(e):null}static getVertexBufferLayout(e){let t=s().vec3f(m.POSITION).vec4f(m.PROFILERIGHT).vec4f(m.PROFILEUP).vec4f(m.PROFILEVERTEXANDNORMAL);return(e.vvColorEnabled||e.vvSizeEnabled||e.vvOpacityEnabled)&&(t=t.vec4f(m.FEATUREVALUE)),t}}class O extends u{_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:e.hasOccludees})}_updateShadowState(e){(t(this.technique)||e.shadowMap.enabled!==this.technique.configuration.receiveShadows)&&this._material.setParameters({receiveShadows:e.shadowMap.enabled})}beginSlot(e){return this._output!==a.Color&&this._output!==a.Alpha||(this._updateShadowState(e),this._updateOccludeeState(e)),this.ensureTechnique(v,e)}}class T extends S{constructor(){super(...arguments),this.doubleSided=!1,this.doubleSidedType="normal",this.receiveSSAO=!0,this.receiveShadows=!1,this.castShadows=!0,this.hasSlicePlane=!1,this.transparent=!1,this.hasOccludees=!1}}class L{constructor(e){this.vertexBufferLayout=e}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(m.POSITION).length}write(e,t,r,s){const a=e=>{if(t.vertexAttributes.has(e)){const a=t.vertexAttributes.get(e),o=t.indices.get(e);d(4===a.size);const n=r.getField(e,i);if(!n)throw new Error("unable to acquire view for "+e);g(o,a.data,n,s)}};a(m.PROFILERIGHT),a(m.PROFILEUP),a(m.PROFILEVERTEXANDNORMAL),this.vertexBufferLayout.hasField(m.FEATUREVALUE)&&a(m.FEATUREVALUE),A(t,this.vertexBufferLayout,e.transformation,e.invTranspTransformation,r,s)}}export{_ as PathMaterial,T as PathMaterialParameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../../../chunks/tslib.es6.js";import{
|
|
5
|
+
import{_ as e}from"../../../../chunks/tslib.es6.js";import{f as o}from"../../../../chunks/vec3f64.js";import{ViewingMode as t}from"../../../ViewingMode.js";import{ShaderOutput as i}from"../core/shaderLibrary/ShaderOutputOptions.js";import{PathVertexPositionPassParameters as r}from"../core/shaderLibrary/attributes/PathVertexPosition.glsl.js";import{NormalsDoubleSidedMode as s}from"../core/shaderLibrary/shading/Normals.glsl.js";import{PBRMode as n}from"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{doublePrecisionRequiresObfuscation as a}from"../core/shaderLibrary/util/DoublePrecision.glsl.js";import{ReloadableShaderModule as l}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as p}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as c}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{TransparencyPassType as u}from"../lib/basicInterfaces.js";import{blendingDefault as d,oitBlending as h,oitDepthTest as m,OITPolygonOffset as v}from"../lib/OrderIndependentTransparency.js";import{Program as f}from"../lib/Program.js";import{stencilWriteMaskOn as y,stencilBaseAllZerosParams as b}from"../lib/StencilUtils.js";import{VertexAttribute as P}from"../lib/VertexAttribute.js";import{DefaultTechniqueConfiguration as g}from"./DefaultTechniqueConfiguration.js";import{P as O}from"../../../../chunks/Path.glsl.js";import{makePipelineState as T,frontFaceCullingParams as j,defaultDepthWriteParams as S,defaultColorWriteParams as N}from"../../../webgl/renderState.js";const R=new Map([[P.POSITION,0],[P.PROFILERIGHT,1],[P.PROFILEUP,2],[P.PROFILEVERTEXANDNORMAL,3],[P.FEATUREVALUE,4]]);class C extends r{constructor(){super(...arguments),this.ambient=o(.2,.2,.2),this.diffuse=o(.8,.8,.8),this.specular=o(0,0,0),this.opacity=1}}class E extends p{initializeConfiguration(e,o){o.spherical=e.viewingMode===t.Global,o.doublePrecisionRequiresObfuscation=a(e.rctx)}initializeProgram(e){const o=E.shader.get().build(this.configuration);return new f(e.rctx,o,R)}_setPipelineState(e){const o=this.configuration,t=e===u.NONE,r=e===u.FrontFace,n=e=>!e.hasSlicePlane&&!(e.transparent||e.doubleSidedMode===s.None);return T({blending:o.output!==i.Color&&o.output!==i.Alpha||!o.transparent?null:t?d:h(e),culling:n(o)&&j,depthTest:{func:m(e)},depthWrite:t||r?S:null,colorWrite:N,stencilWrite:o.hasOccludees?y:null,stencilTest:o.hasOccludees?b:null,polygonOffset:t||r?null:v})}initializePipeline(){return this._setPipelineState(this.configuration.transparencyPassType)}}E.shader=new l(O,(()=>import("../shaders/Path.glsl.js")));class L extends g{constructor(){super(...arguments),this.output=i.Color,this.doubleSidedMode=s.None,this.transparencyPassType=u.NONE,this.spherical=!1,this.receiveShadows=!1,this.receiveAmbientOcclusion=!1,this.vvSize=!1,this.vvColor=!1,this.vvOpacity=!1,this.hasSlicePlane=!1,this.transparent=!1,this.hasOccludees=!1,this.hasMultipassTerrain=!1,this.cullAboveGround=!1,this.doublePrecisionRequiresObfuscation=!1}}e([c({count:i.COUNT})],L.prototype,"output",void 0),e([c({count:s.COUNT})],L.prototype,"doubleSidedMode",void 0),e([c({count:u.COUNT})],L.prototype,"transparencyPassType",void 0),e([c()],L.prototype,"spherical",void 0),e([c()],L.prototype,"receiveShadows",void 0),e([c()],L.prototype,"receiveAmbientOcclusion",void 0),e([c()],L.prototype,"vvSize",void 0),e([c()],L.prototype,"vvColor",void 0),e([c()],L.prototype,"vvOpacity",void 0),e([c()],L.prototype,"hasSlicePlane",void 0),e([c()],L.prototype,"transparent",void 0),e([c()],L.prototype,"hasOccludees",void 0),e([c()],L.prototype,"hasMultipassTerrain",void 0),e([c()],L.prototype,"cullAboveGround",void 0),e([c()],L.prototype,"doublePrecisionRequiresObfuscation",void 0),e([c({constValue:n.Disabled})],L.prototype,"pbrMode",void 0),e([c({constValue:!0})],L.prototype,"hasVvInstancing",void 0),e([c({constValue:!1})],L.prototype,"useCustomDTRExponentForWater",void 0),e([c({constValue:!1})],L.prototype,"useFillLights",void 0);export{C as PathPassParameters,E as PathTechnique,L as PathTechniqueConfiguration,R as pathVertexAttributeLocations};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../../core/Logger.js";import{clamp as t}from"../../../../core/mathUtils.js";import{isSome as r}from"../../../../core/maybe.js";import{createRenderScreenPointArray3 as i}from"../../../../core/screenUtils.js";import{c as s}from"../../../../chunks/vec2.js";import{s as a,b as n,e as o,g as h,a as l,c,l as u,i as p,m}from"../../../../chunks/vec3.js";import{c as f}from"../../../../chunks/vec3f64.js";import{O as T}from"../../../../chunks/vec4f64.js";import{PlaneIndex as d}from"../../../../geometry/support/frustum.js";import{create as E,distance2 as A,fromPoints as v,closestLineSegmentPoint as _}from"../../../../geometry/support/lineSegment.js";import{create as R,fromPoints as S,signedDistance as O,normal as I}from"../../../../geometry/support/plane.js";import{newLayout as g}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as b}from"../core/shaderLibrary/ShaderOutputOptions.js";import{computeAttachmentOriginLines as C}from"../lib/geometryDataUtils.js";import L from"../lib/GLMaterial.js";import{outputFromPass as N}from"../lib/GLMaterials.js";import{Material as P,RenderOccludedFlag as y}from"../lib/Material.js";import{RenderSlot as D}from"../lib/RenderSlot.js";import{isTranslationMatrix as j}from"../lib/Util.js";import{VertexAttribute as U}from"../lib/VertexAttribute.js";import{VisualVariableMaterialParameters as F}from"./VisualVariableMaterialParameters.js";import{isInstanceHidden as x}from"./renderers/utils.js";import{N as q}from"../../../../chunks/RibbonLine.glsl.js";import{ribbonVertexAttributeLocations as M,RibbonLineTechnique as w}from"../shaders/RibbonLineTechnique.js";import{RibbonLineTechniqueConfiguration as G,CapType as J}from"../shaders/RibbonLineTechniqueConfiguration.js";const z=e.getLogger("esri.views.3d.webgl-engine.materials.RibbonLineMaterial");var B;!function(e){e[e.LEFT_JOIN_START=-2]="LEFT_JOIN_START",e[e.LEFT_JOIN_END=-1]="LEFT_JOIN_END",e[e.LEFT_CAP_START=-4]="LEFT_CAP_START",e[e.LEFT_CAP_END=-5]="LEFT_CAP_END",e[e.RIGHT_JOIN_START=2]="RIGHT_JOIN_START",e[e.RIGHT_JOIN_END=1]="RIGHT_JOIN_END",e[e.RIGHT_CAP_START=4]="RIGHT_CAP_START",e[e.RIGHT_CAP_END=5]="RIGHT_CAP_END"}(B||(B={}));class H extends P{constructor(e){super(e,new V),this._vertexAttributeLocations=M,this.techniqueConfig=new G,this.layout=this.createLayout()}isClosed(e,t){return Y(this.parameters,e,t)}getConfiguration(e,t){this.techniqueConfig.output=e,this.techniqueConfig.draped=t.slot===D.DRAPED_MATERIAL;const i=r(this.parameters.stipplePattern)&&e!==b.Highlight;return this.techniqueConfig.stippleEnabled=i,this.techniqueConfig.stippleOffColorEnabled=i&&r(this.parameters.stippleOffColor),this.techniqueConfig.stippleScaleWithLineWidth=i&&this.parameters.stippleScaleWithLineWidth,this.techniqueConfig.stipplePreferContinuous=i&&this.parameters.stipplePreferContinuous,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasOccludees=this.parameters.hasOccludees,this.techniqueConfig.roundJoins="round"===this.parameters.join,this.techniqueConfig.capType=this.parameters.cap,this.techniqueConfig.hasPolygonOffset=this.parameters.hasPolygonOffset,this.techniqueConfig.writeDepth=this.parameters.writeDepth,this.techniqueConfig.vvColor=this.parameters.vvColorEnabled,this.techniqueConfig.vvOpacity=this.parameters.vvOpacityEnabled,this.techniqueConfig.vvSize=this.parameters.vvSizeEnabled,this.techniqueConfig.innerColorEnabled=this.parameters.innerWidth>0&&r(this.parameters.innerColor),this.techniqueConfig.falloffEnabled=this.parameters.falloff>0,this.techniqueConfig.occluder=this.parameters.renderOccluded===y.OccludeAndTransparentStencil,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig.wireframe=this.parameters.wireframe,this.techniqueConfig}intersect(e,t,i,s,a,n,o,h,l){r(l)?this._intersectDrapedLineGeometry(e,s,l,n,o):this._intersectLineGeometry(e,t,i,s,o)}_intersectDrapedLineGeometry(e,r,i,s,a){if(!r.options.selectionMode)return;const n=e.vertexAttributes.get(U.POSITION).data,o=e.vertexAttributes.get(U.SIZE);let h=this.parameters.width;if(this.parameters.vvSizeEnabled){const r=e.vertexAttributes.get(U.SIZEFEATUREATTRIBUTE).data[0];h*=t(this.parameters.vvSizeOffset[0]+r*this.parameters.vvSizeFactor[0],this.parameters.vvSizeMinSize[0],this.parameters.vvSizeMaxSize[0])}else o&&(h*=o.data[0]);const l=s[0],c=s[1],u=(h/2+4)*e.screenToWorldRatio;let p=Number.MAX_VALUE,m=0;for(let f=0;f<n.length-5;f+=3){const e=n[f],r=n[f+1],i=l-e,s=c-r,a=n[f+3]-e,o=n[f+4]-r,h=t((a*i+o*s)/(a*a+o*o),0,1),u=a*h-i,T=o*h-s,d=u*u+T*T;d<p&&(p=d,m=f/3)}p<u*u&&a(i.dist,i.normal,m,!1)}_intersectLineGeometry(e,r,i,m,f){if(!m.options.selectionMode||x(r))return;if(!j(i))return void z.error("intersection assumes a translation-only matrix");const T=e.vertexAttributes,E=T.get(U.POSITION).data;let R=this.parameters.width;if(this.parameters.vvSizeEnabled){const e=T.get(U.SIZEFEATUREATTRIBUTE).data[0];R*=t(this.parameters.vvSizeOffset[0]+e*this.parameters.vvSizeFactor[0],this.parameters.vvSizeMinSize[0],this.parameters.vvSizeMaxSize[0])}else T.has(U.SIZE)&&(R*=T.get(U.SIZE).data[0]);const g=m.camera,b=te;s(b,m.point);const C=R*g.pixelRatio/2+4*g.pixelRatio;a(ue[0],b[0]-C,b[1]+C,0),a(ue[1],b[0]+C,b[1]+C,0),a(ue[2],b[0]+C,b[1]-C,0),a(ue[3],b[0]-C,b[1]-C,0);for(let t=0;t<4;t++)if(!g.unprojectFromRenderScreen(ue[t],pe[t]))return;S(g.eye,pe[0],pe[1],me),S(g.eye,pe[1],pe[2],fe),S(g.eye,pe[2],pe[3],Te),S(g.eye,pe[3],pe[0],de);let L=Number.MAX_VALUE,N=0;const P=X(this.parameters,T,e.indices)?E.length-2:E.length-5;for(let t=0;t<P;t+=3){Q[0]=E[t]+i[12],Q[1]=E[t+1]+i[13],Q[2]=E[t+2]+i[14];const e=(t+3)%E.length;if(K[0]=E[e]+i[12],K[1]=E[e+1]+i[13],K[2]=E[e+2]+i[14],O(me,Q)<0&&O(me,K)<0||O(fe,Q)<0&&O(fe,K)<0||O(Te,Q)<0&&O(Te,K)<0||O(de,Q)<0&&O(de,K)<0)continue;if(g.projectToRenderScreen(Q,re),g.projectToRenderScreen(K,ie),re[2]<0&&ie[2]>0){n($,Q,K);const e=g.frustum,t=-O(e[d.NEAR],Q)/o($,I(e[d.NEAR]));h($,$,t),l(Q,Q,$),g.projectToRenderScreen(Q,re)}else if(re[2]>0&&ie[2]<0){n($,K,Q);const e=g.frustum,t=-O(e[d.NEAR],K)/o($,I(e[d.NEAR]));h($,$,t),l(K,K,$),g.projectToRenderScreen(K,ie)}else if(re[2]<0&&ie[2]<0)continue;re[2]=0,ie[2]=0;const r=A(v(re,ie,ne),b);r<L&&(L=r,c(se,Q),c(ae,K),N=t/3)}const y=m.rayBegin,D=m.rayEnd;if(L<C*C){let e=Number.MAX_VALUE;if(_(v(se,ae,ne),v(y,D,oe),ee)){n(ee,ee,y);const t=u(ee);h(ee,ee,1/t),e=t/p(y,D)}f(e,ee,N,!1)}}computeAttachmentOrigin(e,t){const r=e.vertexAttributes;if(!r)return null;const i=e.indices,s=r.get(U.POSITION);return C(s,i?i.get(U.POSITION):null,i&&X(this.parameters,r,i),t)}createLayout(){const e=g().vec3f(U.POSITION).f32(U.SUBDIVISIONFACTOR).vec2f(U.UV0).vec3f(U.AUXPOS1).vec3f(U.AUXPOS2);return this.parameters.vvSizeEnabled?e.f32(U.SIZEFEATUREATTRIBUTE):e.f32(U.SIZE),this.parameters.vvColorEnabled?e.f32(U.COLORFEATUREATTRIBUTE):e.vec4f(U.COLOR),this.parameters.vvOpacityEnabled&&e.f32(U.OPACITYFEATUREATTRIBUTE),e}createBufferWriter(){return new Z(this.layout,this.parameters)}requiresSlot(e,t){if(e===D.DRAPED_MATERIAL)return!0;if(this.parameters.renderOccluded===y.OccludeAndTransparentStencil)return e===D.OPAQUE_MATERIAL||e===D.OCCLUDER_MATERIAL||e===D.TRANSPARENT_OCCLUDER_MATERIAL;const r=N(t);if(r===b.Color||r===b.Alpha){return e===(this.parameters.writeDepth?D.TRANSPARENT_MATERIAL:D.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL)}return e===D.OPAQUE_MATERIAL}createGLMaterial(e){return e.output===b.Color||e.output===b.Alpha||e.output===b.Highlight||e.output===b.Depth?new W(e):null}validateParameters(e){"miter"!==e.join&&(e.miterLimit=0)}}class W extends L{_updateParameters(e){return this.ensureTechnique(w,e)}_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:e.hasOccludees})}beginSlot(e){return this._output!==b.Color&&this._output!==b.Alpha||this._updateOccludeeState(e),this._updateParameters(e)}}class V extends F{constructor(){super(...arguments),this.width=0,this.color=T,this.join="miter",this.cap=J.BUTT,this.miterLimit=5,this.writeDepth=!0,this.hasPolygonOffset=!1,this.stippleScaleWithLineWidth=!1,this.stipplePreferContinuous=!0,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.isClosed=!1,this.falloff=0,this.innerWidth=0,this.hasOccludees=!1,this.wireframe=!1}}class Z{constructor(e,t){this.parameters=t,this.numJoinSubdivisions=0,this.vertexBufferLayout=e;const r=t.stipplePattern?1:0;switch(this.parameters.join){case"miter":case"bevel":this.numJoinSubdivisions=r;break;case"round":this.numJoinSubdivisions=q+r}}_isClosed(e){return X(this.parameters,e.vertexAttributes,e.indices)}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){const t=2,r=e.indices.get(U.POSITION).length/2+1,i=this._isClosed(e);let s=i?2:2*t;return s+=((i?r:r-1)-(i?0:1))*(2*this.numJoinSubdivisions+4),s+=2,this.parameters.wireframe&&(s=2+4*(s-2)),s}write(e,t,r,i){var s;const n=he,o=le,h=ce,l=t.vertexAttributes.get(U.POSITION).data,u=t.indices&&t.indices.get(U.POSITION),f=null==(s=t.vertexAttributes.get(U.DISTANCETOSTART))?void 0:s.data;u&&u.length!==2*(l.length/3-1)&&console.warn("RibbonLineMaterial does not support indices");let T=1,d=0;this.parameters.vvSizeEnabled?d=t.vertexAttributes.get(U.SIZEFEATUREATTRIBUTE).data[0]:t.vertexAttributes.has(U.SIZE)&&(T=t.vertexAttributes.get(U.SIZE).data[0]);let E=[1,1,1,1],A=0;this.parameters.vvColorEnabled?A=t.vertexAttributes.get(U.COLORFEATUREATTRIBUTE).data[0]:t.vertexAttributes.has(U.COLOR)&&(E=t.vertexAttributes.get(U.COLOR).data);let v=0;this.parameters.vvOpacityEnabled&&(v=t.vertexAttributes.get(U.OPACITYFEATUREATTRIBUTE).data[0]);const _=l.length/3,R=e.transformation,S=new Float32Array(r.buffer),O=this.vertexBufferLayout.stride/4;let I=i*O;const g=I;let b=0;const C=f?(e,t,r)=>b=f[r]:(e,t,r)=>b+=p(e,t),L=(e,t,r,i,s,a,n)=>{if(S[I++]=t[0],S[I++]=t[1],S[I++]=t[2],S[I++]=i,S[I++]=n,S[I++]=s,S[I++]=e[0],S[I++]=e[1],S[I++]=e[2],S[I++]=r[0],S[I++]=r[1],S[I++]=r[2],this.parameters.vvSizeEnabled?S[I++]=d:S[I++]=T,this.parameters.vvColorEnabled)S[I++]=A;else{const e=Math.min(4*a,E.length-4);S[I++]=E[e+0],S[I++]=E[e+1],S[I++]=E[e+2],S[I++]=E[e+3]}this.parameters.vvOpacityEnabled&&(S[I++]=v)};I+=O,a(o,l[0],l[1],l[2]),R&&m(o,o,R);const N=this._isClosed(t);if(N){const e=l.length-3;a(n,l[e],l[e+1],l[e+2]),R&&m(n,n,R)}else a(h,l[3],l[4],l[5]),R&&m(h,h,R),L(o,o,h,1,B.LEFT_CAP_START,0,0),L(o,o,h,1,B.RIGHT_CAP_START,0,0),c(n,o),c(o,h);const P=N?0:1,y=N?_:_-1;for(let p=P;p<y;p++){const e=(p+1)%_*3;a(h,l[e+0],l[e+1],l[e+2]),R&&m(h,h,R),C(n,o,p),L(n,o,h,0,B.LEFT_JOIN_END,p,b),L(n,o,h,0,B.RIGHT_JOIN_END,p,b);const t=this.numJoinSubdivisions;for(let r=0;r<t;++r){const e=(r+1)/(t+1);L(n,o,h,e,B.LEFT_JOIN_END,p,b),L(n,o,h,e,B.RIGHT_JOIN_END,p,b)}L(n,o,h,1,B.LEFT_JOIN_START,p,b),L(n,o,h,1,B.RIGHT_JOIN_START,p,b),c(n,o),c(o,h)}N?(a(h,l[3],l[4],l[5]),R&&m(h,h,R),b=C(n,o,y),L(n,o,h,0,B.LEFT_JOIN_END,P,b),L(n,o,h,0,B.RIGHT_JOIN_END,P,b)):(b=C(n,o,y),L(n,o,o,0,B.LEFT_CAP_END,y,b),L(n,o,o,0,B.RIGHT_CAP_END,y,b)),k(S,g+O,S,g,O);I=k(S,I-O,S,I,O),this.parameters.wireframe&&this._addWireframeVertices(r,g,I,O)}_addWireframeVertices(e,t,r,i){const s=new Float32Array(e.buffer,r*Float32Array.BYTES_PER_ELEMENT),a=new Float32Array(e.buffer,t*Float32Array.BYTES_PER_ELEMENT,r-t);let n=0;const o=e=>n=k(a,e,s,n,i);for(let h=0;h<a.length-1;h+=2*i)o(h),o(h+2*i),o(h+1*i),o(h+2*i),o(h+1*i),o(h+3*i)}}function k(e,t,r,i,s){for(let a=0;a<s;a++)r[i++]=e[t++];return i}function X(e,t,r){return Y(e,t.get(U.POSITION).data,r?r.get(U.POSITION):null)}function Y(e,t,r){return!!e.isClosed&&(r?r.length>2:t.length>6)}const Q=f(),K=f(),$=f(),ee=f(),te=f(),re=i(),ie=i(),se=f(),ae=f(),ne=E(),oe=E(),he=f(),le=f(),ce=f(),ue=[i(),i(),i(),i()],pe=[f(),f(),f(),f()],me=R(),fe=R(),Te=R(),de=R();export{V as Parameters,H as RibbonLineMaterial};
|
|
5
|
+
import e from"../../../../core/Logger.js";import{clamp as t}from"../../../../core/mathUtils.js";import{isSome as r}from"../../../../core/maybe.js";import{createRenderScreenPointArray3 as i}from"../../../../core/screenUtils.js";import{c as s}from"../../../../chunks/vec2.js";import{s as a,b as n,e as o,g as h,a as l,c,l as u,i as p,m}from"../../../../chunks/vec3.js";import{c as f}from"../../../../chunks/vec3f64.js";import{O as T}from"../../../../chunks/vec4f64.js";import{PlaneIndex as E}from"../../../../geometry/support/frustum.js";import{create as d,distance2 as A,fromPoints as v,closestLineSegmentPoint as _}from"../../../../geometry/support/lineSegment.js";import{create as R,fromPoints as S,signedDistance as O,normal as I}from"../../../../geometry/support/plane.js";import{newLayout as g}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as b}from"../core/shaderLibrary/ShaderOutputOptions.js";import{computeAttachmentOriginLines as C}from"../lib/geometryDataUtils.js";import L from"../lib/GLMaterial.js";import{outputFromPass as N}from"../lib/GLMaterials.js";import{Material as P,RenderOccludedFlag as y}from"../lib/Material.js";import{RenderSlot as D}from"../lib/RenderSlot.js";import{isTranslationMatrix as j}from"../lib/Util.js";import{VertexAttribute as U}from"../lib/VertexAttribute.js";import{VisualVariablePassParameters as F}from"./VisualVariablePassParameters.js";import{isInstanceHidden as x}from"./renderers/utils.js";import{N as q}from"../../../../chunks/RibbonLine.glsl.js";import{ribbonVertexAttributeLocations as M,RibbonLineTechnique as w}from"../shaders/RibbonLineTechnique.js";import{RibbonLineTechniqueConfiguration as G,CapType as J}from"../shaders/RibbonLineTechniqueConfiguration.js";const z=e.getLogger("esri.views.3d.webgl-engine.materials.RibbonLineMaterial");var B;!function(e){e[e.LEFT_JOIN_START=-2]="LEFT_JOIN_START",e[e.LEFT_JOIN_END=-1]="LEFT_JOIN_END",e[e.LEFT_CAP_START=-4]="LEFT_CAP_START",e[e.LEFT_CAP_END=-5]="LEFT_CAP_END",e[e.RIGHT_JOIN_START=2]="RIGHT_JOIN_START",e[e.RIGHT_JOIN_END=1]="RIGHT_JOIN_END",e[e.RIGHT_CAP_START=4]="RIGHT_CAP_START",e[e.RIGHT_CAP_END=5]="RIGHT_CAP_END"}(B||(B={}));class H extends P{constructor(e){super(e,new V),this._vertexAttributeLocations=M,this.techniqueConfig=new G,this.layout=this.createLayout()}isClosed(e,t){return Y(this.parameters,e,t)}getConfiguration(e,t){this.techniqueConfig.output=e,this.techniqueConfig.draped=t.slot===D.DRAPED_MATERIAL;const i=r(this.parameters.stipplePattern)&&e!==b.Highlight;return this.techniqueConfig.stippleEnabled=i,this.techniqueConfig.stippleOffColorEnabled=i&&r(this.parameters.stippleOffColor),this.techniqueConfig.stippleScaleWithLineWidth=i&&this.parameters.stippleScaleWithLineWidth,this.techniqueConfig.stipplePreferContinuous=i&&this.parameters.stipplePreferContinuous,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.hasOccludees=this.parameters.hasOccludees,this.techniqueConfig.roundJoins="round"===this.parameters.join,this.techniqueConfig.capType=this.parameters.cap,this.techniqueConfig.hasPolygonOffset=this.parameters.hasPolygonOffset,this.techniqueConfig.writeDepth=this.parameters.writeDepth,this.techniqueConfig.vvColor=this.parameters.vvColorEnabled,this.techniqueConfig.vvOpacity=this.parameters.vvOpacityEnabled,this.techniqueConfig.vvSize=this.parameters.vvSizeEnabled,this.techniqueConfig.innerColorEnabled=this.parameters.innerWidth>0&&r(this.parameters.innerColor),this.techniqueConfig.falloffEnabled=this.parameters.falloff>0,this.techniqueConfig.occluder=this.parameters.renderOccluded===y.OccludeAndTransparentStencil,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig.wireframe=this.parameters.wireframe,this.techniqueConfig}intersect(e,t,i,s,a,n,o,h,l){r(l)?this._intersectDrapedLineGeometry(e,s,l,n,o):this._intersectLineGeometry(e,t,i,s,o)}_intersectDrapedLineGeometry(e,r,i,s,a){if(!r.options.selectionMode)return;const n=e.vertexAttributes.get(U.POSITION).data,o=e.vertexAttributes.get(U.SIZE);let h=this.parameters.width;if(this.parameters.vvSizeEnabled){const r=e.vertexAttributes.get(U.SIZEFEATUREATTRIBUTE).data[0];h*=t(this.parameters.vvSizeOffset[0]+r*this.parameters.vvSizeFactor[0],this.parameters.vvSizeMinSize[0],this.parameters.vvSizeMaxSize[0])}else o&&(h*=o.data[0]);const l=s[0],c=s[1],u=(h/2+4)*e.screenToWorldRatio;let p=Number.MAX_VALUE,m=0;for(let f=0;f<n.length-5;f+=3){const e=n[f],r=n[f+1],i=l-e,s=c-r,a=n[f+3]-e,o=n[f+4]-r,h=t((a*i+o*s)/(a*a+o*o),0,1),u=a*h-i,T=o*h-s,E=u*u+T*T;E<p&&(p=E,m=f/3)}p<u*u&&a(i.dist,i.normal,m,!1)}_intersectLineGeometry(e,r,i,m,f){if(!m.options.selectionMode||x(r))return;if(!j(i))return void z.error("intersection assumes a translation-only matrix");const T=e.vertexAttributes,d=T.get(U.POSITION).data;let R=this.parameters.width;if(this.parameters.vvSizeEnabled){const e=T.get(U.SIZEFEATUREATTRIBUTE).data[0];R*=t(this.parameters.vvSizeOffset[0]+e*this.parameters.vvSizeFactor[0],this.parameters.vvSizeMinSize[0],this.parameters.vvSizeMaxSize[0])}else T.has(U.SIZE)&&(R*=T.get(U.SIZE).data[0]);const g=m.camera,b=te;s(b,m.point);const C=R*g.pixelRatio/2+4*g.pixelRatio;a(ue[0],b[0]-C,b[1]+C,0),a(ue[1],b[0]+C,b[1]+C,0),a(ue[2],b[0]+C,b[1]-C,0),a(ue[3],b[0]-C,b[1]-C,0);for(let t=0;t<4;t++)if(!g.unprojectFromRenderScreen(ue[t],pe[t]))return;S(g.eye,pe[0],pe[1],me),S(g.eye,pe[1],pe[2],fe),S(g.eye,pe[2],pe[3],Te),S(g.eye,pe[3],pe[0],Ee);let L=Number.MAX_VALUE,N=0;const P=X(this.parameters,T,e.indices)?d.length-2:d.length-5;for(let t=0;t<P;t+=3){Q[0]=d[t]+i[12],Q[1]=d[t+1]+i[13],Q[2]=d[t+2]+i[14];const e=(t+3)%d.length;if(K[0]=d[e]+i[12],K[1]=d[e+1]+i[13],K[2]=d[e+2]+i[14],O(me,Q)<0&&O(me,K)<0||O(fe,Q)<0&&O(fe,K)<0||O(Te,Q)<0&&O(Te,K)<0||O(Ee,Q)<0&&O(Ee,K)<0)continue;if(g.projectToRenderScreen(Q,re),g.projectToRenderScreen(K,ie),re[2]<0&&ie[2]>0){n($,Q,K);const e=g.frustum,t=-O(e[E.NEAR],Q)/o($,I(e[E.NEAR]));h($,$,t),l(Q,Q,$),g.projectToRenderScreen(Q,re)}else if(re[2]>0&&ie[2]<0){n($,K,Q);const e=g.frustum,t=-O(e[E.NEAR],K)/o($,I(e[E.NEAR]));h($,$,t),l(K,K,$),g.projectToRenderScreen(K,ie)}else if(re[2]<0&&ie[2]<0)continue;re[2]=0,ie[2]=0;const r=A(v(re,ie,ne),b);r<L&&(L=r,c(se,Q),c(ae,K),N=t/3)}const y=m.rayBegin,D=m.rayEnd;if(L<C*C){let e=Number.MAX_VALUE;if(_(v(se,ae,ne),v(y,D,oe),ee)){n(ee,ee,y);const t=u(ee);h(ee,ee,1/t),e=t/p(y,D)}f(e,ee,N,!1)}}computeAttachmentOrigin(e,t){const r=e.vertexAttributes;if(!r)return null;const i=e.indices,s=r.get(U.POSITION);return C(s,i?i.get(U.POSITION):null,i&&X(this.parameters,r,i),t)}createLayout(){const e=g().vec3f(U.POSITION).f32(U.SUBDIVISIONFACTOR).vec2f(U.UV0).vec3f(U.AUXPOS1).vec3f(U.AUXPOS2);return this.parameters.vvSizeEnabled?e.f32(U.SIZEFEATUREATTRIBUTE):e.f32(U.SIZE),this.parameters.vvColorEnabled?e.f32(U.COLORFEATUREATTRIBUTE):e.vec4f(U.COLOR),this.parameters.vvOpacityEnabled&&e.f32(U.OPACITYFEATUREATTRIBUTE),e}createBufferWriter(){return new Z(this.layout,this.parameters)}requiresSlot(e,t){if(e===D.DRAPED_MATERIAL)return!0;if(this.parameters.renderOccluded===y.OccludeAndTransparentStencil)return e===D.OPAQUE_MATERIAL||e===D.OCCLUDER_MATERIAL||e===D.TRANSPARENT_OCCLUDER_MATERIAL;const r=N(t);if(r===b.Color||r===b.Alpha){return e===(this.parameters.writeDepth?D.TRANSPARENT_MATERIAL:D.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL)}return e===D.OPAQUE_MATERIAL}createGLMaterial(e){return e.output===b.Color||e.output===b.Alpha||e.output===b.Highlight||e.output===b.Depth?new W(e):null}validateParameters(e){"miter"!==e.join&&(e.miterLimit=0)}}class W extends L{_updateOccludeeState(e){e.hasOccludees!==this._material.parameters.hasOccludees&&this._material.setParameters({hasOccludees:e.hasOccludees})}beginSlot(e){return this._output!==b.Color&&this._output!==b.Alpha||this._updateOccludeeState(e),this.ensureTechnique(w,e)}}class V extends F{constructor(){super(...arguments),this.width=0,this.color=T,this.join="miter",this.cap=J.BUTT,this.miterLimit=5,this.writeDepth=!0,this.hasPolygonOffset=!1,this.stippleScaleWithLineWidth=!1,this.stipplePreferContinuous=!0,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.isClosed=!1,this.falloff=0,this.innerWidth=0,this.hasOccludees=!1,this.wireframe=!1}}class Z{constructor(e,t){this.parameters=t,this.numJoinSubdivisions=0,this.vertexBufferLayout=e;const r=t.stipplePattern?1:0;switch(this.parameters.join){case"miter":case"bevel":this.numJoinSubdivisions=r;break;case"round":this.numJoinSubdivisions=q+r}}_isClosed(e){return X(this.parameters,e.vertexAttributes,e.indices)}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){const t=2,r=e.indices.get(U.POSITION).length/2+1,i=this._isClosed(e);let s=i?2:2*t;return s+=((i?r:r-1)-(i?0:1))*(2*this.numJoinSubdivisions+4),s+=2,this.parameters.wireframe&&(s=2+4*(s-2)),s}write(e,t,r,i){const s=he,n=le,o=ce,h=t.vertexAttributes.get(U.POSITION).data,l=t.indices&&t.indices.get(U.POSITION),u=t.vertexAttributes.get(U.DISTANCETOSTART)?.data;l&&l.length!==2*(h.length/3-1)&&console.warn("RibbonLineMaterial does not support indices");let f=1,T=0;this.parameters.vvSizeEnabled?T=t.vertexAttributes.get(U.SIZEFEATUREATTRIBUTE).data[0]:t.vertexAttributes.has(U.SIZE)&&(f=t.vertexAttributes.get(U.SIZE).data[0]);let E=[1,1,1,1],d=0;this.parameters.vvColorEnabled?d=t.vertexAttributes.get(U.COLORFEATUREATTRIBUTE).data[0]:t.vertexAttributes.has(U.COLOR)&&(E=t.vertexAttributes.get(U.COLOR).data);let A=0;this.parameters.vvOpacityEnabled&&(A=t.vertexAttributes.get(U.OPACITYFEATUREATTRIBUTE).data[0]);const v=h.length/3,_=e.transformation,R=new Float32Array(r.buffer),S=this.vertexBufferLayout.stride/4;let O=i*S;const I=O;let g=0;const b=u?(e,t,r)=>g=u[r]:(e,t,r)=>g+=p(e,t),C=(e,t,r,i,s,a,n)=>{if(R[O++]=t[0],R[O++]=t[1],R[O++]=t[2],R[O++]=i,R[O++]=n,R[O++]=s,R[O++]=e[0],R[O++]=e[1],R[O++]=e[2],R[O++]=r[0],R[O++]=r[1],R[O++]=r[2],this.parameters.vvSizeEnabled?R[O++]=T:R[O++]=f,this.parameters.vvColorEnabled)R[O++]=d;else{const e=Math.min(4*a,E.length-4);R[O++]=E[e+0],R[O++]=E[e+1],R[O++]=E[e+2],R[O++]=E[e+3]}this.parameters.vvOpacityEnabled&&(R[O++]=A)};O+=S,a(n,h[0],h[1],h[2]),_&&m(n,n,_);const L=this._isClosed(t);if(L){const e=h.length-3;a(s,h[e],h[e+1],h[e+2]),_&&m(s,s,_)}else a(o,h[3],h[4],h[5]),_&&m(o,o,_),C(n,n,o,1,B.LEFT_CAP_START,0,0),C(n,n,o,1,B.RIGHT_CAP_START,0,0),c(s,n),c(n,o);const N=L?0:1,P=L?v:v-1;for(let p=N;p<P;p++){const e=(p+1)%v*3;a(o,h[e+0],h[e+1],h[e+2]),_&&m(o,o,_),b(s,n,p),C(s,n,o,0,B.LEFT_JOIN_END,p,g),C(s,n,o,0,B.RIGHT_JOIN_END,p,g);const t=this.numJoinSubdivisions;for(let r=0;r<t;++r){const e=(r+1)/(t+1);C(s,n,o,e,B.LEFT_JOIN_END,p,g),C(s,n,o,e,B.RIGHT_JOIN_END,p,g)}C(s,n,o,1,B.LEFT_JOIN_START,p,g),C(s,n,o,1,B.RIGHT_JOIN_START,p,g),c(s,n),c(n,o)}L?(a(o,h[3],h[4],h[5]),_&&m(o,o,_),g=b(s,n,P),C(s,n,o,0,B.LEFT_JOIN_END,N,g),C(s,n,o,0,B.RIGHT_JOIN_END,N,g)):(g=b(s,n,P),C(s,n,n,0,B.LEFT_CAP_END,P,g),C(s,n,n,0,B.RIGHT_CAP_END,P,g)),k(R,I+S,R,I,S);O=k(R,O-S,R,O,S),this.parameters.wireframe&&this._addWireframeVertices(r,I,O,S)}_addWireframeVertices(e,t,r,i){const s=new Float32Array(e.buffer,r*Float32Array.BYTES_PER_ELEMENT),a=new Float32Array(e.buffer,t*Float32Array.BYTES_PER_ELEMENT,r-t);let n=0;const o=e=>n=k(a,e,s,n,i);for(let h=0;h<a.length-1;h+=2*i)o(h),o(h+2*i),o(h+1*i),o(h+2*i),o(h+1*i),o(h+3*i)}}function k(e,t,r,i,s){for(let a=0;a<s;a++)r[i++]=e[t++];return i}function X(e,t,r){return Y(e,t.get(U.POSITION).data,r?r.get(U.POSITION):null)}function Y(e,t,r){return!!e.isClosed&&(r?r.length>2:t.length>6)}const Q=f(),K=f(),$=f(),ee=f(),te=f(),re=i(),ie=i(),se=f(),ae=f(),ne=d(),oe=d(),he=f(),le=f(),ce=f(),ue=[i(),i(),i(),i()],pe=[f(),f(),f(),f()],me=R(),fe=R(),Te=R(),Ee=R();export{V as Parameters,H as RibbonLineMaterial};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{n as e,s as t,g as r,a as i}from"../../../../chunks/vec3.js";import{c as s}from"../../../../chunks/vec3f64.js";import{f as a}from"../../../../chunks/vec4f64.js";import{center as n,scale as o}from"../../../../geometry/support/aaBoundingBox.js";import{BufferViewVec3f as
|
|
5
|
+
import{n as e,s as t,g as r,a as i}from"../../../../chunks/vec3.js";import{c as s}from"../../../../chunks/vec3f64.js";import{f as a}from"../../../../chunks/vec4f64.js";import{center as n,scale as o}from"../../../../geometry/support/aaBoundingBox.js";import{BufferViewVec3f as c}from"../../../../geometry/support/buffer/BufferView.js";import{newLayout as h}from"../../support/buffer/InterleavedLayout.js";import{ShaderOutput as u}from"../core/shaderLibrary/ShaderOutputOptions.js";import{CullFaceOptions as l}from"../lib/basicInterfaces.js";import p from"../lib/GLMaterial.js";import{outputFromPass as f}from"../lib/GLMaterials.js";import{Material as m,MaterialParameters as d}from"../lib/Material.js";import{RenderSlot as S}from"../lib/RenderSlot.js";import{assert as b}from"../lib/Util.js";import{VertexAttribute as E}from"../lib/VertexAttribute.js";import{writeDefaultAttributes as g,writePosition as T}from"./internal/bufferWriterUtils.js";import{intersectTriangleGeometry as A}from"./internal/MaterialUtil.js";import{ShadedColorMaterialTechniqueConfiguration as v,ShadedColorMaterialVertexAttrLocations as F,ShadedColorMaterialTechnique as j}from"../shaders/ShadedColorMaterialTechnique.js";class q extends m{constructor(e){super(e,new C),this.supportsEdges=!0,this.techniqueConfig=new v,this._vertexAttributeLocations=F}getConfiguration(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.cullFace=this.parameters.cullFace,this.techniqueConfig.hasSlicePlane=this.parameters.hasSlicePlane,this.techniqueConfig.transparent=this.parameters.transparent,this.techniqueConfig.writeDepth=this.parameters.writeDepth,this.techniqueConfig.screenSizeEnabled=this.parameters.screenSizeEnabled,this.techniqueConfig.shadingEnabled=this.parameters.shadingEnabled,this.techniqueConfig.transparencyPassType=t.transparencyPassType,this.techniqueConfig.hasMultipassTerrain=t.multipassTerrain.enabled,this.techniqueConfig.cullAboveGround=t.multipassTerrain.cullAboveGround,this.techniqueConfig}intersect(e,s,a,c,h,u,l){if(this.parameters.screenSizeEnabled){const a=e.vertexAttributes.get(E.OFFSET),p={applyToVertex:(e,s,n,o)=>{const h=t(L,a.data[3*o+0],a.data[3*o+1],a.data[3*o+2]),u=t(w,e,s,n);return r(h,h,this.parameters.screenSizeScale*c.camera.computeRenderPixelSizeAt(h)),i(u,u,h),[u[0],u[1],u[2]]},applyToAabb:e=>{const t=n(e,L);return o(e,this.parameters.screenSizeScale*c.camera.computeRenderPixelSizeAt(t))}};A(e,s,c,h,u,p,l)}else A(e,s,c,h,u,void 0,l)}requiresSlot(e,t){if(f(t)===u.Highlight)return e===S.OPAQUE_MATERIAL;let r=S.OPAQUE_MATERIAL;return this.parameters.transparent&&(r=this.parameters.writeDepth?S.TRANSPARENT_MATERIAL:S.TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL),e===r||e===S.DRAPED_MATERIAL}createGLMaterial(e){return e.output===u.Color||e.output===u.Alpha||e.output===u.Highlight?new x(e):null}createBufferWriter(){return new O(this.parameters.screenSizeEnabled)}}class x extends p{beginSlot(e){return this.ensureTechnique(j,e)}}class C extends d{constructor(){super(...arguments),this.color=a(1,1,1,1),this.shadingTint=a(0,0,0,.25),this.shadingDirection=e(s(),[.5,-.5,-.5]),this.screenSizeScale=14,this.transparent=!1,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=l.None,this.screenSizeEnabled=!1,this.shadingEnabled=!0}}class O{constructor(e){this.screenSizeEnabled=e;const t=h().vec3f(E.POSITION).vec3f(E.NORMAL);this.screenSizeEnabled&&t.vec3f(E.OFFSET),this.vertexBufferLayout=t}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(E.POSITION).length}write(e,t,r,i){if(g(t,this.vertexBufferLayout,e.transformation,e.invTranspTransformation,r,i),this.screenSizeEnabled){if(!t.vertexAttributes.has(E.OFFSET))throw new Error(`${E.OFFSET} vertex attribute required for screenSizeEnabled ShadedColorMaterial`);{const s=t.vertexAttributes.get(E.OFFSET),a=t.indices.get(E.OFFSET);b(3===s.size);const n=r.getField(E.OFFSET,c);if(!n)throw new Error("unable to acquire view for "+E.OFFSET);T(a,s.data,e.invTranspTransformation,n,i)}}}}const L=s(),w=s();export{q as ShadedColorMaterial,C as ShadedColorMaterialParameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{c as i}from"../../../../chunks/mat3f64.js";import{f as t}from"../../../../chunks/vec3f64.js";import{MaterialParameters as s}from"../lib/Material.js";class v extends s{constructor(){super(...arguments),this.vvSizeEnabled=!1,this.vvSizeMinSize=t(1,1,1),this.vvSizeMaxSize=t(100,100,100),this.vvSizeOffset=t(0,0,0),this.vvSizeFactor=t(1,1,1),this.vvSizeValue=t(1,1,1),this.vvColorEnabled=!1,this.vvColorValues=[0,0,0,0,0,0,0,0],this.vvColorColors=[1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],this.vvOpacityEnabled=!1,this.vvOpacityValues=[0,0,0,0,0,0,0,0],this.vvOpacityOpacities=[1,1,1,1,1,1,1,1],this.vvSymbolAnchor=[0,0,0],this.vvSymbolRotationMatrix=i()}}export{v as
|
|
5
|
+
import{c as i}from"../../../../chunks/mat3f64.js";import{f as t}from"../../../../chunks/vec3f64.js";import{MaterialParameters as s}from"../lib/Material.js";class v extends s{constructor(){super(...arguments),this.vvSizeEnabled=!1,this.vvSizeMinSize=t(1,1,1),this.vvSizeMaxSize=t(100,100,100),this.vvSizeOffset=t(0,0,0),this.vvSizeFactor=t(1,1,1),this.vvSizeValue=t(1,1,1),this.vvColorEnabled=!1,this.vvColorValues=[0,0,0,0,0,0,0,0],this.vvColorColors=[1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],this.vvOpacityEnabled=!1,this.vvOpacityValues=[0,0,0,0,0,0,0,0],this.vvOpacityOpacities=[1,1,1,1,1,1,1,1],this.vvSymbolAnchor=[0,0,0],this.vvSymbolRotationMatrix=i()}}const o=8;export{v as VisualVariablePassParameters,o as vvColorNumber};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{ResourceState as t}from"../lib/basicInterfaces.js";import a from"../lib/GLMaterial.js";import{WaterTechnique as r}from"./WaterTechnique.js";class s extends a{
|
|
5
|
+
import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{ResourceState as t}from"../lib/basicInterfaces.js";import a from"../lib/GLMaterial.js";import{WaterTechnique as r}from"./WaterTechnique.js";class s extends a{_updateShadowState(e){e.shadowMap.enabled!==this._material.parameters.receiveShadows&&this._material.setParameters({receiveShadows:e.shadowMap.enabled})}_updateSSRState(e){e.ssr.enabled!==this._material.parameters.hasScreenSpaceReflections&&this._material.setParameters({hasScreenSpaceReflections:e.ssr.enabled})}ensureResources(e){const a=this._techniqueRepository.constructionContext.waterTextureRepository;return a.resourceState===t.NOT_LOADED&&a.loadTextures(e),a.resourceState}beginSlot(t){return this._output===e.Color&&(this._updateShadowState(t),this._updateSSRState(t)),this.ensureTechnique(r,t)}}export{s as WaterGLMaterial};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as
|
|
5
|
+
import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/has.js";import{ViewingMode as o}from"../../../ViewingMode.js";import{ShaderOutput as r}from"../core/shaderLibrary/ShaderOutputOptions.js";import{PBRMode as i}from"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{doublePrecisionRequiresObfuscation as s}from"../core/shaderLibrary/util/DoublePrecision.glsl.js";import{ReloadableShaderModule as a}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as n}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as p}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{TransparencyPassType as u}from"../lib/basicInterfaces.js";import{Default3D as l}from"../lib/DefaultVertexAttributeLocations.js";import{blendingDefault as c,oitBlending as h,oitDepthTest as d,oitDepthWrite as f,getOITPolygonOffset as m}from"../lib/OrderIndependentTransparency.js";import{Program as y}from"../lib/Program.js";import{DefaultTechniqueConfiguration as b}from"./DefaultTechniqueConfiguration.js";import{W as g}from"../../../../chunks/WaterSurface.glsl.js";import{makePipelineState as v,defaultDepthWriteParams as P,defaultColorWriteParams as S}from"../../../webgl/renderState.js";class j extends n{constructor(e,t,o){super(e,t,o),this._textureRepository=e.waterTextureRepository}initializeConfiguration(e,t){t.spherical=e.viewingMode===o.Global,t.doublePrecisionRequiresObfuscation=s(e.rctx)}initializeProgram(e){const t=j.shader.get().build(this.configuration);return new y(e.rctx,t,l)}bindPass(e,t){this.program.bindPass(e,t),this.configuration.output!==r.Color&&this.configuration.output!==r.Normal||this._textureRepository.bind(this.program)}_setPipelineState(e){const t=this.configuration,o=e===u.NONE,i=e===u.FrontFace;return v({blending:t.output!==r.Normal&&t.output!==r.Highlight&&t.transparent?o?c:h(e):null,depthTest:{func:d(e)},depthWrite:o?t.writeDepth&&P:f(e),colorWrite:S,polygonOffset:o||i?null:m(t.enableOffset)})}initializePipeline(){return this._setPipelineState(this.configuration.transparencyPassType)}}j.shader=new a(g,(()=>import("../shaders/WaterSurface.glsl.js")));class T extends b{constructor(){super(...arguments),this.output=r.Color,this.transparencyPassType=u.NONE,this.spherical=!1,this.receiveShadows=!1,this.hasSlicePlane=!1,this.transparent=!1,this.enableOffset=!0,this.writeDepth=!1,this.hasScreenSpaceReflections=!1,this.doublePrecisionRequiresObfuscation=!1,this.isDraped=!1,this.hasMultipassTerrain=!1,this.cullAboveGround=!1}}e([p({count:r.COUNT})],T.prototype,"output",void 0),e([p({count:u.COUNT})],T.prototype,"transparencyPassType",void 0),e([p()],T.prototype,"spherical",void 0),e([p()],T.prototype,"receiveShadows",void 0),e([p()],T.prototype,"hasSlicePlane",void 0),e([p()],T.prototype,"transparent",void 0),e([p()],T.prototype,"enableOffset",void 0),e([p()],T.prototype,"writeDepth",void 0),e([p()],T.prototype,"hasScreenSpaceReflections",void 0),e([p()],T.prototype,"doublePrecisionRequiresObfuscation",void 0),e([p()],T.prototype,"isDraped",void 0),e([p()],T.prototype,"hasMultipassTerrain",void 0),e([p()],T.prototype,"cullAboveGround",void 0),e([p({constValue:i.Water})],T.prototype,"pbrMode",void 0),e([p({constValue:!0})],T.prototype,"useCustomDTRExponentForWater",void 0),e([p({constValue:!0})],T.prototype,"highStepCount",void 0),e([p({constValue:t("enable-feature:clouds-reflections")})],T.prototype,"hasCloudsReflections",void 0),e([p({constValue:!1})],T.prototype,"useFillLights",void 0);export{j as WaterTechnique,T as WaterTechniqueConfiguration};
|