@arcgis/core 4.34.0-next.37 → 4.34.0-next.39
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/Camera.js +1 -1
- package/Graphic.js +1 -1
- package/Ground.js +1 -1
- package/PopupTemplate.js +1 -1
- package/Viewpoint.js +1 -1
- package/WebDocument2D.js +1 -1
- package/WebScene.js +1 -1
- package/analysis/Analysis.js +1 -1
- package/analysis/DimensionSimpleStyle.js +1 -1
- package/analysis/LengthDimension.js +1 -1
- package/analysis/LineOfSightAnalysisObserver.js +1 -1
- package/analysis/LineOfSightAnalysisTarget.js +1 -1
- package/analysis/SlicePlane.js +1 -1
- package/analysis/Viewshed.js +1 -1
- package/analysis/VolumeMeasurement/CutFillOptions.js +1 -1
- package/analysis/support/SliceAnalysisExcludedLayer.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{1c8dbdb833a66f7183fc.js → 00ae094cc21bc42faa54.js} +1 -1
- package/assets/esri/core/workers/chunks/{36d15d1dd19417b37d2f.js → 01ae7d36bda6b6186786.js} +1 -1
- package/assets/esri/core/workers/chunks/01bd8f90e55081e65b38.js +1 -0
- package/assets/esri/core/workers/chunks/03df4668002eb4cb4f98.js +1 -0
- package/assets/esri/core/workers/chunks/{c4a20b8038bfbb2af329.js → 09f0c9f0b6aa58ae3c52.js} +1 -1
- package/assets/esri/core/workers/chunks/0a27f9b11d03874809ee.js +346 -0
- package/assets/esri/core/workers/chunks/{1a5ddb6d36249fe09cc8.js → 0e8d3d38e9b1f6abf6f2.js} +1 -1
- package/assets/esri/core/workers/chunks/0f51e51db83f303ce5a6.js +1 -0
- package/assets/esri/core/workers/chunks/0faec78b2dd6990a5da0.js +1 -0
- package/assets/esri/core/workers/chunks/{2d7bbd001b64138db3c1.js → 14b536e0c1de6c7422bc.js} +1 -1
- package/assets/esri/core/workers/chunks/{170fa807b71babedd185.js → 14d3039f92b0d96944f0.js} +1 -1
- package/assets/esri/core/workers/chunks/19391d60c76a1dc7c262.js +1 -0
- package/assets/esri/core/workers/chunks/{7e9d5beca1991c961ed8.js → 1acc620bfd2983d6853f.js} +1 -1
- package/assets/esri/core/workers/chunks/{8e7dced4a8d089185c3a.js → 1cbd59918c60a1a21494.js} +1 -1
- package/assets/esri/core/workers/chunks/{ccf3f29d0b1bde90c3cf.js → 1cd15aa69f85ecfa32b0.js} +1 -1
- package/assets/esri/core/workers/chunks/{6b5be459ec4c418cc6fd.js → 1d9212a70df68a508dca.js} +1 -1
- package/assets/esri/core/workers/chunks/21a9f9c0cc1cde2fee90.js +1 -0
- package/assets/esri/core/workers/chunks/{5d4e74eb4c659e8f42d6.js → 21dd626a5b5ea6a7e18e.js} +1 -1
- package/assets/esri/core/workers/chunks/224872bfd923cf4c9d78.js +1 -0
- package/assets/esri/core/workers/chunks/27027493a8dba8305693.js +1 -0
- package/assets/esri/core/workers/chunks/{2b9c403f4b20b8f62804.js → 2a26c3fc324d672ebe88.js} +1 -1
- package/assets/esri/core/workers/chunks/{ee28cd411a93245fb90c.js → 2ae0bda04fd5386b462f.js} +1 -1
- package/assets/esri/core/workers/chunks/{7efc3ac70a005a771b9c.js → 2c399991e8627baa51b3.js} +1 -1
- package/assets/esri/core/workers/chunks/306a68137e62656b0f05.js +1 -0
- package/assets/esri/core/workers/chunks/{4c54239974a5847b8fdd.js → 30b9c131b69297ee186f.js} +1 -1
- package/assets/esri/core/workers/chunks/31ad9949b08a5b07218c.js +989 -0
- package/assets/esri/core/workers/chunks/{e4d08a85d158c705aa3d.js → 31e6eb2685872baf538a.js} +1 -1
- package/assets/esri/core/workers/chunks/3264d58aeef8cf074b86.js +1 -0
- package/assets/esri/core/workers/chunks/3358c1b04490706681cc.js +1 -0
- package/assets/esri/core/workers/chunks/3386420c9ae891db5be7.js +2 -0
- package/assets/esri/core/workers/chunks/34f677e8c1691c10e4e9.js +1 -0
- package/assets/esri/core/workers/chunks/35df19d1eab3a694c3fa.js +1 -0
- package/assets/esri/core/workers/chunks/364fb103cb139f26b455.js +1 -0
- package/assets/esri/core/workers/chunks/{33aafaabea07b4f80209.js → 3984ca7e05f30724adaf.js} +1 -1
- package/assets/esri/core/workers/chunks/{4d2dcd667b30a98dd341.js → 3af4a410ff0bca7ba2e3.js} +1 -1
- package/assets/esri/core/workers/chunks/{b8c1a08020d44ee03a17.js → 3f7d7dc05e63fc50325e.js} +1 -1
- package/assets/esri/core/workers/chunks/{02435c653064f879f547.js → 4162c633efefc63c5506.js} +1 -1
- package/assets/esri/core/workers/chunks/{0852abaa440c14cc2b36.js → 4459c8e495a37d4c4eb8.js} +1 -1
- package/assets/esri/core/workers/chunks/{6e36b247a24172edd5ea.js → 476a6e5ca558db2adaa1.js} +1 -1
- package/assets/esri/core/workers/chunks/{cd9e6b86ab0103044370.js → 4970d439d9648e97fd5a.js} +1 -1
- package/assets/esri/core/workers/chunks/{5228f535719f5fc38b28.js → 4ae15645e68e7f6dd6b7.js} +1 -1
- package/assets/esri/core/workers/chunks/4e6e5677b90b00622146.js +1 -0
- package/assets/esri/core/workers/chunks/4f3c187a7cb2b1444281.js +1 -0
- package/assets/esri/core/workers/chunks/5156410dd84ea1232a6c.js +1 -0
- package/assets/esri/core/workers/chunks/{c64aa9793764eba2c6da.js → 51ddda291bbbf5db9905.js} +1 -1
- package/assets/esri/core/workers/chunks/{2177c0ef06c8e7e3e28e.js → 554c789f4e875d7e6fd5.js} +1 -1
- package/assets/esri/core/workers/chunks/560bb06cf1bf30df4af3.js +1 -0
- package/assets/esri/core/workers/chunks/{36024406932b0a44a74a.js → 5b2ff220aebe464dac23.js} +1 -1
- package/assets/esri/core/workers/chunks/5b91a49202129eedaf00.js +1 -0
- package/assets/esri/core/workers/chunks/{a0dfd99dc8f4eac0b7ae.js → 5d1d909354c90cb8eb60.js} +1 -1
- package/assets/esri/core/workers/chunks/{2f52a57e8c05a3ca1de8.js → 5f11fff5bc16fdec42db.js} +1 -1
- package/assets/esri/core/workers/chunks/5fe3c279d57f44416c28.js +1 -0
- package/assets/esri/core/workers/chunks/{1c87ed3a5960f8f06fc8.js → 647cff1eaaf1b622f439.js} +1 -1
- package/assets/esri/core/workers/chunks/6530449cd1975deb61f1.js +1 -0
- package/assets/esri/core/workers/chunks/{c78d98ab82f31ddda362.js → 6759319f3fd2d03c446b.js} +1 -1
- package/assets/esri/core/workers/chunks/{e91800c1ea026e5b2d9b.js → 6acffacbb4a03af52e3b.js} +1 -1
- package/assets/esri/core/workers/chunks/{23e0fd2d921f74834b12.js → 6b5b609b357924fa35be.js} +1 -1
- package/assets/esri/core/workers/chunks/{cab294fd04f2a5eda81d.js → 712c740cf58c2e282efc.js} +1 -1
- package/assets/esri/core/workers/chunks/{68edbc3b124eb8e28dd6.js → 719b89341b26c3568c2f.js} +1 -1
- package/assets/esri/core/workers/chunks/{6f122e4a2a1f913523b4.js → 774844eea928efa811f2.js} +1 -1
- package/assets/esri/core/workers/chunks/{5cdeb6dc72f452d6d1bc.js → 77ee4afaa4a1c7047940.js} +1 -1
- package/assets/esri/core/workers/chunks/{904e701e1a12f67beaee.js → 787d281b2fe1edf6cf30.js} +1 -1
- package/assets/esri/core/workers/chunks/78de16f65ea297452a65.js +1 -0
- package/assets/esri/core/workers/chunks/{a76792c4edd1d688fba2.js → 791b3130b34b52160c1f.js} +1 -1
- package/assets/esri/core/workers/chunks/{056fdd5570af28d334cd.js → 79b389baf972d329c38d.js} +1 -1
- package/assets/esri/core/workers/chunks/{cf1f8fd1d62be0e02e10.js → 7a5808c6e67c43274d86.js} +1 -1
- package/assets/esri/core/workers/chunks/7b1fc59822ac2d421a5a.js +1 -0
- package/assets/esri/core/workers/chunks/{826e4bf6374f324d7f19.js → 7b82ed4cc475c782256b.js} +1 -1
- package/assets/esri/core/workers/chunks/7b95da70d39ba316b051.js +1 -0
- package/assets/esri/core/workers/chunks/{bb1213adeb05d89fbfdb.js → 7d082bfcd13ad6e8c89d.js} +1 -1
- package/assets/esri/core/workers/chunks/{7641e24ffa0215d51c34.js → 7ef29640de297a0cf744.js} +1 -1
- package/assets/esri/core/workers/chunks/{ac88e0aabbd6c1f1ec98.js → 7f523fa4d4ade4316625.js} +1 -1
- package/assets/esri/core/workers/chunks/85bfd380d4f522ff8e83.js +1 -0
- package/assets/esri/core/workers/chunks/{21ea48186d01bf459ef6.js → 88308a0dcc479688e67c.js} +1 -1
- package/assets/esri/core/workers/chunks/{360223d8bd4ee77ecda1.js → 896c7d137bfd7a8fa0bc.js} +1 -1
- package/assets/esri/core/workers/chunks/{74db0831bcbd48152c1d.js → 899f493412acd5a5d91f.js} +1 -1
- package/assets/esri/core/workers/chunks/{b331543767c35e5edcc6.js → 8c1bd9bcfc59497de3b5.js} +1 -1
- package/assets/esri/core/workers/chunks/{ce211163d078d3d742ce.js → 8ca95499e00ce8b0af9a.js} +1 -1
- package/assets/esri/core/workers/chunks/{4ff7c8420c77256f595a.js → 8d51b6823ef5d290c670.js} +1 -1
- package/assets/esri/core/workers/chunks/{1512ed7b869b3e8e07bc.js → 8e40c409a9b0a2a768a9.js} +1 -1
- package/assets/esri/core/workers/chunks/{938baf4f99332dfdf29d.js → 91be247f868ce6596c9e.js} +1 -1
- package/assets/esri/core/workers/chunks/{64553b5eae4edc7f46dc.js → 9247d768c3eccc0828a9.js} +1 -1
- package/assets/esri/core/workers/chunks/{02bd15e0adaffcdd645b.js → 947085d176bd3a930e6f.js} +1 -1
- package/assets/esri/core/workers/chunks/{dca2b487152cde45fb65.js → 94850c094e076d81a016.js} +1 -1
- package/assets/esri/core/workers/chunks/{5fac0b2a5aa33e8a3a84.js → 95f0c15d83d1f38e01d0.js} +1 -1
- package/assets/esri/core/workers/chunks/{b45dbbeae54cea2bbc10.js → 962c0ef63de1635fb4aa.js} +1 -1
- package/assets/esri/core/workers/chunks/98ac849cccc4d5316021.js +1 -0
- package/assets/esri/core/workers/chunks/9928e432b884c75c3436.js +1 -0
- package/assets/esri/core/workers/chunks/{d80e26a1f4a61b1c4cf9.js → 9b5e04d87116ce2b68b2.js} +1 -1
- package/assets/esri/core/workers/chunks/9c60599131860f635483.js +1 -0
- package/assets/esri/core/workers/chunks/{ca5f63c0297612059486.js → 9cd9b22354dbdf1b1df0.js} +1 -1
- package/assets/esri/core/workers/chunks/{bd1ba44362b967977003.js → 9e7af4c3c0f8cf0f5c5b.js} +1 -1
- package/assets/esri/core/workers/chunks/9f869b331dff505b6b55.js +1 -0
- package/assets/esri/core/workers/chunks/{183130521210c855c565.js → a13a36207f265f720255.js} +1 -1
- package/assets/esri/core/workers/chunks/a85acb948cc7d22be592.js +1 -0
- package/assets/esri/core/workers/chunks/{afb51b8562f8cb29b97e.js → a89c060ad302381aaf7d.js} +1 -1
- package/assets/esri/core/workers/chunks/{ada46055fafb8ae21dbe.js → aaab7694eb333ad480f5.js} +1 -1
- package/assets/esri/core/workers/chunks/{871da12fb3029177df6f.js → ad106f5f6d6848f40de3.js} +1 -1
- package/assets/esri/core/workers/chunks/{dec9656997683ef01ba6.js → ad1e5c24c1eae5ab8e45.js} +1 -1
- package/assets/esri/core/workers/chunks/b1c2e5e0a70fb5d27da5.js +1 -0
- package/assets/esri/core/workers/chunks/b40845b45f8d7cd347a1.js +1 -0
- package/assets/esri/core/workers/chunks/{54a686643e1ec1ea00ac.js → b481807b31e59cce9931.js} +1 -1
- package/assets/esri/core/workers/chunks/b5f6a0607b620b027cdd.js +1 -0
- package/assets/esri/core/workers/chunks/{8abcf9d3343dd8d45103.js → b884bd2f50aaccfa24c5.js} +1 -1
- package/assets/esri/core/workers/chunks/{1285ccdde515aca9a2d5.js → bb23371335ac049861e6.js} +1 -1
- package/assets/esri/core/workers/chunks/{469a018d94080fbcde22.js → bbdadced49446c907361.js} +1 -1
- package/assets/esri/core/workers/chunks/bc27cdd7c415ab166536.js +1 -0
- package/assets/esri/core/workers/chunks/{c06dda7263e64d696c88.js → c110941e87923ba47193.js} +1 -1
- package/assets/esri/core/workers/chunks/c474800508e3ad5ce9d7.js +1 -0
- package/assets/esri/core/workers/chunks/{67627b1965b27b2f1857.js → c51e2a048df152abd901.js} +1 -1
- package/assets/esri/core/workers/chunks/{5c5509147bda78ce338a.js → c52314b987c63cd630f7.js} +1 -1
- package/assets/esri/core/workers/chunks/{b12c44faa1efa60067b0.js → c660b6e67d5d13583f19.js} +1 -1
- package/assets/esri/core/workers/chunks/c6e3d4c6bb02d58d5cfe.js +1 -0
- package/assets/esri/core/workers/chunks/{a1591d7f82e06cab5de4.js → c8d57588267e2fc4406c.js} +1 -1
- package/assets/esri/core/workers/chunks/{f5bb7c90f48cae594bc3.js → ca7c9756802214e41c56.js} +1 -1
- package/assets/esri/core/workers/chunks/cf474c055a85bdbfa8d0.js +1 -0
- package/assets/esri/core/workers/chunks/{9f933a7e9d3b0cd69383.js → d08b80583a23ba253c7e.js} +1 -1
- package/assets/esri/core/workers/chunks/d1635a7ab0c204852237.js +1 -0
- package/assets/esri/core/workers/chunks/{d16484b389d56a43d204.js → d465e1b3a8a53d9c0a12.js} +1 -1
- package/assets/esri/core/workers/chunks/{4c7162883b228db563c6.js → d578c3880eaf2dd62324.js} +1 -1
- package/assets/esri/core/workers/chunks/{b8bd0f1be54b318990f6.js → d7c679374aa2d256becf.js} +1 -1
- package/assets/esri/core/workers/chunks/{bb0c5275e51d170ac795.js → d93b24e863379116b2aa.js} +1 -1
- package/assets/esri/core/workers/chunks/{fae53d825dd9fef0426c.js → da228aed337f492456cc.js} +1 -1
- package/assets/esri/core/workers/chunks/{6589133542fa130c0628.js → dd1d9913b33d4e48baff.js} +1 -1
- package/assets/esri/core/workers/chunks/{b49b73e2d0d643dfa351.js → de499e33035b56b6697d.js} +1 -1
- package/assets/esri/core/workers/chunks/{e59fdb8f625e9080f097.js → e08b2e9213d35f85916f.js} +1 -1
- package/assets/esri/core/workers/chunks/{c5c9f0c8da5f7bf41728.js → e177d0ab454dfa024b39.js} +1 -1
- package/assets/esri/core/workers/chunks/{948ecf0bfbc886ec3b52.js → e1b25b1ce3bd4f0f2cda.js} +1 -1
- package/assets/esri/core/workers/chunks/{eedf97211883713c413e.js → e1b573840ec1f7c3afd3.js} +1 -1
- package/assets/esri/core/workers/chunks/{b117e054a2bc54f5f93b.js → e3f2cdf5d71a7040894b.js} +1 -1
- package/assets/esri/core/workers/chunks/{dfc5936fbbd26f27a92a.js → e666ca4d14b6490485d6.js} +1 -1
- package/assets/esri/core/workers/chunks/e6d08230adb90b9a2a17.js +1 -0
- package/assets/esri/core/workers/chunks/{672751823261a5763684.js → e92d9e0ac789bcf1cdf4.js} +1 -1
- package/assets/esri/core/workers/chunks/{d3b932ff2299c89c2582.js → e95a8c988ef822723503.js} +1 -1
- package/assets/esri/core/workers/chunks/{ae667084cb6a08b97c37.js → eb7dd722e4cd7f83b3f5.js} +1 -1
- package/assets/esri/core/workers/chunks/ec9ed7c9d64f88fcb806.js +1 -0
- package/assets/esri/core/workers/chunks/{06bd2f5358c6b85d5420.js → f42938e1602306cfa7a8.js} +1 -1
- package/assets/esri/core/workers/chunks/{77e083d1e425026fa030.js → f4b145feab275b268c2e.js} +1 -1
- package/assets/esri/core/workers/chunks/{568f49f9e50c505b2736.js → f4d7cbd33ef8710d7316.js} +1 -1
- package/assets/esri/core/workers/chunks/{451ae19a0a120b27c6da.js → fb0f729eff2f2911d6c3.js} +1 -1
- package/assets/esri/core/workers/chunks/{ce0683921ccefc580018.js → fd3009164d5e38fda85f.js} +1 -1
- package/assets/esri/core/workers/chunks/{4c77102f083198ae2a6a.js → ff34fdda7899e784ac73.js} +1 -1
- package/chunks/ColorMaterial.glsl.js +2 -2
- package/chunks/DefaultMaterial.glsl.js +4 -4
- package/chunks/HUDMaterial.glsl.js +5 -5
- package/chunks/LineMarker.glsl.js +19 -19
- package/chunks/Pattern.glsl.js +6 -6
- package/chunks/RibbonLine.glsl.js +2 -2
- package/chunks/TimeExtent.js +1 -1
- package/chunks/TimeInterval.js +1 -1
- package/chunks/pe.js +1 -1
- package/config.js +1 -1
- package/core/AsyncUpdate.js +1 -1
- package/core/Collection.js +1 -1
- package/core/Evented.js +1 -1
- package/core/JSONSupport.d.ts +1 -1
- package/core/JSONSupport.js +1 -1
- package/core/Loadable.js +1 -1
- package/core/MultiOriginJSONSupport.js +1 -1
- package/core/Promise.d.ts +1 -1
- package/core/Promise.js +1 -1
- package/core/ReadOnlyMultiOriginJSONSupport.js +1 -1
- package/core/has.js +1 -1
- package/core/object.js +1 -1
- package/core/workers/RemoteClient.js +1 -1
- package/core/workers/utils.js +1 -1
- package/editing/sharedTemplates/SharedTemplate.js +1 -1
- package/editing/sharedTemplates/SharedTemplateMetadata.js +1 -1
- package/editing/sharedTemplates/templateDefinitions/TemplateDefinitionBase.js +1 -1
- package/editing/sharedTemplates/templateDefinitions/parts/TemplatePartBase.js +1 -1
- package/effects/FocusArea.js +1 -1
- package/effects/FocusAreaOutline.js +1 -1
- package/effects/FocusAreas.js +1 -1
- package/form/ExpressionInfo.js +1 -1
- package/form/FormTemplate.js +1 -1
- package/form/elements/Element.js +1 -1
- package/form/elements/inputs/Input.js +1 -1
- package/form/elements/inputs/attachments/Input.js +1 -1
- package/geometry/Geometry.js +1 -1
- package/geometry/HeightModelInfo.js +1 -1
- package/geometry/Mesh.js +1 -1
- package/geometry/SpatialReference.js +1 -1
- package/geometry/support/MeshComponent.js +1 -1
- package/geometry/support/MeshGeoreferencedVertexSpace.js +1 -1
- package/geometry/support/MeshLocalVertexSpace.js +1 -1
- package/geometry/support/MeshMaterial.js +1 -1
- package/geometry/support/MeshTexture.js +1 -1
- package/geometry/support/MeshTextureTransform.js +1 -1
- package/geometry/support/MeshTransform.js +1 -1
- package/geometry/support/MeshVertexAttributes.js +1 -1
- package/geometry/support/heightModelInfoUtils.js +1 -1
- package/grids/MeasuredGrid.js +1 -1
- package/ground/NavigationConstraint.js +1 -1
- package/identity/IdentityManagerBase.js +1 -1
- package/identity/OAuthInfo.js +1 -1
- package/identity/ServerInfo.js +1 -1
- package/kernel.js +1 -1
- package/layers/BuildingSceneLayer.js +1 -1
- package/layers/GaussianSplatLayer.js +5 -0
- package/layers/buildingSublayers/BuildingComponentSublayer.js +1 -1
- package/layers/buildingSublayers/BuildingGroupSublayer.js +1 -1
- package/layers/buildingSublayers/utils.js +5 -0
- package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/graphics/sources/MemorySource.js +1 -1
- package/layers/knowledgeGraph/IdealEdgeLengthTypeOptions.js +1 -1
- package/layers/mixins/OperationalLayer.js +1 -1
- package/layers/mixins/TemporalSceneLayer.js +1 -1
- package/layers/mixins/operationalLayerModuleMap.js +1 -1
- package/layers/orientedImagery/core/CameraOrientationHPR.js +1 -1
- package/layers/orientedImagery/core/CameraOrientationLTP.js +1 -1
- package/layers/orientedImagery/core/CameraOrientationOPK.js +1 -1
- package/layers/orientedImagery/core/CameraOrientationYPR.js +1 -1
- package/layers/orientedImagery/core/ElevationSourceDefinitions.js +1 -1
- package/layers/orientedImagery/core/ExposurePoint.js +1 -1
- package/layers/pointCloudFilters/PointCloudFilter.js +1 -1
- package/layers/support/AggregateField.js +1 -1
- package/layers/support/BuildingFilter.js +1 -1
- package/layers/support/BuildingFilterAuthoringInfo.js +1 -1
- package/layers/support/BuildingFilterAuthoringInfoBlock.js +1 -1
- package/layers/support/BuildingFilterAuthoringInfoType.js +1 -1
- package/layers/support/BuildingFilterBlock.js +1 -1
- package/layers/support/BuildingFilterMode.js +1 -1
- package/layers/support/BuildingSummaryStatistics.js +1 -1
- package/layers/support/CodedValue.js +1 -1
- package/layers/support/ControlPointsGeoreference.js +1 -1
- package/layers/support/DimensionalDefinition.js +1 -1
- package/layers/support/DisplayFilter.js +1 -1
- package/layers/support/DisplayFilterInfo.js +1 -1
- package/layers/support/Domain.js +1 -1
- package/layers/support/EditFieldsInfo.js +1 -1
- package/layers/support/ExportImageServiceParameters.js +1 -1
- package/layers/support/ExpressionInfo.js +1 -1
- package/layers/support/FacilityLayerInfo.js +1 -1
- package/layers/support/FeatureEffect.js +1 -1
- package/layers/support/FeatureFilter.js +1 -1
- package/layers/support/FeatureIndex.js +1 -1
- package/layers/support/FeatureReduction.js +1 -1
- package/layers/support/FeatureReductionCluster.js +1 -1
- package/layers/support/FeatureTemplate.js +1 -1
- package/layers/support/FeatureType.js +1 -1
- package/layers/support/Field.js +1 -1
- package/layers/support/GeometryFieldsInfo.js +1 -1
- package/layers/support/I3SLayerDefinitions.js +1 -1
- package/layers/support/KMLMapImage.js +1 -1
- package/layers/support/KMLSublayer.js +1 -1
- package/layers/support/LOD.js +1 -1
- package/layers/support/LabelClass.js +1 -1
- package/layers/support/LabelExpressionInfo.js +1 -1
- package/layers/support/LayerContingentValuesCache.js +1 -1
- package/layers/support/LayerFloorInfo.js +1 -1
- package/layers/support/LayerTimeOptions.js +1 -1
- package/layers/support/LevelLayerInfo.js +1 -1
- package/layers/support/LocalMediaElementSource.js +1 -1
- package/layers/support/MapImage.js +1 -1
- package/layers/support/MosaicRule.js +1 -1
- package/layers/support/MultidimensionalSubset.js +1 -1
- package/layers/support/OrderByInfo.js +1 -1
- package/layers/support/ParquetEncodingBase.js +1 -1
- package/layers/support/ParquetEncodingLocation.js +1 -1
- package/layers/support/ParquetEncodingWkb.js +1 -1
- package/layers/support/PixelBlock.js +1 -1
- package/layers/support/PlaybackInfo.js +1 -1
- package/layers/support/PolygonCollection.js +1 -1
- package/layers/support/PurgeOptions.js +1 -1
- package/layers/support/RangeInfo.js +1 -1
- package/layers/support/RasterBandInfo.js +1 -1
- package/layers/support/RasterFunction.js +1 -1
- package/layers/support/RasterFunctionInfo.js +1 -1
- package/layers/support/RasterFunctionProperties.js +1 -1
- package/layers/support/RasterFunctionTemplate.js +1 -1
- package/layers/support/RasterFunctionVariable.js +1 -1
- package/layers/support/RasterInfo.js +1 -1
- package/layers/support/RasterSensorInfo.js +1 -1
- package/layers/support/RasterStorageInfo.js +1 -1
- package/layers/support/Relationship.js +1 -1
- package/layers/support/RouteStopSymbols.js +1 -1
- package/layers/support/RouteSymbols.js +1 -1
- package/layers/support/SceneFilter.js +1 -1
- package/layers/support/SceneModification.js +1 -1
- package/layers/support/SceneModifications.js +1 -1
- package/layers/support/SiteLayerInfo.js +1 -1
- package/layers/support/Subtype.js +1 -1
- package/layers/support/TelemetryData.js +1 -1
- package/layers/support/TelemetryDisplay.js +1 -1
- package/layers/support/TileInfo.js +1 -1
- package/layers/support/TileMatrixSet.js +1 -1
- package/layers/support/TimeInfo.js +1 -1
- package/layers/support/TrackInfo.js +1 -1
- package/layers/support/TrackPartInfo.js +1 -1
- package/layers/support/VideoFrame.js +1 -1
- package/layers/support/VideoTimeExtent.js +1 -1
- package/layers/support/WMTSLayerInfo.js +1 -1
- package/layers/support/WMTSStyle.js +1 -1
- package/layers/support/WMTSSublayer.js +1 -1
- package/layers/support/lazyLayerLoader.js +1 -1
- package/layers/support/rasterDatasets/BaseRaster.js +1 -1
- package/layers/support/rasterFunctions/BaseFunctionArguments.js +1 -1
- package/layers/support/rasterFunctions/BaseRasterFunction.js +1 -1
- package/layers/support/rasterTransforms/BaseRasterTransform.js +1 -1
- package/layers/support/source/DataLayerSource.js +1 -1
- package/layers/support/source/MapLayerSource.js +1 -1
- package/layers/support/source/QueryTableDataSource.js +1 -1
- package/layers/support/source/RasterDataSource.js +1 -1
- package/layers/support/source/TableDataSource.js +1 -1
- package/layers/voxel/VoxelColorStop.js +1 -1
- package/layers/voxel/VoxelDimension.js +1 -1
- package/layers/voxel/VoxelDynamicSection.js +1 -1
- package/layers/voxel/VoxelFormat.js +1 -1
- package/layers/voxel/VoxelIrregularSpacing.js +1 -1
- package/layers/voxel/VoxelIsosurface.js +1 -1
- package/layers/voxel/VoxelOpacityStop.js +1 -1
- package/layers/voxel/VoxelRangeFilter.js +1 -1
- package/layers/voxel/VoxelRegularSpacing.js +1 -1
- package/layers/voxel/VoxelSection.js +1 -1
- package/layers/voxel/VoxelSimpleShading.js +1 -1
- package/layers/voxel/VoxelSlice.js +1 -1
- package/layers/voxel/VoxelTransferFunctionStyle.js +1 -1
- package/layers/voxel/VoxelUniqueValue.js +1 -1
- package/layers/voxel/VoxelVariable.js +1 -1
- package/layers/voxel/VoxelVariableStyle.js +1 -1
- package/layers/voxel/VoxelVolume.js +1 -1
- package/layers/voxel/VoxelVolumeIndex.js +1 -1
- package/layers/voxel/VoxelVolumeStyle.js +1 -1
- package/libs/linkchartlayout/LinkChartLayout.js +1 -1
- package/linkChart/ChronologicalLayoutSettings.js +1 -1
- package/linkChart/LayoutSettings.js +1 -1
- package/linkChart/NonspatialDataDisplay.js +1 -1
- package/linkChart/OrganicLayoutSettings.js +1 -1
- package/networks/CircuitManager.js +1 -1
- package/networks/RulesTable.js +1 -1
- package/networks/UnitIdentifierManager.js +1 -1
- package/networks/support/Terminal.js +1 -1
- package/networks/support/TerminalConfiguration.js +1 -1
- package/networks/support/TraceConfiguration.js +1 -1
- package/networks/support/UtilityNetworkLookupHelper.js +1 -1
- package/package.json +2 -2
- package/popup/ElementExpressionInfo.js +1 -1
- package/popup/ExpressionInfo.js +1 -1
- package/popup/FieldInfo.js +1 -1
- package/popup/LayerOptions.js +1 -1
- package/popup/RelatedRecordsInfo.js +1 -1
- package/popup/content/Content.js +1 -1
- package/popup/content/mixins/MediaInfo.js +1 -1
- package/popup/content/support/ChartMediaInfoValue.js +1 -1
- package/popup/content/support/ImageMediaInfoValue.js +1 -1
- package/popup/support/AttachmentsOrderByInfo.js +1 -1
- package/popup/support/FieldInfoFormat.js +1 -1
- package/popup/support/RelatedRecordsInfoFieldOrder.js +1 -1
- package/popup/support/UtilityNetworkAssociationType.js +1 -1
- package/portal/Portal.js +1 -1
- package/portal/PortalFolder.js +1 -1
- package/portal/PortalGroup.js +1 -1
- package/portal/PortalItem.js +1 -1
- package/portal/PortalUser.js +1 -1
- package/renderers/FlowRenderer.js +1 -1
- package/renderers/PointCloudClassBreaksRenderer.js +1 -1
- package/renderers/PointCloudRenderer.js +1 -1
- package/renderers/PointCloudStretchRenderer.js +1 -1
- package/renderers/PointCloudUniqueValueRenderer.js +1 -1
- package/renderers/RasterColormapRenderer.js +1 -1
- package/renderers/RasterShadedReliefRenderer.js +1 -1
- package/renderers/RasterStretchRenderer.js +1 -1
- package/renderers/Renderer.js +1 -1
- package/renderers/VectorFieldRenderer.js +1 -1
- package/renderers/support/AttributeColorInfo.js +1 -1
- package/renderers/support/AuthoringInfo.js +1 -1
- package/renderers/support/AuthoringInfoClassBreakInfo.js +1 -1
- package/renderers/support/AuthoringInfoFieldInfo.js +1 -1
- package/renderers/support/AuthoringInfoSizeStop.js +1 -1
- package/renderers/support/AuthoringInfoVisualVariable.js +1 -1
- package/renderers/support/ClassBreakInfo.js +1 -1
- package/renderers/support/ColormapInfo.js +1 -1
- package/renderers/support/DotDensityLegendOptions.js +1 -1
- package/renderers/support/HeatmapColorStop.js +1 -1
- package/renderers/support/HeatmapLegendOptions.js +1 -1
- package/renderers/support/OthersCategory.js +1 -1
- package/renderers/support/RasterPresetRenderer.js +1 -1
- package/renderers/support/RasterSymbolizer.js +1 -1
- package/renderers/support/RendererLegendOptions.js +1 -1
- package/renderers/support/UniqueValue.js +1 -1
- package/renderers/support/UniqueValueClass.js +1 -1
- package/renderers/support/UniqueValueGroup.js +1 -1
- package/renderers/support/UniqueValueInfo.js +1 -1
- package/renderers/support/pointCloud/ColorClassBreakInfo.js +1 -1
- package/renderers/support/pointCloud/ColorModulation.js +1 -1
- package/renderers/support/pointCloud/ColorUniqueValueInfo.js +1 -1
- package/renderers/support/pointCloud/PointSizeAlgorithm.js +1 -1
- package/renderers/support/pointCloud/fieldsMap.js +5 -0
- package/renderers/visualVariables/VisualVariable.js +1 -1
- package/renderers/visualVariables/support/ColorSizeStop.js +1 -1
- package/renderers/visualVariables/support/ColorStop.js +1 -1
- package/renderers/visualVariables/support/OpacityStop.js +1 -1
- package/renderers/visualVariables/support/SizeStop.js +1 -1
- package/renderers/visualVariables/support/VisualVariableLegendOptions.js +1 -1
- package/rest/featureService/FeatureService.js +1 -1
- package/rest/knowledgeGraph/DataModel.js +1 -1
- package/rest/knowledgeGraph/FieldIndex.js +1 -1
- package/rest/knowledgeGraph/GraphObject.js +1 -1
- package/rest/knowledgeGraph/GraphObjectType.js +1 -1
- package/rest/knowledgeGraph/GraphProperty.js +1 -1
- package/rest/knowledgeGraph/KnowledgeGraph.js +1 -1
- package/rest/knowledgeGraph/Path.js +1 -1
- package/rest/knowledgeGraph/ProtoFeatureCollection.js +1 -1
- package/rest/knowledgeGraph/ServiceDefinition.js +1 -1
- package/rest/knowledgeGraph/SourceTypeValueBehavior.js +1 -1
- package/rest/knowledgeGraph/toolService/findPaths/CIMFilteredFindPathsConfiguration.js +1 -1
- package/rest/knowledgeGraph/toolService/findPaths/CIMFilteredFindPathsEntity.js +1 -1
- package/rest/knowledgeGraph/toolService/findPaths/CIMFilteredFindPathsPathFilter.js +1 -1
- package/rest/knowledgeGraph/toolService/findPaths/CIMKGTraversalDirection.js +1 -1
- package/rest/knowledgeGraph/wasmInterface/WasmDataModelWrapperInterfaces.js +1 -1
- package/rest/knowledgeGraph/wasmInterface/WasmQueryWrapperInterfaces.js +1 -1
- package/rest/knowledgeGraph/wasmInterface/WasmSerializedLayerData.js +1 -1
- package/rest/knowledgeGraph/wasmInterface/wasmToDataModelFactories.js +1 -1
- package/rest/knowledgeGraph/wasmInterface/wasmToFeatureFactories.js +1 -1
- package/rest/knowledgeGraph/wasmInterface/wasmToQueryResponseObjFactories.js +1 -1
- package/rest/networks/circuits/support/CircuitVerifyResult.js +1 -1
- package/rest/networks/circuits/support/CreateAlterCircuitParameters.js +1 -1
- package/rest/networks/circuits/support/DeleteCircuitsParameters.js +1 -1
- package/rest/networks/circuits/support/EditCircuitsResult.js +1 -1
- package/rest/networks/circuits/support/ExportCircuitsParameters.js +1 -1
- package/rest/networks/circuits/support/ExportCircuitsResult.js +1 -1
- package/rest/networks/circuits/support/QueryCircuitsParameters.js +1 -1
- package/rest/networks/circuits/support/QueryCircuitsResult.js +1 -1
- package/rest/networks/circuits/support/VerifyCircuitsParameters.js +1 -1
- package/rest/networks/circuits/support/VerifyCircuitsResult.js +1 -1
- package/rest/networks/support/AggregatedGeometry.js +1 -1
- package/rest/networks/support/Association.js +1 -1
- package/rest/networks/support/AssociationGeometriesResult.js +1 -1
- package/rest/networks/support/CircuitPath.js +1 -1
- package/rest/networks/support/CircuitPathConnectivityElement.js +1 -1
- package/rest/networks/support/CircuitTraceResult.js +1 -1
- package/rest/networks/support/FunctionResult.js +1 -1
- package/rest/networks/support/NetworkElement.js +1 -1
- package/rest/networks/support/QueryAssociationsParameters.js +1 -1
- package/rest/networks/support/QueryAssociationsResult.js +1 -1
- package/rest/networks/support/QueryNamedTraceConfigurationsParameters.js +1 -1
- package/rest/networks/support/QueryNamedTraceConfigurationsResult.js +1 -1
- package/rest/networks/support/SynthesizeAssociationGeometriesParameters.js +1 -1
- package/rest/networks/support/TraceLocation.js +1 -1
- package/rest/networks/support/TraceParameters.js +1 -1
- package/rest/networks/support/TraceResult.js +1 -1
- package/rest/networks/support/ValidateNetworkTopologyParameters.js +1 -1
- package/rest/networks/support/ValidateNetworkTopologyResult.js +1 -1
- package/rest/networks/unitIdentifiers/support/EditUnitIdentifiersResult.js +1 -1
- package/rest/networks/unitIdentifiers/support/InsertGapParameters.js +1 -1
- package/rest/networks/unitIdentifiers/support/QueryUnitIdentifiersParameters.js +1 -1
- package/rest/networks/unitIdentifiers/support/ResetParameters.js +1 -1
- package/rest/networks/unitIdentifiers/support/ResizeParameters.js +1 -1
- package/rest/networks/unitIdentifiers/support/UnitQueryResult.js +1 -1
- package/rest/query/support/AttachmentInfo.js +1 -1
- package/rest/support/AddressCandidate.js +1 -1
- package/rest/support/AddressToLocationsParameters.js +1 -1
- package/rest/support/AddressesToLocationsParameters.js +1 -1
- package/rest/support/ArealUnit.js +1 -1
- package/rest/support/AreasAndLengthsParameters.js +1 -1
- package/rest/support/AttachmentQuery.js +1 -1
- package/rest/support/AttributeBinsGrouping.js +1 -1
- package/rest/support/AttributeBinsQuery.js +1 -1
- package/rest/support/BaseImageMeasureParameters.js +1 -1
- package/rest/support/BaseImageMeasureResult.js +1 -1
- package/rest/support/BinParametersBase.js +1 -1
- package/rest/support/BufferParameters.js +1 -1
- package/rest/support/CameraInfo.js +1 -1
- package/rest/support/ClassBreaksDefinition.js +1 -1
- package/rest/support/ClosestFacilityParameters.js +1 -1
- package/rest/support/ClosestFacilitySolveResult.js +1 -1
- package/rest/support/ColorRamp.js +1 -1
- package/rest/support/DataFile.js +1 -1
- package/rest/support/DataLayer.js +1 -1
- package/rest/support/DateBinTimeInterval.js +1 -1
- package/rest/support/DensifyParameters.js +1 -1
- package/rest/support/DirectionLine.js +1 -1
- package/rest/support/DirectionPoint.js +1 -1
- package/rest/support/DirectionsEvent.js +1 -1
- package/rest/support/DirectionsString.js +1 -1
- package/rest/support/FeatureSet.js +1 -1
- package/rest/support/FindImagesParameters.js +1 -1
- package/rest/support/FindImagesResult.js +1 -1
- package/rest/support/FindParameters.js +1 -1
- package/rest/support/FindResult.js +1 -1
- package/rest/support/FullTextSearch.js +1 -1
- package/rest/support/GPMessage.js +1 -1
- package/rest/support/GeneralizeParameters.js +1 -1
- package/rest/support/GenerateRendererParameters.js +1 -1
- package/rest/support/IdentifyParameters.js +1 -1
- package/rest/support/IdentifyResult.js +1 -1
- package/rest/support/ImageAngleParameters.js +1 -1
- package/rest/support/ImageAngleResult.js +1 -1
- package/rest/support/ImageBoundaryParameters.js +1 -1
- package/rest/support/ImageBoundaryResult.js +1 -1
- package/rest/support/ImageGPSInfo.js +1 -1
- package/rest/support/ImageGPSInfoParameters.js +1 -1
- package/rest/support/ImageGPSInfoResult.js +1 -1
- package/rest/support/ImageHistogramParameters.js +1 -1
- package/rest/support/ImageIdentifyParameters.js +1 -1
- package/rest/support/ImageIdentifyResult.js +1 -1
- package/rest/support/ImageInspectionInfo.js +1 -1
- package/rest/support/ImagePixelLocationParameters.js +1 -1
- package/rest/support/ImagePixelLocationResult.js +1 -1
- package/rest/support/ImageSample.js +1 -1
- package/rest/support/ImageSampleParameters.js +1 -1
- package/rest/support/ImageSampleResult.js +1 -1
- package/rest/support/ImageToMapMultirayParameters.js +1 -1
- package/rest/support/ImageToMapParameters.js +1 -1
- package/rest/support/ImageUrlParameters.js +1 -1
- package/rest/support/ImageUrlResult.js +1 -1
- package/rest/support/ImageVolume.js +1 -1
- package/rest/support/ImageVolumeParameters.js +1 -1
- package/rest/support/ImageVolumeResult.js +1 -1
- package/rest/support/JobInfo.js +1 -1
- package/rest/support/LegendLayer.js +1 -1
- package/rest/support/LengthsParameters.js +1 -1
- package/rest/support/LinearUnit.js +1 -1
- package/rest/support/LocationToAddressParameters.js +1 -1
- package/rest/support/MapToImageParameters.js +1 -1
- package/rest/support/MeasureAreaFromImageResult.js +1 -1
- package/rest/support/MeasureFromImageParameters.js +1 -1
- package/rest/support/MeasureLengthFromImageResult.js +1 -1
- package/rest/support/MultipartColorRamp.js +1 -1
- package/rest/support/NetworkAttribute.js +1 -1
- package/rest/support/NetworkDataset.js +1 -1
- package/rest/support/NetworkServiceDescription.js +1 -1
- package/rest/support/NetworkUrl.js +1 -1
- package/rest/support/OffsetParameters.js +1 -1
- package/rest/support/ParameterValue.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/ProjectParameters.js +1 -1
- package/rest/support/QuantizationParameters.js +1 -1
- package/rest/support/Query.js +1 -1
- package/rest/support/RasterData.js +1 -1
- package/rest/support/RelationParameters.js +1 -1
- package/rest/support/RelationshipQuery.js +1 -1
- package/rest/support/RouteInfo.js +1 -1
- package/rest/support/RouteParameters.js +1 -1
- package/rest/support/RouteResult.js +1 -1
- package/rest/support/RouteSettings.js +1 -1
- package/rest/support/RouteSolveResult.js +1 -1
- package/rest/support/ServiceAreaParameters.js +1 -1
- package/rest/support/ServiceAreaSolveResult.js +1 -1
- package/rest/support/StatisticDefinition.js +1 -1
- package/rest/support/Stop.js +1 -1
- package/rest/support/SuggestLocationsParameters.js +1 -1
- package/rest/support/SuggestionCandidate.js +1 -1
- package/rest/support/TopFeaturesQuery.js +1 -1
- package/rest/support/TopFilter.js +1 -1
- package/rest/support/TranslateContent.js +1 -1
- package/rest/support/TranslateParameters.js +1 -1
- package/rest/support/TranslateResult.js +1 -1
- package/rest/support/TravelMode.js +1 -1
- package/rest/support/TrimExtendParameters.js +1 -1
- package/rest/support/UniqueValueDefinition.js +1 -1
- package/rest/support/imageMeasureUtils.js +1 -1
- package/rest/versionManagement/gdbVersion/support/AlterVersionParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/ConflictsParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/ConflictsResult.js +1 -1
- package/rest/versionManagement/gdbVersion/support/DeleteForwardEditsParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/DifferencesParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/DifferencesResult.js +1 -1
- package/rest/versionManagement/gdbVersion/support/InspectConflictsParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/PostParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/PostResult.js +1 -1
- package/rest/versionManagement/gdbVersion/support/ReconcileParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/ReconcileResult.js +1 -1
- package/rest/versionManagement/gdbVersion/support/RestoreRowsParameters.js +1 -1
- package/rest/versionManagement/gdbVersion/support/RestoreRowsResult.js +1 -1
- package/rest/versionManagement/support/CreateVersionParameters.js +1 -1
- package/rest/versionManagement/support/DeleteVersionParameters.js +1 -1
- package/rest/versionManagement/support/GetVersionInfosParameters.js +1 -1
- package/rest/versionManagement/support/GetVersionInfosResult.js +1 -1
- package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +1 -1
- package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
- package/support/MapFloorInfo.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/Font.js +1 -1
- package/symbols/LineStyleMarker3D.js +1 -1
- package/symbols/LineSymbolMarker.js +1 -1
- package/symbols/Symbol.js +1 -1
- package/symbols/Symbol3DLayer.js +1 -1
- package/symbols/callouts/Callout3D.js +1 -1
- package/symbols/callouts/LineCallout3DBorder.js +1 -1
- package/symbols/edges/Edges3D.js +1 -1
- package/symbols/patterns/LinePattern3D.js +1 -1
- package/symbols/patterns/Pattern3D.js +1 -1
- package/symbols/support/ElevationInfo.js +1 -1
- package/symbols/support/FeatureExpressionInfo.js +1 -1
- package/symbols/support/IconSymbol3DLayerResource.js +1 -1
- package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
- package/symbols/support/Symbol3DEmissive.js +1 -1
- package/symbols/support/Symbol3DHalo.js +1 -1
- package/symbols/support/Symbol3DIconOutline.js +1 -1
- package/symbols/support/Symbol3DMaterial.js +1 -1
- package/symbols/support/Symbol3DOutline.js +1 -1
- package/symbols/support/Symbol3DTextBackground.js +1 -1
- package/symbols/support/Symbol3DVerticalOffset.js +1 -1
- package/tables/AttributeTableTemplate.js +1 -1
- package/tables/elements/AttributeTableElement.js +1 -1
- package/tables/support/FieldOrder.js +1 -1
- package/undoredo/support/Services.js +1 -1
- package/versionManagement/VersionManagementService.js +1 -1
- package/versionManagement/VersioningState.js +1 -1
- package/views/2d/AnimationManager.js +1 -1
- package/views/2d/ViewState.js +1 -1
- package/views/2d/engine/AFeatureContainer.js +1 -1
- package/views/2d/engine/Bitmap.js +1 -1
- package/views/2d/engine/Stage.js +1 -1
- package/views/2d/engine/flow/styles/Imagery.js +1 -1
- package/views/2d/engine/flow/styles/Particles.js +1 -1
- package/views/2d/engine/flow/styles/Streamlines.js +1 -1
- package/views/2d/engine/imagery/BrushVectorField.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/RenderBucket.js +1 -1
- package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
- package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
- package/views/2d/engine/vectorTiles/shaders/VTLMaterial.js +1 -1
- package/views/2d/engine/webgl/BitBlitRenderer.js +1 -1
- package/views/2d/engine/webgl/ClippingInfo.js +1 -1
- package/views/2d/engine/webgl/FeatureDisplayList.js +1 -1
- package/views/2d/engine/webgl/MaterialManager.js +1 -1
- package/views/2d/engine/webgl/Mesh2D.js +1 -1
- package/views/2d/engine/webgl/Overlay.js +1 -1
- package/views/2d/engine/webgl/OverlayMultipoint.js +1 -1
- package/views/2d/engine/webgl/Painter.js +1 -1
- package/views/2d/engine/webgl/TiledDisplayObject.js +1 -1
- package/views/2d/engine/webgl/Utils.js +1 -1
- package/views/2d/engine/webgl/VertexStream.js +1 -1
- package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
- package/views/2d/engine/webgl/WorldExtentClipRenderer.js +1 -1
- package/views/2d/engine/webgl/animations/store/AnimationStore.js +1 -1
- package/views/2d/engine/webgl/brushes/BrushClip.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushStencil.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushTileDebugInfo.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js +1 -1
- package/views/2d/engine/webgl/cpuMapped/MappedMesh.js +1 -1
- package/views/2d/engine/webgl/effects/HittestEffect.js +1 -1
- package/views/2d/engine/webgl/effects/highlight/HighlightRenderer.js +1 -1
- package/views/2d/engine/webgl/effects/post-processing/Bloom.js +1 -1
- package/views/2d/engine/webgl/effects/post-processing/Blur.js +1 -1
- package/views/2d/engine/webgl/effects/post-processing/Colorize.js +1 -1
- package/views/2d/engine/webgl/effects/post-processing/DropShadow.js +1 -1
- package/views/2d/engine/webgl/meshing/Mesh.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/GLSLShaderModule.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/GraphShaderModule.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/TestDisplayObject.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityResources.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapResources.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/textureUtils.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/typed/TypedShaderProgram.js +1 -1
- package/views/2d/engine/webgl/shaders/BackgroundPrograms.js +1 -1
- package/views/2d/engine/webgl/shaders/BitBlitPrograms.js +1 -1
- package/views/2d/engine/webgl/shaders/HighlightPrograms.js +1 -1
- package/views/2d/engine/webgl/shaders/MaterialPrograms.js +1 -1
- package/views/2d/engine/webgl/shaders/StencilPrograms.js +1 -1
- package/views/2d/engine/webgl/shaders/TileInfoPrograms.js +1 -1
- package/views/2d/grid/GridView2D.js +1 -1
- package/views/2d/layerViewModuleImportUtils.js +1 -1
- package/views/2d/layers/BaseDynamicLayerView2D.js +1 -1
- package/views/2d/layers/BaseLayerView2D.js +1 -1
- package/views/2d/layers/BaseLayerViewGL2D.js +1 -1
- package/views/2d/layers/CatalogDynamicGroupLayerView2D.js +1 -1
- package/views/2d/layers/CatalogFootprintLayerView2D.js +1 -1
- package/views/2d/layers/CatalogLayerView2D.js +1 -1
- package/views/2d/layers/FeatureLayerView2D.js +1 -1
- package/views/2d/layers/ImageryLayerView2D.js +1 -1
- package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
- package/views/2d/layers/MapImageLayerView2D.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/OGCFeatureLayerView2D.js +1 -1
- package/views/2d/layers/StreamLayerView2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/2d/layers/VectorTileLayerView2D.js +1 -1
- package/views/2d/layers/WMSLayerView2D.js +1 -1
- package/views/2d/layers/WMTSLayerView2D.js +1 -1
- package/views/2d/layers/features/support/AttributeStore.js +1 -1
- package/views/2d/layers/features/support/TileStore.js +1 -1
- package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
- package/views/2d/layers/support/DebugOverlay.js +1 -1
- package/views/2d/magnifier/MagnifierView2D.js +1 -1
- package/views/3d/FocusAreasView.js +1 -1
- package/views/3d/analysis/AnalysisView3D.js +1 -1
- package/views/3d/analysis/LineOfSightAnalysisView3D.js +1 -1
- package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
- package/views/3d/environment/CloudsCompositionTechnique.js +1 -1
- package/views/3d/environment/CloudsRenderer.js +1 -1
- package/views/3d/environment/CloudsTechnique.js +1 -1
- package/views/3d/environment/CloudyWeather.js +1 -1
- package/views/3d/environment/FogTechnique.js +1 -1
- package/views/3d/environment/FoggyWeather.js +1 -1
- package/views/3d/environment/LocalAtmosphere.js +1 -1
- package/views/3d/environment/MarsAtmosphere.js +1 -1
- package/views/3d/environment/NoiseTextureAtlasTechnique.js +1 -1
- package/views/3d/environment/Precipitation.js +1 -1
- package/views/3d/environment/RainyWeather.js +1 -1
- package/views/3d/environment/SimpleAtmosphereTechnique.js +1 -1
- package/views/3d/environment/SnowyWeather.js +1 -1
- package/views/3d/environment/SunLighting.js +1 -1
- package/views/3d/environment/SunnyWeather.js +1 -1
- package/views/3d/glTF/internal/Resource.js +1 -1
- package/views/3d/glTF/loader.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/transform/ScaleRotateTransform.js +1 -1
- package/views/3d/layerViewModuleImportUtils.js +1 -1
- package/views/3d/layers/BuildingSublayerView3D.js +1 -1
- package/views/3d/layers/CatalogDynamicGroupLayerView3D.js +1 -1
- package/views/3d/layers/CatalogFootprintLayerView3D.js +1 -1
- package/views/3d/layers/CatalogLayerView3D.js +1 -1
- package/views/3d/layers/DynamicLayerView3D.js +1 -1
- package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
- package/views/3d/layers/GaussianSplatLayerView3D.js +5 -0
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/OGCFeatureLayerView3D.js +1 -1
- package/views/3d/layers/PointCloudLayerView3D.js +1 -1
- package/views/3d/layers/StreamLayerView3D.js +1 -1
- package/views/3d/layers/TileLayerView3D.js +1 -1
- package/views/3d/layers/WMSLayerView3D.js +1 -1
- package/views/3d/layers/WMTSLayerView3D.js +1 -1
- package/views/3d/layers/graphics/GraphicStateTracking.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DGraphicsPipeline.js +1 -1
- package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/StreamController.js +1 -1
- package/views/3d/layers/graphics/pipeline/Feature3DPipeline.js +1 -1
- package/views/3d/layers/graphics/pipeline/Feature3DPipelineWorkerHandle.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/DirectRenderer.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/FeaturePipelineRenderManager.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/LodRenderer.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/RenderCommandContext.js +1 -1
- package/views/3d/layers/graphics/pipeline/symbolization/IconSymbolLayerRenderer.js +1 -1
- package/views/3d/layers/graphics/pipeline/symbolization/ObjectSymbolLayerRenderer.js +1 -1
- package/views/3d/layers/graphics/pipeline/symbolization/primitiveObjectUtils.js +1 -1
- package/views/3d/layers/graphics/polygonUtils.js +1 -1
- package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
- package/views/3d/layers/support/FastSymbolUpdates.js +1 -1
- package/views/3d/layers/support/FeatureTile.js +1 -1
- package/views/3d/layers/support/FlowTileTree3DDebugger.js +5 -0
- package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
- package/views/3d/state/controllers/AnimationController.js +1 -1
- package/views/3d/support/DisplayQualityProfile.js +1 -1
- package/views/3d/support/LimitGraphicsMap.js +1 -1
- package/views/3d/support/buffer/InterleavedLayout.js +1 -1
- package/views/3d/support/buffer/glUtil.js +1 -1
- package/views/3d/terrain/BlendLayersTechnique.js +1 -1
- package/views/3d/terrain/PatchGeometryFactory.js +1 -1
- package/views/3d/terrain/PatchRenderData.js +1 -1
- package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
- package/views/3d/terrain/TerrainAttributes.js +1 -1
- package/views/3d/terrain/TerrainAttributesCache.js +1 -1
- package/views/3d/terrain/TileCompositor.js +1 -1
- package/views/3d/terrain/isTerrainSurfaceLayer.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
- package/views/3d/webgl-engine/core/FBOCacheFormats.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderModules/glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/RenderNodes.js +1 -1
- package/views/3d/webgl-engine/effects/ScreenSpaceGeometry.js +1 -1
- package/views/3d/webgl-engine/effects/bloom/BloomBlurTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/bloom/BloomCompositionTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +3 -3
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
- package/views/3d/webgl-engine/effects/haze/HazeCompositingTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightApplyTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightDownsampleTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightToSingleTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/ShadowHighlightTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/laserlines/LaserlinePathData.js +1 -1
- package/views/3d/webgl-engine/effects/laserlines/LaserlineTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
- package/views/3d/webgl-engine/effects/magnifier/MagnifierTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/smaa/SMAABlendWeightsTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/smaa/SMAABlurTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/smaa/SMAAEdgeDetectTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/ssao/SSAOBlurTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/ssao/SSAOTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/stars/Stars.js +1 -1
- package/views/3d/webgl-engine/effects/stars/StarsTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/GPUPointOcclusionQuery.js +1 -1
- package/views/3d/webgl-engine/lib/Geometry.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
- package/views/3d/webgl-engine/lib/Material.js +1 -1
- package/views/3d/webgl-engine/lib/Octree.js +1 -1
- package/views/3d/webgl-engine/lib/Program.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
- package/views/3d/webgl-engine/lib/RenderingContextOptions.js +5 -0
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/WebGLLayer.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/glUtil3D.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/InstanceOctree.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodComponentData.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodLevel.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodResources.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
- package/views/3d/webgl-engine/lib/octreeUtils.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultBufferWriter.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultTechniqueConfiguration.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/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.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/WaterTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/VaoCache.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
- package/views/3d/webgl-engine/shaders/AnimatedLine.glsl.js +5 -5
- package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDCompositingTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.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/ImageMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js +0 -1
- package/views/3d/webgl-engine/shaders/OverlayCompositingTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastClearTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
- package/views/3d/webgl-engine/statistics/RendererPerformanceInfo.js +1 -1
- package/views/3d/webgl.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/VideoView.js +1 -1
- package/views/View.js +1 -1
- package/views/View2D.js +1 -1
- package/views/ViewAnimation.js +1 -1
- package/views/draw/DrawAction.js +1 -1
- package/views/draw/support/ConnectedReshapeManager.js +1 -1
- package/views/interactive/editGeometry/EditGeometryOperations.js +1 -1
- package/views/interactive/snapping/Settings.js +1 -1
- package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +1 -1
- package/views/layers/CatalogDynamicGroupLayerView.d.ts +1 -1
- package/views/layers/CatalogDynamicGroupLayerView.js +1 -1
- package/views/layers/CatalogFootprintLayerView.d.ts +1 -1
- package/views/layers/CatalogFootprintLayerView.js +1 -1
- package/views/layers/CatalogLayerView.d.ts +1 -1
- package/views/layers/CatalogLayerView.js +1 -1
- package/views/layers/FeatureLayerView.d.ts +1 -1
- package/views/layers/FeatureLayerView.js +1 -1
- package/views/layers/LayerView.js +1 -1
- package/views/layers/OGCFeatureLayerView.d.ts +1 -1
- package/views/layers/OGCFeatureLayerView.js +1 -1
- package/views/layers/PointCloudLayerView.d.ts +1 -1
- package/views/layers/PointCloudLayerView.js +1 -1
- package/views/layers/RefreshableLayerView.js +1 -1
- package/views/layers/StreamLayerView.d.ts +1 -1
- package/views/layers/StreamLayerView.js +1 -1
- package/views/layers/WMSLayerView.js +1 -1
- package/views/layers/support/ClipArea.js +1 -1
- package/views/support/PixelHighlightOptions.js +1 -1
- package/views/support/Scheduler.js +1 -1
- package/views/support/TileTreeDebugger.js +1 -1
- package/views/support/imageReprojection.js +1 -1
- package/views/support/screenshotUtils.js +1 -1
- package/views/webgl/FramebufferObject.js +1 -1
- package/views/webgl/InstanceCounter.js +1 -1
- package/views/webgl/Parameters.js +1 -1
- package/views/webgl/Program.js +1 -1
- package/views/webgl/ProgramCache.js +1 -1
- package/views/webgl/ProgramTemplate.js +1 -1
- package/views/webgl/RenderingContext.js +1 -1
- package/views/webgl/RenderingContextOptions.js +5 -0
- package/views/webgl/ShaderBuilder.js +1 -1
- package/views/webgl/Texture.js +1 -1
- package/views/webgl/TextureDescriptor.js +1 -1
- package/views/webgl/Util.js +1 -1
- package/views/webgl/VertexArrayObject.js +1 -1
- package/views/webgl/VertexAttributeLayouts.js +5 -0
- package/views/webgl/VertexAttributeLocations.js +5 -0
- package/views/webgl/VertexBuffer.js +5 -0
- package/views/webgl/capabilities/Capabilities.js +1 -1
- package/views/webgl/enums.js +1 -1
- package/views/webgl/heatmapTextureUtils.js +1 -1
- package/views/webgl/rasterUtils.js +1 -1
- package/views/webgl/testAppleAmdDrawArrays.js +1 -1
- package/views/webgl/testFloatBufferBlend.js +1 -1
- package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
- package/views/webgl/textureUtils.js +1 -1
- package/webdoc/GeotriggersInfo.js +1 -1
- package/webdoc/IPSInfo.js +1 -1
- package/webdoc/RangeInfo.js +1 -1
- package/webdoc/Widgets.js +1 -1
- package/webdoc/applicationProperties/Search.js +1 -1
- package/webdoc/applicationProperties/SearchLayer.js +1 -1
- package/webdoc/applicationProperties/SearchLayerField.js +1 -1
- package/webdoc/applicationProperties/SearchTable.js +1 -1
- package/webdoc/applicationProperties/SearchTableField.js +1 -1
- package/webdoc/applicationProperties/Viewing.js +1 -1
- package/webdoc/geotriggersInfo/DeviceLocationFeed.js +1 -1
- package/webdoc/geotriggersInfo/ExpressionInfo.js +1 -1
- package/webdoc/geotriggersInfo/FeatureFenceParameters.js +1 -1
- package/webdoc/geotriggersInfo/FeatureFilter.js +1 -1
- package/webdoc/geotriggersInfo/FeatureLayerSource.js +1 -1
- package/webdoc/geotriggersInfo/Geotrigger.js +1 -1
- package/webdoc/geotriggersInfo/GeotriggerNotificationOptions.js +1 -1
- package/webdoc/ips/AppleIPSProperties.js +1 -1
- package/webdoc/ips/Configuration.js +1 -1
- package/webdoc/ips/GNSSProperties.js +1 -1
- package/webdoc/ips/PathSnappingProperties.js +1 -1
- package/webdoc/ips/PositioningService.js +1 -1
- package/webdoc/ips/SmoothingProperties.js +1 -1
- package/webdoc/support/SlideThumbnail.js +1 -1
- package/webdoc/widgets/FloorFilter.js +1 -1
- package/webdoc/widgets/Range.js +1 -1
- package/webdoc/widgets/TimeSlider.js +1 -1
- package/webmap/ApplicationProperties.js +1 -1
- package/webmap/Bookmark.js +1 -1
- package/webmap/background/ColorBackground.js +1 -1
- package/webscene/ApplicationProperties.js +1 -1
- package/webscene/Environment.js +1 -1
- package/webscene/InitialViewProperties.js +1 -1
- package/webscene/Presentation.js +1 -1
- package/webscene/Slide.js +1 -1
- package/webscene/SlideLegendInfo.js +1 -1
- package/webscene/SunLighting.js +1 -1
- package/webscene/TransportationNetwork.js +1 -1
- package/webscene/VirtualLighting.js +1 -1
- package/webscene/background/Background.js +1 -1
- package/webscene/support/Description.js +1 -1
- package/webscene/support/FeatureReference.js +1 -1
- package/webscene/support/FeatureReferenceId.js +1 -1
- package/webscene/support/LayerReference.js +1 -1
- package/webscene/support/SlideElements.js +1 -1
- package/webscene/support/SlideEnvironment.js +1 -1
- package/webscene/support/SlideGround.js +1 -1
- package/webscene/support/SlidePopupInfo.js +1 -1
- package/webscene/support/SlideVisibleLayer.js +1 -1
- package/webscene/support/Title.js +1 -1
- package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
- package/widgets/Compass/CompassViewModel.js +1 -1
- package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
- package/widgets/DirectionalPad/DirectionalPadViewModel.js +1 -1
- package/widgets/Directions/DirectionsViewModel.js +1 -1
- package/widgets/Directions/support/directionsUtils.js +1 -1
- package/widgets/Editor/UpdateFeaturesWorkflowData.js +1 -1
- package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
- package/widgets/FeatureForm/Format.js +1 -1
- package/widgets/FeatureTable/support/ColumnTemplateBase.js +1 -1
- package/widgets/FeatureTable/support/TableTemplate.js +1 -1
- package/widgets/Features/FeaturesViewModel.js +1 -1
- package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
- package/widgets/Home/HomeViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/TriangulatedMeasurementAdapter.js +1 -1
- package/widgets/PanoramicViewer/PanoramicZoomConditions.js +1 -1
- package/widgets/Print/CustomTemplate.js +1 -1
- package/widgets/Print/PrintViewModel.js +1 -1
- package/widgets/Search/SearchSource.js +1 -1
- package/widgets/Search/SearchViewModel.js +1 -1
- package/widgets/Widget.js +1 -1
- package/widgets/support/GeolocationPositioning.js +1 -1
- package/widgets/support/GoTo.d.ts +1 -1
- package/widgets/support/GoTo.js +1 -1
- package/assets/esri/core/workers/chunks/040a233ce6fbcc061cdb.js +0 -1
- package/assets/esri/core/workers/chunks/04798411698a48438bd3.js +0 -1
- package/assets/esri/core/workers/chunks/053086e0a043b00f1cca.js +0 -1
- package/assets/esri/core/workers/chunks/05d6ccca0cf38c012873.js +0 -1
- package/assets/esri/core/workers/chunks/0801f9dde41ec5f36cca.js +0 -1
- package/assets/esri/core/workers/chunks/08b4a4c9f3d6478df40a.js +0 -1
- package/assets/esri/core/workers/chunks/0906f977d50b1c5d6ed5.js +0 -1
- package/assets/esri/core/workers/chunks/307df66d00ba5f88780d.js +0 -1
- package/assets/esri/core/workers/chunks/47cdd5a6351e0db3b2e9.js +0 -346
- package/assets/esri/core/workers/chunks/50f56b417992eb30243e.js +0 -1
- package/assets/esri/core/workers/chunks/56aafa6f8862629070d8.js +0 -1
- package/assets/esri/core/workers/chunks/5c5678b15b59f9964bf0.js +0 -1
- package/assets/esri/core/workers/chunks/641ca71d7c1a07bde66a.js +0 -1
- package/assets/esri/core/workers/chunks/6b6ab092f578b20c8e56.js +0 -1
- package/assets/esri/core/workers/chunks/72e0fda211d980572292.js +0 -1
- package/assets/esri/core/workers/chunks/761dab8780495286ec4e.js +0 -1
- package/assets/esri/core/workers/chunks/860bd6d6f0c74ca301a4.js +0 -1
- package/assets/esri/core/workers/chunks/8d914ea9b18b32fd62b8.js +0 -1
- package/assets/esri/core/workers/chunks/97a56b058f8472fec1b2.js +0 -1
- package/assets/esri/core/workers/chunks/9a4d0006c118ae5b45c0.js +0 -1
- package/assets/esri/core/workers/chunks/a2bfb7b2f3f909dc5e59.js +0 -1
- package/assets/esri/core/workers/chunks/afb7e346779adefa4b05.js +0 -1
- package/assets/esri/core/workers/chunks/b2f2c1108fb7cbdd1a68.js +0 -1
- package/assets/esri/core/workers/chunks/b3466edccd553ae0a5d0.js +0 -990
- package/assets/esri/core/workers/chunks/b50841f898d4eb420b73.js +0 -1
- package/assets/esri/core/workers/chunks/b810e2f87c9c59ae04b1.js +0 -1
- package/assets/esri/core/workers/chunks/bf60d4da0dff1e14da8e.js +0 -1
- package/assets/esri/core/workers/chunks/c18ac2018aea6ba97eec.js +0 -1
- package/assets/esri/core/workers/chunks/c3d3e55abf01dae271fb.js +0 -1
- package/assets/esri/core/workers/chunks/d54e18e0f30734610f35.js +0 -1
- package/assets/esri/core/workers/chunks/d7ec905d87a19a1061e7.js +0 -1
- package/assets/esri/core/workers/chunks/d9f206e7ac1fad940be7.js +0 -2
- package/assets/esri/core/workers/chunks/debd832b6c2c0b2ea362.js +0 -1
- package/assets/esri/core/workers/chunks/dfa3ad5d750d7b143a06.js +0 -1
- package/assets/esri/core/workers/chunks/e01fa6389bd0b1ae51a5.js +0 -1
- package/assets/esri/core/workers/chunks/e7cbd1b5e4cb32851a5c.js +0 -1
- package/assets/esri/core/workers/chunks/ed1cd90e899dc9c15ee3.js +0 -1
- package/assets/esri/core/workers/chunks/ef3a11f7e047cff6183c.js +0 -1
- package/assets/esri/core/workers/chunks/f79c9b37f2842ed88a9b.js +0 -1
- package/assets/esri/core/workers/chunks/faa0cfee8c1de9b5b78c.js +0 -1
- package/assets/esri/core/workers/chunks/fe6fa1f2c2d54d41645e.js +0 -1
- package/views/2d/engine/webgl/DefaultVertexAttributeLayouts.js +0 -5
- package/views/2d/engine/webgl/shaderGraph/typed/TypedVertexArrayObject.js +0 -5
- package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +0 -5
- /package/assets/esri/core/workers/chunks/{d9f206e7ac1fad940be7.js.LICENSE.txt → 3386420c9ae891db5be7.js.LICENSE.txt} +0 -0
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{freeze as e,create as r,ZEROS as t}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{
|
|
5
|
+
import{freeze as e,create as r,ZEROS as t}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{newLayout as i}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as o}from"../core/shaderLibrary/ShaderOutput.js";import{PathVertexPositionPassParameters as s}from"../core/shaderLibrary/attributes/PathVertexPosition.glsl.js";import{ReloadableShaderModule as l}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as a,depthOnlyOutputBuffersOr as n}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as c}from"../effects/geometry/olidUtils.js";import{OITPolygonOffset as u,oitDepthTest as f,blending as m,getDrawBuffers as p}from"../lib/OrderIndependentTransparency.js";import{stencilBaseAllZerosParams as d,stencilWriteMaskOn as h}from"../lib/StencilUtils.js";import{advancedMRRFactors as b}from"./pbrUtils.js";import{P as g}from"../../../../chunks/Path.glsl.js";import{makePipelineState as j,defaultColorWrite as v,defaultDepthWrite as S,frontFaceCullingParams as y}from"../../../webgl/renderState.js";class P extends s{constructor(){super(...arguments),this.ambient=e(.2,.2,.2),this.diffuse=e(.8,.8,.8),this.opacity=1,this.origin=r(),this.modelTransformation=null,this.mrrFactors=b,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=t}}class V extends a{constructor(e,r){super(e,r,new l(g,()=>import("../shaders/Path.glsl.js")),x(r).locations)}initializePipeline(e){const{output:r,transparent:t,hasSlicePlane:i,doubleSidedMode:s,hasOccludees:l,oitPass:a}=e,c=0===a,b=2===a;return j({blending:o(r)&&t?m(a):null,culling:i&&!t&&0!==s?y:null,depthTest:{func:f(a)},depthWrite:c||b?S:null,drawBuffers:n(r,p(a,r)),colorWrite:v,stencilWrite:l?h:null,stencilTest:l?d:null,polygonOffset:c||b?null:u})}}function x(e){const r=i().vec3f("position").vec4f16("profileVertexAndNormal").vec2i16("profileRight",{glNormalized:!0}).vec2i16("profileUp",{glNormalized:!0});return e.hasVVSize&&r.f32("sizeFeatureAttribute"),e.hasVVColor&&r.f32("colorFeatureAttribute"),e.hasVVOpacity&&r.f32("opacityFeatureAttribute"),c()&&r.vec4u8("olidColor"),r.vec3f16("profileAuxData"),r.freeze()}export{P as PathPassParameters,V as PathTechnique,x as getLayout};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{parameter as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as o}from"./DefaultTechniqueConfiguration.js";class i extends o{constructor(e){super(),this.spherical=e,this.pbrMode=0,this.doubleSidedMode=0,this.emissionSource=0,this.receiveShadows=!1,this.receiveAmbientOcclusion=!1,this.
|
|
5
|
+
import{__decorate as e}from"tslib";import{parameter as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as o}from"./DefaultTechniqueConfiguration.js";class i extends o{constructor(e){super(),this.spherical=e,this.pbrMode=0,this.doubleSidedMode=0,this.emissionSource=0,this.receiveShadows=!1,this.receiveAmbientOcclusion=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.hasVVOpacity=!1,this.transparent=!1,this.hasOccludees=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.hasBloom=!1,this.snowCover=!1,this.textureCoordinateType=0,this.occlusionPass=!1,this.hasVVInstancing=!1,this.useCustomDTRExponentForWater=!1,this.useFillLights=!1,this.hasColorTexture=!1,this.hasMetallicRoughnessTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.draped=!1,this.overlayEnabled=!1}get discardInvisibleFragments(){return this.transparent}}e([t({count:7})],i.prototype,"pbrMode",void 0),e([t({count:3})],i.prototype,"doubleSidedMode",void 0),e([t({count:4})],i.prototype,"emissionSource",void 0),e([t()],i.prototype,"receiveShadows",void 0),e([t()],i.prototype,"receiveAmbientOcclusion",void 0),e([t()],i.prototype,"hasVVSize",void 0),e([t()],i.prototype,"hasVVColor",void 0),e([t()],i.prototype,"hasVVOpacity",void 0),e([t()],i.prototype,"transparent",void 0),e([t()],i.prototype,"hasOccludees",void 0),e([t()],i.prototype,"terrainDepthTest",void 0),e([t()],i.prototype,"cullAboveTerrain",void 0),e([t()],i.prototype,"hasBloom",void 0),e([t()],i.prototype,"snowCover",void 0);export{i as PathTechniqueConfiguration};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{fromValues as e}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{BufferViewMat3f as t,BufferViewVec4f as r}from"../../../../geometry/support/buffer/BufferView.js";import{
|
|
5
|
+
import{fromValues as e}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{BufferViewMat3f as t,BufferViewVec4f as r}from"../../../../geometry/support/buffer/BufferView.js";import{isHighlightOrOID as s,isColorOrColorEmission as i,isDepth as o,isColorEmissionHighlightOrOID as a}from"../core/shaderLibrary/ShaderOutput.js";import n from"../lib/GLMaterial.js";import{OITPolygonOffsetLimit as c}from"../lib/OrderIndependentTransparency.js";import{assert as f}from"../lib/Util.js";import{DefaultBufferWriter as l}from"./DefaultBufferWriter.js";import{TriangleMaterial as h}from"./TriangleMaterial.js";import{VisualVariablePassParameters as u}from"./VisualVariablePassParameters.js";import{writeAttributes as p,writeBufferVec4 as m}from"./internal/bufferWriterUtils.js";import{getLayout as g,PatternTechnique as d}from"../shaders/PatternTechnique.js";import{PatternTechniqueConfiguration as b}from"../shaders/PatternTechniqueConfiguration.js";import{alphaCutoff as y}from"../../../../webscene/support/AlphaCutoff.js";class _ extends h{constructor(e){super(e,x),this._configuration=new b,this.supportsEdges=!0,this.produces=new Map([[2,e=>s(e)],[4,e=>i(e)],[5,e=>o(e)],[17,e=>this.parameters.draped&&a(e)]])}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasVertexColors=this.parameters.hasVertexColors&&!this.parameters.vvColor,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.polygonOffset=this.parameters.polygonOffset,this._configuration.style=this.parameters.style,this._configuration.draped=this.parameters.draped,this._configuration.oitPass=t.oitPass,this._configuration.enableOffset=t.camera.relativeElevation<c,this._configuration.terrainDepthTest=t.terrainDepthTest&&i(e),this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration.hasVVColor=!!this.parameters.vvColor,this._configuration}get visible(){return this.parameters.color[3]>=y}createGLMaterial(e){return new j(e)}createBufferWriter(){return new v(g(this.parameters))}}class j extends n{beginSlot(e){return this.getTechnique(d,e)}}class v extends l{write(e,s,i,o,a,n){const c=p(i,o,this.layout,e,s,a,n);for(const l of this.layout.fields.keys()){const s=i.get(l),o=s?.indices;if(s&&o)switch(l){case"uvMapSpace":{f(4===s.size);const e=a.getField(l,r);e&&m(s,e,n);break}case"boundingRect":{f(9===s.size);const r=a.getField(l,t);r&&C(s,e,r,n);break}}}return c}}function C(e,t,r,s){const{data:i,indices:o}=e,a=t,n=r.typedBuffer,c=r.typedBufferStride,f=o.length;s*=c;for(let l=0;l<f;++l){const e=9*o[l],t=i[e],r=i[e+1],f=i[e+2];n[s]=a[0]*t+a[4]*r+a[8]*f+a[12],n[s+1]=a[1]*t+a[5]*r+a[9]*f+a[13],n[s+2]=a[2]*t+a[6]*r+a[10]*f+a[14];for(let o=3;o<9;++o)n[s+o]=i[e+o];s+=c}}class x extends u{constructor(){super(...arguments),this.color=e(1,1,1,1),this.hasVertexColors=!1,this.polygonOffset=!1,this.hasSlicePlane=!1,this.cullFace=0,this.hasOccludees=!1,this.style=2,this.draped=!0}}export{x as Parameters,_ as PatternMaterial};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../../../../core/Logger.js";import{clamp as e}from"../../../../core/mathUtils.js";import{createRenderScreenPointArray3 as r}from"../../../../core/screenUtils.js";import{secondsFromMilliseconds as i}from"../../../../core/time.js";import{copy as s}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{i as a,d as o,e as n,g as l,f as h,c as p,l as c,j as m,t as u}from"../../../../chunks/vec32.js";import{create as f}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{ONES as d}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{makeFloat16Array as g}from"../../../../geometry/support/float16.js";import{distance2 as v,fromPoints as b,create as _,closestLineSegmentPoint as S}from"../../../../geometry/support/lineSegment.js";import{fromPoints as y,create as P,signedDistance as j,getNormal as A}from"../../../../geometry/support/plane.js";import{newLayout as E}from"../../support/buffer/InterleavedLayout.js";import{isHighlightOrOID as w,isColorOrColorEmission as L,isDepth as z,isColorEmissionHighlightOIDOrDepth as T,is2DGeometryOutput as x}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as C}from"../effects/geometry/olidUtils.js";import O from"../lib/GLMaterial.js";import{Material as M}from"../lib/Material.js";import{isTranslationMatrix as F}from"../lib/Util.js";import{VisualVariablePassParameters as R}from"./VisualVariablePassParameters.js";import{writeDeltaF16Vector as B}from"./internal/bufferWriterUtils.js";import{r as N}from"../../../../chunks/RibbonLine.glsl.js";import{vertexAttributeLocations as k,RibbonLineTechnique as D}from"../shaders/RibbonLineTechnique.js";import{RibbonLineTechniqueConfiguration as U}from"../shaders/RibbonLineTechniqueConfiguration.js";import{alphaCutoff as V}from"../../../../webscene/support/AlphaCutoff.js";class W extends M{constructor(t){super(t,Y),this._configuration=new U,this.vertexAttributeLocations=k,this.produces=new Map([[2,t=>w(t)||L(t)&&8===this.parameters.renderOccluded],[3,t=>z(t)],[9,t=>T(t)&&8===this.parameters.renderOccluded],[10,t=>T(t)&&8===this.parameters.renderOccluded],[4,t=>L(t)&&this.parameters.writeDepth&&8!==this.parameters.renderOccluded],[7,t=>L(t)&&!this.parameters.writeDepth&&8!==this.parameters.renderOccluded],[17,t=>x(t)]])}getConfiguration(t,e){super.getConfiguration(t,e,this._configuration),this._configuration.oitPass=e.oitPass,this._configuration.draped=17===e.slot;const r=null!=this.parameters.stipplePattern&&8!==t;return this._configuration.stippleEnabled=r,this._configuration.stippleOffColorEnabled=r&&null!=this.parameters.stippleOffColor,this._configuration.stipplePreferContinuous=r&&this.parameters.stipplePreferContinuous,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.roundJoins="round"===this.parameters.join,this._configuration.capType=this.parameters.cap,this._configuration.applyMarkerOffset=null!=this.parameters.markerParameters&&I(this.parameters.markerParameters),this._configuration.hasPolygonOffset=this.parameters.hasPolygonOffset,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.vvSize=!!this.parameters.vvSize,this._configuration.vvColor=!!this.parameters.vvColor,this._configuration.vvOpacity=!!this.parameters.vvOpacity,this._configuration.innerColorEnabled=this.parameters.innerWidth>0&&null!=this.parameters.innerColor,this._configuration.falloffEnabled=this.parameters.falloff>0,this._configuration.hasOccludees=e.hasOccludees,this._configuration.occluder=8===this.parameters.renderOccluded,this._configuration.terrainDepthTest=e.terrainDepthTest&&L(t),this._configuration.cullAboveTerrain=e.cullAboveTerrain,this._configuration.wireframe=this.parameters.wireframe,this._configuration.animation=this.parameters.animation,this._configuration.emissionSource=this.hasEmissions?1:0,this._configuration}get visible(){return this.parameters.color[3]>=V||null!=this.parameters.stipplePattern&&(this.parameters.stippleOffColor?.[3]??0)>V}setParameters(t,e){t.animation=this.parameters.animation,super.setParameters(t,e)}intersectDraped({attributes:t,screenToWorldRatio:r},i,s,a,o){if(!i.options.selectionMode)return;const n=t.get("size");let l=this.parameters.width;if(this.parameters.vvSize){const r=t.get("sizeFeatureAttribute").data[0];Number.isNaN(r)?l*=this.parameters.vvSize.fallback[0]:l*=e(this.parameters.vvSize.offset[0]+r*this.parameters.vvSize.factor[0],this.parameters.vvSize.minSize[0],this.parameters.vvSize.maxSize[0])}else n&&(l*=n.data[0]);const h=s[0],p=s[1],c=(l/2+4)*r;let m=Number.MAX_VALUE,u=0;const f=t.get("position").data,d=G(this.parameters,t)?f.length-2:f.length-5;for(let g=0;g<d;g+=3){const t=f[g],r=f[g+1],i=(g+3)%f.length,s=h-t,a=p-r,o=f[i]-t,n=f[i+1]-r,l=e((o*s+n*a)/(o*o+n*n),0,1),c=o*l-s,d=n*l-a,v=c*c+d*d;v<m&&(m=v,u=g/3)}m<c*c&&a(o.distance,o.normal,u)}intersect(r,i,u,f,d,g){const{options:_,camera:P,rayBegin:E,rayEnd:w}=u;if(!_.selectionMode||!r.visible||!P)return;if(!F(i))return void t.getLogger("esri.views.3d.webgl-engine.materials.RibbonLineMaterial").error("intersection assumes a translation-only matrix");const L=r.attributes,z=L.get("position").data;let T=this.parameters.width;if(this.parameters.vvSize){const t=L.get("sizeFeatureAttribute").data[0];Number.isNaN(t)||(T*=e(this.parameters.vvSize.offset[0]+t*this.parameters.vvSize.factor[0],this.parameters.vvSize.minSize[0],this.parameters.vvSize.maxSize[0]))}else L.has("size")&&(T*=L.get("size").data[0]);const x=$;s(x,u.point);const C=T*P.pixelRatio/2+4*P.pixelRatio;a(pt[0],x[0]-C,x[1]+C,0),a(pt[1],x[0]+C,x[1]+C,0),a(pt[2],x[0]+C,x[1]-C,0),a(pt[3],x[0]-C,x[1]-C,0);for(let t=0;t<4;t++)if(!P.unprojectFromRenderScreen(pt[t],ct[t]))return;y(P.eye,ct[0],ct[1],mt),y(P.eye,ct[1],ct[2],ut),y(P.eye,ct[2],ct[3],ft),y(P.eye,ct[3],ct[0],dt);let O=Number.MAX_VALUE,M=0;const R=G(this.parameters,L)?z.length-2:z.length-5;for(let t=0;t<R;t+=3){H[0]=z[t]+i[12],H[1]=z[t+1]+i[13],H[2]=z[t+2]+i[14];const e=(t+3)%z.length;if(K[0]=z[e]+i[12],K[1]=z[e+1]+i[13],K[2]=z[e+2]+i[14],j(mt,H)<0&&j(mt,K)<0||j(ut,H)<0&&j(ut,K)<0||j(ft,H)<0&&j(ft,K)<0||j(dt,H)<0&&j(dt,K)<0)continue;if(P.projectToRenderScreen(H,tt),P.projectToRenderScreen(K,et),tt[2]<0&&et[2]>0){o(Q,H,K);const t=P.frustum,e=-j(t[4],H)/n(Q,A(t[4]));l(Q,Q,e),h(H,H,Q),P.projectToRenderScreen(H,tt)}else if(tt[2]>0&&et[2]<0){o(Q,K,H);const t=P.frustum,e=-j(t[4],K)/n(Q,A(t[4]));l(Q,Q,e),h(K,K,Q),P.projectToRenderScreen(K,et)}else if(tt[2]<0&&et[2]<0)continue;tt[2]=0,et[2]=0;const r=v(b(tt,et,st),x);r<O&&(O=r,p(rt,H),p(it,K),M=t/3)}if(O<C*C){let t=Number.MAX_VALUE;if(S(b(rt,it,st),b(E,w,at),Z)){o(Z,Z,E);const e=c(Z);l(Z,Z,1/e),t=e/m(E,w)}g(t,Z,M)}}get hasEmissions(){return this.parameters.emissiveStrength>0}get _layout(){const t=E().vec3f("position").vec4f16("previousDelta").vec4f16("nextDelta").f32("u0").vec2f16("lineParameters");return this.parameters.vvColor?t.f32("colorFeatureAttribute"):t.vec4u8("color",{glNormalized:!0}),this.parameters.vvSize?t.f32("sizeFeatureAttribute"):t.f32("size"),this.parameters.vvOpacity&&t.f32("opacityFeatureAttribute"),C()&&t.vec4u8("objectAndLayerIdColor"),this.parameters.hasAnimation&&t.vec3f16("timeStamps"),t}createBufferWriter(){return new q(this._layout,this.parameters)}createGLMaterial(t){return new J(t)}validateParameters(t){"miter"!==t.join&&(t.miterLimit=0),null!=t.markerParameters&&(t.markerScale=t.markerParameters.width/t.width)}update(t){const{hasAnimation:e,animationSpeed:r}=this.parameters;return!!e&&(this.setParameters({timeElapsed:i(t.time)*r},!1),t.dt>0)}}class J extends O{constructor(){super(...arguments),this._stipplePattern=null}dispose(){super.dispose(),this._stippleTextures?.release(this._stipplePattern),this._stipplePattern=null}beginSlot(t){const e=this._material.parameters.stipplePattern;return this._stipplePattern!==e&&(this._material.setParameters({stippleTexture:this._stippleTextures.swap(e,this._stipplePattern)}),this._stipplePattern=e),this.getTechnique(D,t)}}class Y extends R{constructor(){super(...arguments),this.width=0,this.color=d,this.join="miter",this.cap=0,this.miterLimit=5,this.writeDepth=!0,this.hasPolygonOffset=!1,this.stippleTexture=null,this.stipplePreferContinuous=!0,this.markerParameters=null,this.markerScale=1,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.isClosed=!1,this.falloff=0,this.innerWidth=0,this.wireframe=!1,this.timeElapsed=0,this.animation=0,this.animationSpeed=1,this.trailLength=1,this.emissiveStrength=0}get transparent(){return this.color[3]<1||this.hasAnimation||null!=this.stipplePattern&&(this.stippleOffColor?.[3]??0)<1}get hasAnimation(){return 0!==this.animation}}class q{constructor(t,e){this.vertexBufferLayout=t,this._parameters=e;const r=e.stipplePattern?1:0;switch(this._parameters.join){case"miter":case"bevel":this.numJoinSubdivisions=r;break;case"round":this.numJoinSubdivisions=N+r}}_isClosed(t){return G(this._parameters,t)}allocate(t){return this.vertexBufferLayout.createBuffer(t)}elementCount(t){const e=2,r=t.get("position").indices.length/2+1,i=this._isClosed(t);let s=i?2:2*e;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(t,e,r,i,s,o){const n=r.get("position"),l=n.indices,h=n.data.length/3,c=r.get("distanceToStart")?.data;l&&l.length!==2*(h-1)&&console.warn("RibbonLineMaterial does not support indices");const f=(this.vertexBufferLayout.fields.has("sizeFeatureAttribute")?r.get("sizeFeatureAttribute")?.data[0]:r.get("size")?.data[0])??1;let d=[1,1,1,1],v=0;const b=this.vertexBufferLayout.fields.has("colorFeatureAttribute");b?v=r.get("colorFeatureAttribute").data[0]:r.has("color")&&(d=r.get("color").data);const _=r.get("timeStamps")?.data,S=_&&this.vertexBufferLayout.fields.has("timeStamps"),y=this.vertexBufferLayout.fields.has("opacityFeatureAttribute"),P=y?r.get("opacityFeatureAttribute").data[0]:0,j=new Float32Array(s.buffer),A=g(s.buffer),E=new Uint8Array(s.buffer),w=this.vertexBufferLayout.stride/4;let L=o*w;const z=L;let T=0;const x=c?(t,e,r)=>T=c[r]:(t,e,r)=>T+=m(t,e),O=j.BYTES_PER_ELEMENT/A.BYTES_PER_ELEMENT,M=4/O,F=(t,e,r,s,a,o,n,l)=>{j[L++]=e[0],j[L++]=e[1],j[L++]=e[2],B(t,e,A,L*O),L+=M,B(r,e,A,L*O),L+=M,j[L++]=l;let h=L*O;if(A[h++]=a,A[h++]=o,L=Math.ceil(h/O),b)j[L]=v;else{const t=Math.min(4*n,d.length-4),e=4*L;E[e]=255*d[t],E[e+1]=255*d[t+1],E[e+2]=255*d[t+2],E[e+3]=255*d[t+3]}if(L++,j[L++]=f,y&&(j[L++]=P),C()){let t=4*L;i?(E[t++]=i[0],E[t++]=i[1],E[t++]=i[2],E[t++]=i[3]):(E[t++]=0,E[t++]=0,E[t++]=0,E[t++]=0),L=Math.ceil(.25*t)}S&&(h=L*O,A[h++]=s[0],A[h++]=s[1],A[h++]=s[2],L=Math.ceil(h/O))};L+=w,a(nt,n.data[0],n.data[1],n.data[2]),S&&a(ht,_[0],_[1],_[2]),t&&u(nt,nt,t);const R=this._isClosed(r);if(R){const e=n.data.length-3;a(ot,n.data[e],n.data[e+1],n.data[e+2]),t&&u(ot,ot,t)}else a(lt,n.data[3],n.data[4],n.data[5]),t&&u(lt,lt,t),F(nt,nt,lt,ht,1,-4,0,0),F(nt,nt,lt,ht,1,4,0,0),p(ot,nt),p(nt,lt),S&&a(ht,_[3],_[4],_[5]);const N=R?0:1,k=R?h:h-1;for(let m=N;m<k;m++){const e=(m+1)%h*3;a(lt,n.data[e],n.data[e+1],n.data[e+2]),t&&u(lt,lt,t),x(ot,nt,m),F(ot,nt,lt,ht,0,-1,m,T),F(ot,nt,lt,ht,0,1,m,T);const r=this.numJoinSubdivisions;for(let t=0;t<r;++t){const e=(t+1)/(r+1);F(ot,nt,lt,ht,e,-1,m,T),F(ot,nt,lt,ht,e,1,m,T)}F(ot,nt,lt,ht,1,-2,m,T),F(ot,nt,lt,ht,1,2,m,T),p(ot,nt),p(nt,lt),S&&a(ht,_[e],_[e+1],_[e+2])}R?(a(lt,n.data[3],n.data[4],n.data[5]),t&&u(lt,lt,t),T=x(ot,nt,k),F(ot,nt,lt,ht,0,-1,N,T),F(ot,nt,lt,ht,0,1,N,T)):(T=x(ot,nt,k),F(ot,nt,nt,ht,0,-5,k,T),F(ot,nt,nt,ht,0,5,k,T)),X(j,z+w,j,z,w);return L=X(j,L-w,j,L,w),this._parameters.wireframe&&this._addWireframeVertices(s,z,L,w),null}_addWireframeVertices(t,e,r,i){const s=new Float32Array(t.buffer,r*Float32Array.BYTES_PER_ELEMENT),a=new Float32Array(t.buffer,e*Float32Array.BYTES_PER_ELEMENT,r-e);let o=0;const n=t=>o=X(a,t,s,o,i);for(let l=0;l<a.length-1;l+=2*i)n(l),n(l+2*i),n(l+1*i),n(l+2*i),n(l+1*i),n(l+3*i)}}function X(t,e,r,i,s){for(let a=0;a<s;a++)r[i++]=t[e++];return i}function G(t,e){if(!t.isClosed)return!1;return e.get("position").indices.length>2}function I(t){return 1===t.anchor&&t.hideOnShortSegments&&"begin-end"===t.placement&&t.worldSpace}const H=f(),K=f(),Q=f(),Z=f(),$=f(),tt=r(),et=r(),rt=f(),it=f(),st=_(),at=_(),ot=f(),nt=f(),lt=f(),ht=f(),pt=[r(),r(),r(),r()],ct=[f(),f(),f(),f()],mt=P(),ut=P(),ft=P(),dt=P();export{Y as Parameters,W as RibbonLineMaterial};
|
|
5
|
+
import t from"../../../../core/Logger.js";import{clamp as e}from"../../../../core/mathUtils.js";import{createRenderScreenPointArray3 as i}from"../../../../core/screenUtils.js";import{secondsFromMilliseconds as r}from"../../../../core/time.js";import{copy as s}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{i as a,d as o,e as n,g as l,f as h,c as p,l as m,j as c,t as u}from"../../../../chunks/vec32.js";import{create as f}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{ONES as d}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{makeFloat16Array as g}from"../../../../geometry/support/float16.js";import{distance2 as b,fromPoints as _,create as S,closestLineSegmentPoint as v}from"../../../../geometry/support/lineSegment.js";import{fromPoints as P,create as y,signedDistance as j,getNormal as E}from"../../../../geometry/support/plane.js";import{isHighlightOrOID as w,isColorOrColorEmission as A,isDepth as T,isColorEmissionHighlightOIDOrDepth as z,is2DGeometryOutput as C}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as L}from"../effects/geometry/olidUtils.js";import M from"../lib/GLMaterial.js";import{Material as O}from"../lib/Material.js";import{isTranslationMatrix as V}from"../lib/Util.js";import{VisualVariablePassParameters as R}from"./VisualVariablePassParameters.js";import{writeDeltaF16Vector as x}from"./internal/bufferWriterUtils.js";import{r as F}from"../../../../chunks/RibbonLine.glsl.js";import{getLayout as N,RibbonLineTechnique as k}from"../shaders/RibbonLineTechnique.js";import{RibbonLineTechniqueConfiguration as U}from"../shaders/RibbonLineTechniqueConfiguration.js";import{alphaCutoff as D}from"../../../../webscene/support/AlphaCutoff.js";class B extends O{constructor(t){super(t,J),this._configuration=new U,this.produces=new Map([[2,t=>w(t)||A(t)&&8===this.parameters.renderOccluded],[3,t=>T(t)],[9,t=>z(t)&&8===this.parameters.renderOccluded],[10,t=>z(t)&&8===this.parameters.renderOccluded],[4,t=>A(t)&&this.parameters.writeDepth&&8!==this.parameters.renderOccluded],[7,t=>A(t)&&!this.parameters.writeDepth&&8!==this.parameters.renderOccluded],[17,t=>C(t)]])}getConfiguration(t,e){super.getConfiguration(t,e,this._configuration),this._configuration.oitPass=e.oitPass,this._configuration.draped=17===e.slot;const i=null!=this.parameters.stipplePattern&&8!==t;return this._configuration.stippleEnabled=i,this._configuration.stippleOffColorEnabled=i&&null!=this.parameters.stippleOffColor,this._configuration.stipplePreferContinuous=i&&this.parameters.stipplePreferContinuous,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.roundJoins="round"===this.parameters.join,this._configuration.capType=this.parameters.cap,this._configuration.applyMarkerOffset=null!=this.parameters.markerParameters&&G(this.parameters.markerParameters),this._configuration.hasPolygonOffset=this.parameters.hasPolygonOffset,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasVVSize=this.parameters.hasVVSize,this._configuration.hasVVColor=this.parameters.hasVVColor,this._configuration.hasVVOpacity=this.parameters.hasVVOpacity,this._configuration.innerColorEnabled=this.parameters.innerWidth>0&&null!=this.parameters.innerColor,this._configuration.falloffEnabled=this.parameters.falloff>0,this._configuration.hasOccludees=e.hasOccludees,this._configuration.occluder=8===this.parameters.renderOccluded,this._configuration.terrainDepthTest=e.terrainDepthTest&&A(t),this._configuration.cullAboveTerrain=e.cullAboveTerrain,this._configuration.wireframe=this.parameters.wireframe,this._configuration.animation=this.parameters.animation,this._configuration.emissionSource=this.hasEmissions?1:0,this._configuration}get visible(){return this.parameters.color[3]>=D||null!=this.parameters.stipplePattern&&(this.parameters.stippleOffColor?.[3]??0)>D}setParameters(t,e){t.animation=this.parameters.animation,super.setParameters(t,e)}intersectDraped({attributes:t,screenToWorldRatio:i},r,s,a,o){if(!r.options.selectionMode)return;const n=t.get("size");let l=this.parameters.width;if(this.parameters.vvSize){const i=t.get("sizeFeatureAttribute").data[0];Number.isNaN(i)?l*=this.parameters.vvSize.fallback[0]:l*=e(this.parameters.vvSize.offset[0]+i*this.parameters.vvSize.factor[0],this.parameters.vvSize.minSize[0],this.parameters.vvSize.maxSize[0])}else n&&(l*=n.data[0]);const h=s[0],p=s[1],m=(l/2+4)*i;let c=Number.MAX_VALUE,u=0;const f=t.get("position").data,d=X(this.parameters,t)?f.length-2:f.length-5;for(let g=0;g<d;g+=3){const t=f[g],i=f[g+1],r=(g+3)%f.length,s=h-t,a=p-i,o=f[r]-t,n=f[r+1]-i,l=e((o*s+n*a)/(o*o+n*n),0,1),m=o*l-s,d=n*l-a,b=m*m+d*d;b<c&&(c=b,u=g/3)}c<m*m&&a(o.distance,o.normal,u)}intersect(i,r,u,f,d,g){const{options:S,camera:y,rayBegin:w,rayEnd:A}=u;if(!S.selectionMode||!i.visible||!y)return;if(!V(r))return void t.getLogger("esri.views.3d.webgl-engine.materials.RibbonLineMaterial").error("intersection assumes a translation-only matrix");const T=i.attributes,z=T.get("position").data;let C=this.parameters.width;if(this.parameters.vvSize){const t=T.get("sizeFeatureAttribute").data[0];Number.isNaN(t)||(C*=e(this.parameters.vvSize.offset[0]+t*this.parameters.vvSize.factor[0],this.parameters.vvSize.minSize[0],this.parameters.vvSize.maxSize[0]))}else T.has("size")&&(C*=T.get("size").data[0]);const L=Z;s(L,u.point);const M=C*y.pixelRatio/2+4*y.pixelRatio;a(ht[0],L[0]-M,L[1]+M,0),a(ht[1],L[0]+M,L[1]+M,0),a(ht[2],L[0]+M,L[1]-M,0),a(ht[3],L[0]-M,L[1]-M,0);for(let t=0;t<4;t++)if(!y.unprojectFromRenderScreen(ht[t],pt[t]))return;P(y.eye,pt[0],pt[1],mt),P(y.eye,pt[1],pt[2],ct),P(y.eye,pt[2],pt[3],ut),P(y.eye,pt[3],pt[0],ft);let O=Number.MAX_VALUE,R=0;const x=X(this.parameters,T)?z.length-2:z.length-5;for(let t=0;t<x;t+=3){H[0]=z[t]+r[12],H[1]=z[t+1]+r[13],H[2]=z[t+2]+r[14];const e=(t+3)%z.length;if(I[0]=z[e]+r[12],I[1]=z[e+1]+r[13],I[2]=z[e+2]+r[14],j(mt,H)<0&&j(mt,I)<0||j(ct,H)<0&&j(ct,I)<0||j(ut,H)<0&&j(ut,I)<0||j(ft,H)<0&&j(ft,I)<0)continue;if(y.projectToRenderScreen(H,$),y.projectToRenderScreen(I,tt),$[2]<0&&tt[2]>0){o(K,H,I);const t=y.frustum,e=-j(t[4],H)/n(K,E(t[4]));l(K,K,e),h(H,H,K),y.projectToRenderScreen(H,$)}else if($[2]>0&&tt[2]<0){o(K,I,H);const t=y.frustum,e=-j(t[4],I)/n(K,E(t[4]));l(K,K,e),h(I,I,K),y.projectToRenderScreen(I,tt)}else if($[2]<0&&tt[2]<0)continue;$[2]=0,tt[2]=0;const i=b(_($,tt,rt),L);i<O&&(O=i,p(et,H),p(it,I),R=t/3)}if(O<M*M){let t=Number.MAX_VALUE;if(v(_(et,it,rt),_(w,A,st),Q)){o(Q,Q,w);const e=m(Q);l(Q,Q,1/e),t=e/c(w,A)}g(t,Q,R)}}get hasEmissions(){return this.parameters.emissiveStrength>0}createBufferWriter(){return new Y(N(this.parameters),this.parameters)}createGLMaterial(t){return new W(t)}validateParameters(t){"miter"!==t.join&&(t.miterLimit=0),null!=t.markerParameters&&(t.markerScale=t.markerParameters.width/t.width)}update(t){const{hasAnimation:e,animationSpeed:i}=this.parameters;return!!e&&(this.setParameters({timeElapsed:r(t.time)*i},!1),t.dt>0)}}class W extends M{constructor(){super(...arguments),this._stipplePattern=null}dispose(){super.dispose(),this._stippleTextures?.release(this._stipplePattern),this._stipplePattern=null}beginSlot(t){const e=this._material.parameters.stipplePattern;return this._stipplePattern!==e&&(this._material.setParameters({stippleTexture:this._stippleTextures.swap(e,this._stipplePattern)}),this._stipplePattern=e),this.getTechnique(k,t)}}class J extends R{constructor(){super(...arguments),this.width=0,this.color=d,this.join="miter",this.cap=0,this.miterLimit=5,this.writeDepth=!0,this.hasPolygonOffset=!1,this.stippleTexture=null,this.stipplePreferContinuous=!0,this.markerParameters=null,this.markerScale=1,this.hasSlicePlane=!1,this.vvFastUpdate=!1,this.isClosed=!1,this.falloff=0,this.innerWidth=0,this.wireframe=!1,this.timeElapsed=0,this.animation=0,this.animationSpeed=1,this.trailLength=1,this.emissiveStrength=0}get transparent(){return this.color[3]<1||this.hasAnimation||null!=this.stipplePattern&&(this.stippleOffColor?.[3]??0)<1}get hasAnimation(){return 0!==this.animation}}class Y{constructor(t,e){this.layout=t,this._parameters=e;const i=e.stipplePattern?1:0;switch(this._parameters.join){case"miter":case"bevel":this.numJoinSubdivisions=i;break;case"round":this.numJoinSubdivisions=F+i}}_isClosed(t){return X(this._parameters,t)}allocate(t){return this.layout.createBuffer(t)}elementCount(t){const e=2,i=t.get("position").indices.length/2+1,r=this._isClosed(t);let s=r?2:2*e;return s+=((r?i:i-1)-(r?0:1))*(2*this.numJoinSubdivisions+4),s+=2,this._parameters.wireframe&&(s=2+4*(s-2)),s}write(t,e,i,r,s,o){const n=i.get("position"),l=n.indices,h=n.data.length/3,m=i.get("distanceToStart")?.data;l&&l.length!==2*(h-1)&&console.warn("RibbonLineMaterial does not support indices");const f=(this.layout.fields.has("sizeFeatureAttribute")?i.get("sizeFeatureAttribute")?.data[0]:i.get("size")?.data[0])??1;let d=[1,1,1,1],b=0;const _=this.layout.fields.has("colorFeatureAttribute");_?b=i.get("colorFeatureAttribute").data[0]:i.has("color")&&(d=i.get("color").data);const S=i.get("timeStamps")?.data,v=S&&this.layout.fields.has("timeStamps"),P=this.layout.fields.has("opacityFeatureAttribute"),y=P?i.get("opacityFeatureAttribute").data[0]:0,j=new Float32Array(s.buffer),E=g(s.buffer),w=new Uint8Array(s.buffer),A=this.layout.stride/4;let T=o*A;const z=T;let C=0;const M=m?(t,e,i)=>C=m[i]:(t,e,i)=>C+=c(t,e),O=j.BYTES_PER_ELEMENT/E.BYTES_PER_ELEMENT,V=4/O,R=(t,e,i,s,a,o,n,l)=>{j[T++]=e[0],j[T++]=e[1],j[T++]=e[2],x(t,e,E,T*O),T+=V,x(i,e,E,T*O),T+=V,j[T++]=l;let h=T*O;if(E[h++]=a,E[h++]=o,T=Math.ceil(h/O),_)j[T]=b;else{const t=Math.min(4*n,d.length-4),e=4*T;w[e]=255*d[t],w[e+1]=255*d[t+1],w[e+2]=255*d[t+2],w[e+3]=255*d[t+3]}if(T++,j[T++]=f,P&&(j[T++]=y),L()){let t=4*T;r?(w[t++]=r[0],w[t++]=r[1],w[t++]=r[2],w[t++]=r[3]):(w[t++]=0,w[t++]=0,w[t++]=0,w[t++]=0),T=Math.ceil(.25*t)}v&&(h=T*O,E[h++]=s[0],E[h++]=s[1],E[h++]=s[2],T=Math.ceil(h/O))};T+=A,a(ot,n.data[0],n.data[1],n.data[2]),v&&a(lt,S[0],S[1],S[2]),t&&u(ot,ot,t);const F=this._isClosed(i);if(F){const e=n.data.length-3;a(at,n.data[e],n.data[e+1],n.data[e+2]),t&&u(at,at,t)}else a(nt,n.data[3],n.data[4],n.data[5]),t&&u(nt,nt,t),R(ot,ot,nt,lt,1,-4,0,0),R(ot,ot,nt,lt,1,4,0,0),p(at,ot),p(ot,nt),v&&a(lt,S[3],S[4],S[5]);const N=F?0:1,k=F?h:h-1;for(let c=N;c<k;c++){const e=(c+1)%h*3;a(nt,n.data[e],n.data[e+1],n.data[e+2]),t&&u(nt,nt,t),M(at,ot,c),R(at,ot,nt,lt,0,-1,c,C),R(at,ot,nt,lt,0,1,c,C);const i=this.numJoinSubdivisions;for(let t=0;t<i;++t){const e=(t+1)/(i+1);R(at,ot,nt,lt,e,-1,c,C),R(at,ot,nt,lt,e,1,c,C)}R(at,ot,nt,lt,1,-2,c,C),R(at,ot,nt,lt,1,2,c,C),p(at,ot),p(ot,nt),v&&a(lt,S[e],S[e+1],S[e+2])}F?(a(nt,n.data[3],n.data[4],n.data[5]),t&&u(nt,nt,t),C=M(at,ot,k),R(at,ot,nt,lt,0,-1,N,C),R(at,ot,nt,lt,0,1,N,C)):(C=M(at,ot,k),R(at,ot,ot,lt,0,-5,k,C),R(at,ot,ot,lt,0,5,k,C)),q(j,z+A,j,z,A);return T=q(j,T-A,j,T,A),this._parameters.wireframe&&this._addWireframeVertices(s,z,T,A),null}_addWireframeVertices(t,e,i,r){const s=new Float32Array(t.buffer,i*Float32Array.BYTES_PER_ELEMENT),a=new Float32Array(t.buffer,e*Float32Array.BYTES_PER_ELEMENT,i-e);let o=0;const n=t=>o=q(a,t,s,o,r);for(let l=0;l<a.length-1;l+=2*r)n(l),n(l+2*r),n(l+1*r),n(l+2*r),n(l+1*r),n(l+3*r)}}function q(t,e,i,r,s){for(let a=0;a<s;a++)i[r++]=t[e++];return r}function X(t,e){if(!t.isClosed)return!1;return e.get("position").indices.length>2}function G(t){return 1===t.anchor&&t.hideOnShortSegments&&"begin-end"===t.placement&&t.worldSpace}const H=f(),I=f(),K=f(),Q=f(),Z=f(),$=i(),tt=i(),et=f(),it=f(),rt=S(),st=S(),at=f(),ot=f(),nt=f(),lt=f(),ht=[i(),i(),i(),i()],pt=[f(),f(),f(),f()],mt=y(),ct=y(),ut=y(),ft=y();export{J as Parameters,B 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.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{n as e,i as t,g as r,f as
|
|
5
|
+
import{n as e,i as t,g as r,f as s}from"../../../../chunks/vec32.js";import{fromValues as i,create as a}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as n}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{center as o,scale as p}from"../../../../geometry/support/aaBoundingBox.js";import{BufferViewVec3f as c}from"../../../../geometry/support/buffer/BufferView.js";import{isColorOrOID as h,isColorOrColorEmission as l}from"../core/shaderLibrary/ShaderOutput.js";import u from"../lib/GLMaterial.js";import{Material as f,MaterialParameters as m}from"../lib/Material.js";import{intersectTriangleGeometry as g}from"../lib/RayIntersections.js";import{assert as d}from"../lib/Util.js";import{writeAttributes as b,writePosition as _}from"./internal/bufferWriterUtils.js";import{getLayout as S,ShadedColorMaterialTechnique as j}from"../shaders/ShadedColorMaterialTechnique.js";import{ShadedColorMaterialTechniqueConfiguration as w}from"../shaders/ShadedColorMaterialTechniqueConfiguration.js";import{alphaCutoff as T}from"../../../../webscene/support/AlphaCutoff.js";class x extends f{constructor(e){super(e,D),this._configuration=new w,this.supportsEdges=!0,this._pp0=i(0,0,1),this._pp1=i(0,0,0),this.produces=new Map([[2,e=>8===e||h(e)&&!this.parameters.transparent],[4,e=>h(e)&&this.parameters.transparent&&this.parameters.writeDepth],[7,e=>h(e)&&this.parameters.transparent&&!this.parameters.writeDepth]])}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this.parameters.transparent,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.screenSizeEnabled=this.parameters.screenSizeEnabled,this._configuration.shadingEnabled=this.parameters.shadingEnabled,this._configuration.oitPass=t.oitPass,this._configuration.terrainDepthTest=t.terrainDepthTest&&l(e),this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration}get visible(){return this.parameters.color[3]>=T}intersect(e,t,r,s,i,a){this._intersect(e,r,s,i,a)}intersectDraped(e,t,r,s){return this._pp0[0]=this._pp1[0]=r[0],this._pp0[1]=this._pp1[1]=r[1],this._intersect(e,t,this._pp0,this._pp1,s)}_intersect(e,i,a,n,c){if(this.parameters.screenSizeEnabled){const h=e.attributes.get("offset"),l={applyToVertex:(e,a,n,o)=>{const p=t(E,h.data[3*o],h.data[3*o+1],h.data[3*o+2]),c=t(M,e,a,n);return r(p,p,this.parameters.screenSizeScale*(i.camera?.computeScreenPixelSizeAt(p)??1)),s(c,c,p),[c[0],c[1],c[2]]},applyToAabb:e=>{const t=o(e,E);return p(e,this.parameters.screenSizeScale*(i.camera?.computeScreenPixelSizeAt(t)??1))}};g(e,i,a,n,l,c)}else g(e,i,a,n,void 0,c)}createGLMaterial(e){return new z(e)}createBufferWriter(){return new y(S(this.parameters))}}class z extends u{beginSlot(e){return this.getTechnique(j,e)}}class D extends m{constructor(){super(...arguments),this.color=n(1,1,1,1),this.shadingTint=n(0,0,0,.25),this.shadingDirection=e(a(),[.5,-.5,-.5]),this.screenSizeScale=14,this.forceTransparentMode=!1,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=0,this.screenSizeEnabled=!1,this.shadingEnabled=!0}get transparent(){return this.color[3]<1||this.forceTransparentMode}}class y{constructor(e){this.layout=e}elementCount(e){return e.get("position").indices.length}write(e,t,r,s,i,a){const n=b(r,s,this.layout,e,t,i,a),o=i.getField("offset",c);if(o&&r.has("offset")){const e=r.get("offset");d(3===e.size),_(e,t,o,a)}return n}}const E=a(),M=a();export{D as Parameters,x as ShadedColorMaterial};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{WaterDistortionPassParameters as e}from"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as
|
|
5
|
+
import{WaterDistortionPassParameters as e}from"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as s}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as o,getDrawBuffers as a,depthWrite as i,oitDepthTest as n,blending as l}from"../lib/OrderIndependentTransparency.js";import{PositionUvf32OlidLayout as d,PositionUvf32Layout as c}from"./DefaultLayouts.js";import{W as p}from"../../../../chunks/WaterSurface.glsl.js";import{makePipelineState as f,defaultColorWrite as m}from"../../../webgl/renderState.js";class u extends e{}class h extends t{constructor(e,t){super(e,t,new r(p,()=>import("../shaders/WaterSurface.glsl.js")),s()?d.locations:c.locations)}initializePipeline(e){const{oitPass:r,output:t,transparent:s,draped:d}=e;return f({blending:3!==t&&8!==t&&9!==t&&s?l(r):null,depthTest:d?null:{func:n(r)},depthWrite:i(e),drawBuffers:a(r,t),colorWrite:m,polygonOffset:o(e)})}}export{u as WaterMaterialPassParameters,h as WaterTechnique};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{parameter as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as
|
|
5
|
+
import{__decorate as e}from"tslib";import{parameter as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as i}from"./DefaultTechniqueConfiguration.js";class o extends i{constructor(e){super(),this.spherical=e,this.receiveShadows=!1,this.transparent=!1,this.enableOffset=!0,this.writeDepth=!1,this.screenSpaceReflections=!1,this.cloudReflections=!1,this.draped=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.textureCoordinateType=0,this.emissionSource=0,this.pbrMode=3,this.occlusionPass=!1,this.useCustomDTRExponentForWater=!0,this.highStepCount=!0,this.useFillLights=!1,this.overlayEnabled=!1,this.snowCover=!1}get discardInvisibleFragments(){return this.transparent&&this.writeDepth}}e([t()],o.prototype,"receiveShadows",void 0),e([t()],o.prototype,"transparent",void 0),e([t()],o.prototype,"enableOffset",void 0),e([t()],o.prototype,"writeDepth",void 0),e([t()],o.prototype,"screenSpaceReflections",void 0),e([t()],o.prototype,"cloudReflections",void 0),e([t()],o.prototype,"draped",void 0),e([t()],o.prototype,"terrainDepthTest",void 0),e([t()],o.prototype,"cullAboveTerrain",void 0);export{o as WaterTechniqueConfiguration};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{d as e,l as t,g as f}from"../../../../../chunks/vec32.js";import{create as o}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{hasIdentityRotation as r,isOrthoNormal as i}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{BufferViewVec4u8 as s,BufferViewVec3f16 as n,BufferViewVec3f as c,BufferViewVec4f16 as l,BufferViewVec4f as d,BufferViewFloat as u,BufferViewVec2i16 as a,BufferViewVec2f16 as p,BufferViewVec2f as g}from"../../../../../geometry/support/buffer/BufferView.js";import{assert as y}from"../../lib/Util.js";function b(e,t,f,o=1){const{data:r,indices:i}=e,s=t.typedBuffer,n=t.typedBufferStride,c=i.length;if(f*=n,1===o)for(let l=0;l<c;++l)s[f]=r[i[l]],f+=n;else for(let l=0;l<c;++l){const e=r[i[l]];for(let t=0;t<o;t++)s[f]=e,f+=n}}function m(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length;f*=s;for(let c=0;c<n;++c){const e=2*r[c];i[f]=o[e],i[f+1]=o[e+1],f+=s}}function B(e,t,f,o=1){const{data:r,indices:i}=e,s=t.typedBuffer,n=t.typedBufferStride,c=i.length;if(f*=n,1===o)for(let l=0;l<c;++l){const e=3*i[l];s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],f+=n}else for(let l=0;l<c;++l){const e=3*i[l];for(let t=0;t<o;++t)s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],f+=n}}function h(e,t,f,o=1){const{data:r,indices:i}=e,s=t.typedBuffer,n=t.typedBufferStride,c=i.length;if(f*=n,1===o)for(let l=0;l<c;++l){const e=4*i[l];s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],s[f+3]=r[e+3],f+=n}else for(let l=0;l<c;++l){const e=4*i[l];for(let t=0;t<o;++t)s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],s[f+3]=r[e+3],f+=n}}function F(e,t,f){const o=e.typedBuffer,r=e.typedBufferStride;t*=r;for(let i=0;i<f;++i)o[t]=0,o[t+1]=0,o[t+2]=0,o[t+3]=0,t+=r}function v(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length;f*=s;for(let c=0;c<n;++c){const e=9*r[c];for(let t=0;t<9;++t)i[f+t]=o[e+t];f+=s}}function w(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length;f*=s;for(let c=0;c<n;++c){const e=16*r[c];for(let t=0;t<16;++t)i[f+t]=o[e+t];f+=s}}function z(e,t,f,o,i=1){if(!t)return void B(e,f,o,i);const{data:s,indices:n}=e,c=f.typedBuffer,l=f.typedBufferStride,d=n.length,u=t[0],a=t[1],p=t[2],g=t[4],y=t[5],b=t[6],m=t[8],h=t[9],F=t[10],v=t[12],w=t[13],z=t[14];o*=l;let S=0,k=0,N=0;const $=r(t)?e=>{S=s[e]+v,k=s[e+1]+w,N=s[e+2]+z}:e=>{const t=s[e],f=s[e+1],o=s[e+2];S=u*t+g*f+m*o+v,k=a*t+y*f+h*o+w,N=p*t+b*f+F*o+z};if(1===i)for(let r=0;r<d;++r)$(3*n[r]),c[o]=S,c[o+1]=k,c[o+2]=N,o+=l;else for(let r=0;r<d;++r){$(3*n[r]);for(let e=0;e<i;++e)c[o]=S,c[o+1]=k,c[o+2]=N,o+=l}}function S(e,t,f,o,s=1){if(!t)return void B(e,f,o,s);const{data:n,indices:c}=e,l=t,d=f.typedBuffer,u=f.typedBufferStride,a=c.length,p=l[0],g=l[1],y=l[2],b=l[4],m=l[5],h=l[6],F=l[8],v=l[9],w=l[10],z=!i(l),S=1e-6,k=1-S;o*=u;let N=0,$=0,
|
|
5
|
+
import{d as e,l as t,g as f}from"../../../../../chunks/vec32.js";import{create as o}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{hasIdentityRotation as r,isOrthoNormal as i}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{BufferViewVec4u8 as s,BufferViewVec3f16 as n,BufferViewVec3f as c,BufferViewVec4f16 as l,BufferViewVec4f as d,BufferViewFloat as u,BufferViewVec2i16 as a,BufferViewVec2f16 as p,BufferViewVec2f as g}from"../../../../../geometry/support/buffer/BufferView.js";import{assert as y}from"../../lib/Util.js";function b(e,t,f,o=1){const{data:r,indices:i}=e,s=t.typedBuffer,n=t.typedBufferStride,c=i.length;if(f*=n,1===o)for(let l=0;l<c;++l)s[f]=r[i[l]],f+=n;else for(let l=0;l<c;++l){const e=r[i[l]];for(let t=0;t<o;t++)s[f]=e,f+=n}}function m(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length;f*=s;for(let c=0;c<n;++c){const e=2*r[c];i[f]=o[e],i[f+1]=o[e+1],f+=s}}function B(e,t,f,o=1){const{data:r,indices:i}=e,s=t.typedBuffer,n=t.typedBufferStride,c=i.length;if(f*=n,1===o)for(let l=0;l<c;++l){const e=3*i[l];s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],f+=n}else for(let l=0;l<c;++l){const e=3*i[l];for(let t=0;t<o;++t)s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],f+=n}}function h(e,t,f,o=1){const{data:r,indices:i}=e,s=t.typedBuffer,n=t.typedBufferStride,c=i.length;if(f*=n,1===o)for(let l=0;l<c;++l){const e=4*i[l];s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],s[f+3]=r[e+3],f+=n}else for(let l=0;l<c;++l){const e=4*i[l];for(let t=0;t<o;++t)s[f]=r[e],s[f+1]=r[e+1],s[f+2]=r[e+2],s[f+3]=r[e+3],f+=n}}function F(e,t,f){const o=e.typedBuffer,r=e.typedBufferStride;t*=r;for(let i=0;i<f;++i)o[t]=0,o[t+1]=0,o[t+2]=0,o[t+3]=0,t+=r}function v(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length;f*=s;for(let c=0;c<n;++c){const e=9*r[c];for(let t=0;t<9;++t)i[f+t]=o[e+t];f+=s}}function w(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length;f*=s;for(let c=0;c<n;++c){const e=16*r[c];for(let t=0;t<16;++t)i[f+t]=o[e+t];f+=s}}function z(e,t,f,o,i=1){if(!t)return void B(e,f,o,i);const{data:s,indices:n}=e,c=f.typedBuffer,l=f.typedBufferStride,d=n.length,u=t[0],a=t[1],p=t[2],g=t[4],y=t[5],b=t[6],m=t[8],h=t[9],F=t[10],v=t[12],w=t[13],z=t[14];o*=l;let S=0,k=0,N=0;const $=r(t)?e=>{S=s[e]+v,k=s[e+1]+w,N=s[e+2]+z}:e=>{const t=s[e],f=s[e+1],o=s[e+2];S=u*t+g*f+m*o+v,k=a*t+y*f+h*o+w,N=p*t+b*f+F*o+z};if(1===i)for(let r=0;r<d;++r)$(3*n[r]),c[o]=S,c[o+1]=k,c[o+2]=N,o+=l;else for(let r=0;r<d;++r){$(3*n[r]);for(let e=0;e<i;++e)c[o]=S,c[o+1]=k,c[o+2]=N,o+=l}}function S(e,t,f,o,s=1){if(!t)return void B(e,f,o,s);const{data:n,indices:c}=e,l=t,d=f.typedBuffer,u=f.typedBufferStride,a=c.length,p=l[0],g=l[1],y=l[2],b=l[4],m=l[5],h=l[6],F=l[8],v=l[9],w=l[10],z=!i(l),S=1e-6,k=1-S;o*=u;let N=0,$=0,x=0;const A=r(l)?e=>{N=n[e],$=n[e+1],x=n[e+2]}:e=>{const t=n[e],f=n[e+1],o=n[e+2];N=p*t+b*f+F*o,$=g*t+m*f+v*o,x=y*t+h*f+w*o};if(1===s)if(z)for(let r=0;r<a;++r){A(3*c[r]);const e=N*N+$*$+x*x;if(e<k&&e>S){const t=1/Math.sqrt(e);d[o]=N*t,d[o+1]=$*t,d[o+2]=x*t}else d[o]=N,d[o+1]=$,d[o+2]=x;o+=u}else for(let r=0;r<a;++r)A(3*c[r]),d[o]=N,d[o+1]=$,d[o+2]=x,o+=u;else for(let r=0;r<a;++r){if(A(3*c[r]),z){const e=N*N+$*$+x*x;if(e<k&&e>S){const t=1/Math.sqrt(e);N*=t,$*=t,x*=t}}for(let e=0;e<s;++e)d[o]=N,d[o+1]=$,d[o+2]=x,o+=u}}function k(e,t,f,o,r=1){if(!t)return void h(e,f,o,r);const{data:s,indices:n}=e,c=t,l=f.typedBuffer,d=f.typedBufferStride,u=n.length,a=c[0],p=c[1],g=c[2],y=c[4],b=c[5],m=c[6],B=c[8],F=c[9],v=c[10],w=!i(c),z=1e-6,S=1-z;if(o*=d,1===r)for(let i=0;i<u;++i){const e=4*n[i],t=s[e],f=s[e+1],r=s[e+2],c=s[e+3];let u=a*t+y*f+B*r,h=p*t+b*f+F*r,k=g*t+m*f+v*r;if(w){const e=u*u+h*h+k*k;if(e<S&&e>z){const t=1/Math.sqrt(e);u*=t,h*=t,k*=t}}l[o]=u,l[o+1]=h,l[o+2]=k,l[o+3]=c,o+=d}else for(let i=0;i<u;++i){const e=4*n[i],t=s[e],f=s[e+1],c=s[e+2],u=s[e+3];let h=a*t+y*f+B*c,k=p*t+b*f+F*c,N=g*t+m*f+v*c;if(w){const e=h*h+k*k+N*N;if(e<S&&e>z){const t=1/Math.sqrt(e);h*=t,k*=t,N*=t}}for(let i=0;i<r;++i)l[o]=h,l[o+1]=k,l[o+2]=N,l[o+3]=u,o+=d}}function N(e,t,f,o,r=1){const{data:i,indices:s}=e,n=f.typedBuffer,c=f.typedBufferStride,l=s.length;if(o*=c,t===i.length&&4===t){n[o]=i[0],n[o+1]=i[1],n[o+2]=i[2],n[o+3]=i[3];const e=new Uint32Array(f.typedBuffer.buffer,f.start),t=c/4,s=e[o/=4];o+=t;const d=l*r;for(let f=1;f<d;++f)e[o]=s,o+=t;return}if(1!==r)if(4!==t)for(let d=0;d<l;++d){const e=3*s[d];for(let t=0;t<r;++t)n[o]=i[e],n[o+1]=i[e+1],n[o+2]=i[e+2],n[o+3]=255,o+=c}else for(let d=0;d<l;++d){const e=4*s[d];for(let t=0;t<r;++t)n[o]=i[e],n[o+1]=i[e+1],n[o+2]=i[e+2],n[o+3]=i[e+3],o+=c}else{if(4===t){for(let e=0;e<l;++e){const t=4*s[e];n[o]=i[t],n[o+1]=i[t+1],n[o+2]=i[t+2],n[o+3]=i[t+3],o+=c}return}for(let e=0;e<l;++e){const t=3*s[e];n[o]=i[t],n[o+1]=i[t+1],n[o+2]=i[t+2],n[o+3]=255,o+=c}}}function $(e,t,f){const{data:o,indices:r}=e,i=t.typedBuffer,s=t.typedBufferStride,n=r.length,c=o[0];f*=s;for(let l=0;l<n;++l)i[f]=c,f+=s}function x(o,r,i,s){e(A,o,r);const n=Math.max(Math.sqrt(t(A)),1e-4);f(A,A,1/n),i[s++]=A[0],i[s++]=A[1],i[s++]=A[2],i[s++]=n}const A=o();function M(e,t,f,o,r=1){const i=t.typedBuffer,s=t.typedBufferStride;if(o*=s,1===r)for(let n=0;n<f;++n)i[o]=e[0],i[o+1]=e[1],i[o+2]=e[2],i[o+3]=e[3],o+=s;else for(let n=0;n<f;++n)for(let t=0;t<r;++t)i[o]=e[0],i[o+1]=e[1],i[o+2]=e[2],i[o+3]=e[3],o+=s}function j(e,t,f,o,r,i,n){let c={numItems:0,numVerticesPerItem:0};for(const l of f.fields.keys()){const f=e.get(l),d=f?.indices;if(f&&d)"position"===l&&(c={numItems:1,numVerticesPerItem:d.length}),q(l,f,o,r,i,n);else if("olidColor"===l&&null!=t){const f=e.get("position")?.indices;if(f){const e=f.length;M(t,i.getField(l,s),e,n)}}}return c}function q(e,t,f,o,r,i){switch(e){case"position":{y(3===t.size);const o=r.getField(e,c);y(!!o,`No buffer view for ${e}`),z(t,f,o,i);break}case"normal":{y(3===t.size);const f=r.getField(e,c);y(!!f,`No buffer view for ${e}`),S(t,o,f,i);break}case"normalCompressed":case"profileRight":case"profileUp":{y(2===t.size);const f=r.getField(e,a);y(!!f,`No buffer view for ${e}`),m(t,f,i);break}case"uv0":{y(2===t.size);const f=r.getField(e,p)??r.getField(e,g);y(!!f,`No buffer view for ${e}`),m(t,f,i);break}case"uvi":{y(2===t.size);const f=r.getField(e,a);y(!!f,`No buffer view for ${e}`),m(t,f,i);break}case"color":case"symbolColor":{const f=r.getField(e,s);y(!!f,`No buffer view for ${e}`),y(3===t.size||4===t.size),N(t,t.size,f,i);break}case"colorFeatureAttribute":case"opacityFeatureAttribute":case"sizeFeatureAttribute":{const f=r.getField(e,u)??r.getField(e,u);y(!!f,`No buffer view for ${e}`),y(1===t.size),$(t,f,i);break}case"tangent":{y(4===t.size);const o=r.getField(e,d);y(!!o,`No buffer view for ${e}`),k(t,f,o,i);break}case"profileVertexAndNormal":{y(4===t.size);const f=r.getField(e,l)??r.getField(e,d);y(!!f,`No buffer view for ${e}`),h(t,f,i);break}case"profileAuxData":{y(3===t.size);const f=r.getField(e,n)??r.getField(e,c);y(!!f,`No buffer view for ${e}`),B(t,f,i);break}}}export{q as writeAttribute,j as writeAttributes,b as writeBufferFloat,v as writeBufferMat3f,w as writeBufferMat4f,m as writeBufferVec2,B as writeBufferVec3,h as writeBufferVec4,F as writeBufferVec4Zeros,N as writeColor,x as writeDeltaF16Vector,S as writeNormal,M as writeOlidColor,z as writePosition,k as writeTangent,$ as writeVVFeatureAttribute};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{removeUnordered as t,filterInPlace as r}from"../../../../../core/arrayUtils.js";import"../../../../../core/has.js";import{nextHighestPowerOfTwo as s}from"../../../../../core/mathUtils.js";import{disposeMaybe as i}from"../../../../../core/maybe.js";import{NestedMap as a}from"../../../../../core/NestedMap.js";import o from"../../../../../core/PooledArray.js";import{addMany as n}from"../../../../../core/SetUtils.js";import{property as l}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/Logger.js";import{subclass as h}from"../../../../../core/accessorSupport/decorators/subclass.js";import{copy as u,invert as f,transpose as c}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as d}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{glLayout as m}from"../../../support/buffer/glUtil.js";import{SyncRenderPlugin as g}from"../../effects/RenderPlugin.js";import{GLMaterials as p}from"../../lib/GLMaterials.js";import{assert as y}from"../../lib/Util.js";import{DrawParameters as _}from"../DrawParameters.js";import{BufferRange as b,mergeAdjacentRanges as v}from"./BufferRange.js";import{Instance as w}from"./Instance.js";import{PerBufferData as C,hasVao as O}from"./PerBufferData.js";import{PerOriginData as A}from"./PerOriginData.js";import{defaultHighlightName as B}from"../../../../support/HighlightDefaults.js";let E=class extends g{get _hasHighlights(){return this._highlightNames.size>0}hasHighlight(e){return this._highlightNames.has(e)}constructor(e){super(e),this._dataByOrigin=new Map,this._drawParameters=new _,this._highlightNames=new Set,this.drapedPriority=0,this._produces=new Map,this._hasOccludees=!1}destroy(){this._glMaterials=i(this._glMaterials),this._dataByOrigin.forEach(e=>e.dispose()),this._dataByOrigin.clear(),this._vaoCache=null}initialize(){this._updateProduces()}_updateProduces(){this.material.produces.forEach((e,t)=>{this._produces.set(t,t=>!(0===this._dataByOrigin.size||!(8!==t&&5!==t||this._hasHighlights))&&e(t))})}initializeRenderContext(e){z??=e.renderContext.rctx.isAssumedMetalDriver,this._glMaterials=new p(this.material,e.materials),this._bufferWriter=this.material.createBufferWriter(),this._vaoCache=e.renderContext.rctx.getVaoCache(this.material.vertexAttributeLocations,m(this._bufferWriter.vertexBufferLayout))}uninitializeRenderContext(){}get produces(){return this._produces}get hasOccludees(){return this._hasOccludees}get hasOnlyOccluders(){return!!(-2&this.renderOccludedFlags)}get hasEmissions(){return this.material.hasEmissions}get isDecoration(){return this.material.parameters.isDecoration}get renderOccludedFlags(){return this.material.renderOccludedFlags}get numGeometries(){let e=0;return this._dataByOrigin.forEach(t=>e+=t.buffers.reduce((e,t)=>e+t.instances.size,0)),e}get usedMemory(){let e=0;return this._dataByOrigin.forEach(t=>e+=t.buffers.reduce((e,t)=>e+t.vao.cachedMemory,0)),e}forEachGeometry(e){this._dataByOrigin.forEach(t=>t.buffers.forEach(t=>t.instances.forEach(({geometry:t})=>e(t))))}modify(e,t){this._applyUpdates(e,t),this._applyAddsAndRemoves(e),this._updateDrawCommands()}get canCompact(){for(const e of this._dataByOrigin.values())if(e.buffers.some(e=>e.holes.length>1))return!0;return!1}compact(e){if(!this.canCompact)return!1;let t=!1;for(const r of this._dataByOrigin.values()){const s=new Array;for(let t=0;t<r.buffers.length&&!e.done;){const i=r.buffers[t];i.holes.length<=1?++t:(i.instances.forEach(({geometry:e})=>s.push(e)),this._vaoCache.deleteVao(i.vao),r.buffers[t]=r.buffers[r.buffers.length-1],--r.buffers.length,e.madeProgress())}if(s.length>0){for(r.buffers.forEach(e=>this._applyAdds(e,s));s.length>0;)r.buffers.push(this._applyAndRebuild(new C,s,null));t=!0}}return t}updateHighlights(e){this.highlightOrderMap=e,this._highlightNames.clear(),this._dataByOrigin.forEach(t=>{t.buffers.forEach(t=>{t.updateHighlights(e),t.highlightNames.forEach(e=>this._highlightNames.add(e))})}),this._updateProduces()}_applyUpdates(e,r){const s=this._bufferWriter;if(null==s)return void e.clearUpdates();const i=s.vertexBufferLayout.stride/4;for(const a of e.updates){if(r.done)return;const{renderGeometry:o,updateType:n}=a;t(e.pending.updates,a),r.madeProgress();const l=this._dataByOrigin.get(o.localOrigin.id),h=l?.findBuffer(o.id);if(null==h)return;const u=h.instances.get(o.id);if(6&n){const e=V(s.elementCount(u.geometry.geometry.attributes)*i),t=s.vertexBufferLayout.createView(e.buffer);this._writeGeometry(o,t,0),h.vao.vertexBuffers.get("geometry").setSubData(e,u.from*i,0,u.numElements*i)}25&n&&(h.drawCommandsDirty=!0)}}_computeDeltas(e,t){const r=new a;for(const s of e){const e=s.localOrigin;if(null==e)continue;let t=r.get(e.id,null);null==t&&(t=new x(e.vec3),r.set(e.id,null,t)),t.changes.push(s)}for(const s of t){const e=s.localOrigin;if(null==e)continue;const t=this._dataByOrigin.get(e.id),i=t?.findBuffer(s.id);if(null==i)continue;let a=r.get(e.id,i);null==a&&(a=new x(e.vec3),r.set(e.id,i,a)),a.changes.push(s)}return r}_applyAddsAndRemoves(e){const{_bufferWriter:r,_dataByOrigin:s,_vaoCache:i}=this;if(null==r||null==i)return void e.clearAddsAndRemoves();const a=r.vertexBufferLayout.stride/4,o=this._computeDeltas(e.adds,e.removes);o.forEach((e,n)=>{const l=e.get(null),h=l?.changes??[];o.delete(n,null);let u=s.get(n);if(e.forEach((e,l)=>{if(o.delete(n,l),null==l&&y(!1,"No VAO for removed geometries"),l.instances.size===e.changes.length)return i.deleteVao(l.vao),t(u.buffers,l),void(0===u.buffers.length&&0===h.length&&s.delete(n));const f=l.numElements,c=l.vao.getByteLength("geometry")/4,d=h.reduce((e,t)=>e+r.elementCount(t.geometry.attributes),0),m=e.changes.reduce((e,t)=>e+r.elementCount(t.geometry.attributes),0),g=Math.min((f+d-m)*a,N),p=g>c;g>R&&g<c/2?(e.changes.forEach(({id:e})=>l.deleteInstance(e)),l.instances.forEach(({geometry:e})=>h.push(e)),this._vaoCache.deleteVao(l.vao),t(u.buffers,l)):p?this._applyAndRebuild(l,h,e):this._applyRemoves(l,e)}),h.length>0)for(null==u&&(u=new A(l.origin),s.set(n,u)),u.buffers.forEach(e=>this._applyAdds(e,h));h.length>0;)u.buffers.push(this._applyAndRebuild(new C,h,null))}),e.clearAddsAndRemoves()}_updateDrawCommands(){this._highlightNames.clear(),this._hasOccludees=!1,this._dataByOrigin.forEach(e=>{e.buffers.forEach(e=>{e.updateIfDrawCommandsDirty(this.highlightOrderMap,this._bufferWriter.vertexBufferLayout.stride),e.hasHighlights&&n(this._highlightNames,e.highlightNames),this._hasOccludees||=e.hasOccludees})})}_applyAndRebuild(e,t,r){if(r)for(const d of r.changes)e.deleteInstance(d.id);const s=this._bufferWriter,i=s.vertexBufferLayout.stride,a=i/4,o=Math.floor(N/a);let n=e.numElements;for(;t.length>0;){const r=t.pop(),i=s.elementCount(r.geometry.attributes);if(n+i>o&&n>0){t.push(r);break}n+=i;const a=new w(r,0,0,this.highlightOrderMap);y(null==e.instances.get(r.id)),e.addInstance(r.id,a)}const l=n*a,h=V(l),u=s.vertexBufferLayout.createView(h.buffer);let f=0;e.resetInstanceSummary(),e.instances.forEach((t,r)=>{this._writeGeometry(t.geometry,u,f);const i=f;f+=s.elementCount(t.geometry.geometry.attributes),e.updateInstance(r,i,f),e.updateDrawState(t)}),this._vaoCache.deleteVao(e.vao),e.vao=this._vaoCache.newVao(G(l)),e.vao.vertexBuffers.get("geometry").setSubData(h,0,0,f*a),e.holes.clear();const c=e.holes.pushNew();return c.from=f,c.to=Math.floor(e.vao.getByteLength("geometry")/i),e.updateDrawCommands(this.highlightOrderMap,i),e}_applyRemoves(e,t){if(0===t.changes.length||null==this._bufferWriter)return;let r=1/0,s=-1/0;for(const o of t.changes){const t=o.id,i=e.instances.get(t);if(!i)continue;e.deleteInstance(t),z&&(r=Math.min(r,i.from),s=Math.max(s,i.to));const a=L.back();if(a){if(a.to===i.from){a.to=i.to;continue}if(a.from===i.to){a.from=i.from;continue}}const n=L.pushNew();n.from=i.from,n.to=i.to}v(L);const i=this._bufferWriter.vertexBufferLayout.stride/4,a=e.vao.vertexBuffers.get("geometry");if(z){const t=(s-r)*i,o=V(t),n=this._bufferWriter.vertexBufferLayout.createView(o.buffer);o.fill(0,0,t),e.instances.forEach(e=>{if(!(e.from>=r&&e.to<=s))return;const t=e.from-r;this._writeGeometry(e.geometry,n,t)}),a.setSubData(o,r*i,0,t)}else{const e=L.reduce((e,t)=>Math.max(e,t.numElements),0)*i,t=V(e);t.fill(0,0,e),L.forAll(e=>a.setSubData(t,e.from*i,0,e.numElements*i))}e.holes.pushArray(L.data,L.length),L.forAll((e,t)=>L.data[t]=null),L.clear(),e.drawCommandsDirty=!0}_applyAdds(e,t){if(0===t.length||null==this._bufferWriter)return;if(!O(e))return void this._applyAndRebuild(e,t,null);const s=this._bufferWriter,i=s.vertexBufferLayout.stride/4,a=e.numElements,o=t.reduce((e,t)=>e+s.elementCount(t.geometry.attributes),0),n=Math.min((a+o)*i,N),l=4*n;if(e.vao.getByteLength("geometry")<G(N-R)&&l>e.vao.getByteLength("geometry"))return void this._applyAndRebuild(e,t,null);v(e.holes);const h=new Array;let u=1/0,f=-1/0;for(const r of t){const t=s.elementCount(r.geometry.attributes),i=M(e.holes,t);h.push(i),z&&null!=i&&(u=Math.min(i,u),f=Math.max(i+t,f))}const c=e.vao.vertexBuffers.get("geometry");let d=0,m=0,g=0;const p=V(z?(f-u)*i:n),_=s.vertexBufferLayout.createView(p.buffer);if(t.forEach((t,r)=>{const a=h[r];if(null==a)return;const o=s.elementCount(t.geometry.attributes);if(!z){if(!(g===a)){const e=g-m;e>0&&c.setSubData(p,m*i,0,e*i),m=a,d=0}this._writeGeometry(t,_,d),d+=o,g=a+o}const n=new w(t,a,a+o,this.highlightOrderMap);y(null==e.instances.get(t.id)),e.addInstance(t.id,n),e.drawCommandsDirty=!0}),z){const t=(f-u)*i;p.fill(0,0,t),e.instances.forEach(e=>{if(!(e.from>=u&&e.to<=f))return;const t=e.from-u;this._writeGeometry(e.geometry,_,t)}),m=u,g=f}const b=g-m;b>0&&c.setSubData(p,m*i,0,b*i),r(t,(e,t)=>null==h[t])}_writeGeometry(e,t,r){null!=this._bufferWriter&&(u(D,e.transformation),D[12]-=e.localOrigin.vec3[0],D[13]-=e.localOrigin.vec3[1],D[14]-=e.localOrigin.vec3[2],f(j,D),c(j,j),this._bufferWriter.write(D,j,e.geometry.attributes,e.geometry.objectAndLayerIdColor,t,r))}updateAnimation(e){return this.material.update(e)}acquireTechniques(e){if(!this.material.shouldRender(e))return null;const{output:t,bind:r}=e,s=this.material.produces.get(r.slot);if(!s?.(t))return null;const{highlight:i,slot:a}=r,o=5===t,n=8===t,l=n||o,h=i?.name;if(l&&(0===this._highlightNames.size||n&&h&&!this._highlightNames.has(h)))return null;const u=e=>n&&!!h&&!e.has(h),f=6===t,c=!(l||f);for(const{buffers:d}of this._dataByOrigin.values())for(const s of d){if(u(s.highlightNames))continue;const i=o?s.drawCommandsHighlights.get(B):l?h?s.drawCommandsHighlights.get(h):s.drawCommandsHighlights.size>0:((f&&s.needsMultipleCommands()?s.drawCommandsShadowHighlightRest:s.drawCommandsDefault)||null)?.length??!1,n=c&&s.drawCommandsOccludees||null;if(i||n?.length){const s=this._glMaterials.load(e.rctx,a,t),i=s?.beginSlot(r);if(i)return i}}return null}render(e,t){const{output:r,bind:s}=e,{slot:i,highlight:a}=s,n=8===r,l=a?.name??"";if(n&&!a)return;const h=5===r,u=n||h,f=6===r,c=!(u||f),d=9===i||10===i?i:null,{rctx:m}=e;m.runAppleAmdDriverHelper();const g=m.bindTechnique(t,s,this.material.parameters);for(const p of this._dataByOrigin.values())for(const e of p.buffers){if(n&&(!e.hasHighlights||!e.drawCommandsHighlights.has(l)))continue;if(h&&(!e.hasHighlights||!e.drawCommandsHighlights.has(B)))continue;const r=()=>{const t=[],r=e.drawCommandsHighlights.get(B)??new o;return r&&t.push(r),t},i=u&&!h?e.drawCommandsHighlights.get(l)??null:null,a=h?r():u?i?[i]:I:f&&e.needsMultipleCommands()?[e.drawCommandsShadowHighlightRest]:[e.drawCommandsDefault],y=a.some(e=>e.length>0),_=c&&e.drawCommandsOccludees||null;if(y||_?.length){if(this._drawParameters.origin=p.origin,g.bindDraw(s,this.material.parameters,this._drawParameters),t.ensureAttributeLocations(e.vao),m.bindVAO(e.vao),y)for(const e of a)m.setPipelineState(t.getPipeline(!1,d)),e.forAll(e=>m.drawArrays(t.primitiveType,e.first,e.count));_?.length&&(m.setPipelineState(t.getPipeline(!0,d)),_.forAll(e=>m.drawArrays(t.primitiveType,e.first,e.count)))}}}static prune(){W=new Float32Array(R)}get test(){}};e([l({constructOnly:!0})],E.prototype,"material",void 0),e([l({})],E.prototype,"highlightOrderMap",void 0),E=e([h("esri.views.3d.webgl-engine.materials.renderers.MergedRenderer")],E);class x{constructor(e){this.origin=e,this.changes=new Array}}function M(e,t){const r=e.find(e=>e.numElements>=t);if(null==r)return null;const s=r.from;return r.from+=t,r.from>=r.to&&e.removeUnordered(r),s}const D=d(),j=d(),L=new o({allocator:e=>e||new b,deallocator:null}),R=65536,H=4*R,P=1024,S=16777216,N=S/4;let W=new Float32Array(R);function V(e){return W.length<e&&(W=new Float32Array(e)),W}function G(e){const t=4*e;return t<=P?P:t<H?s(t):Math.max(Math.min(Math.ceil(1.5*t/H)*H,S),t)}const I=[];let z;export{E as MergedRenderer,G as sizeForVao};
|
|
5
|
+
import{__decorate as e}from"tslib";import{removeUnordered as t,filterInPlace as r}from"../../../../../core/arrayUtils.js";import"../../../../../core/has.js";import{nextHighestPowerOfTwo as s}from"../../../../../core/mathUtils.js";import{disposeMaybe as i}from"../../../../../core/maybe.js";import{NestedMap as a}from"../../../../../core/NestedMap.js";import o from"../../../../../core/PooledArray.js";import{addMany as n}from"../../../../../core/SetUtils.js";import{property as l}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/Logger.js";import{subclass as h}from"../../../../../core/accessorSupport/decorators/subclass.js";import{copy as u,invert as f,transpose as c}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as d}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{glLayout as m}from"../../../support/buffer/glUtil.js";import{SyncRenderPlugin as g}from"../../effects/RenderPlugin.js";import{GLMaterials as p}from"../../lib/GLMaterials.js";import{assert as y}from"../../lib/Util.js";import{DrawParameters as _}from"../DrawParameters.js";import{BufferRange as b,mergeAdjacentRanges as w}from"./BufferRange.js";import{Instance as v}from"./Instance.js";import{PerBufferData as C,hasVao as O}from"./PerBufferData.js";import{PerOriginData as A}from"./PerOriginData.js";import{defaultHighlightName as E}from"../../../../support/HighlightDefaults.js";let M=class extends g{get _hasHighlights(){return this._highlightNames.size>0}hasHighlight(e){return this._highlightNames.has(e)}constructor(e){super(e),this._dataByOrigin=new Map,this._drawParameters=new _,this._highlightNames=new Set,this.drapedPriority=0,this._produces=new Map,this._hasOccludees=!1}destroy(){this._glMaterials=i(this._glMaterials),this._dataByOrigin.forEach(e=>e.dispose()),this._dataByOrigin.clear(),this._vaoCache=null}initialize(){this._updateProduces()}_updateProduces(){this.material.produces.forEach((e,t)=>{this._produces.set(t,t=>!(0===this._dataByOrigin.size||!(8!==t&&5!==t||this._hasHighlights))&&e(t))})}initializeRenderContext(e){U??=e.renderContext.rctx.isAssumedMetalDriver,this._glMaterials=new p(this.material,e.materials),this._bufferWriter=this.material.createBufferWriter(),this._vaoCache=e.renderContext.rctx.getVaoCache(m(this._bufferWriter.layout))}uninitializeRenderContext(){}get produces(){return this._produces}get hasOccludees(){return this._hasOccludees}get hasOnlyOccluders(){return!!(-2&this.renderOccludedFlags)}get hasEmissions(){return this.material.hasEmissions}get isDecoration(){return this.material.parameters.isDecoration}get renderOccludedFlags(){return this.material.renderOccludedFlags}get numGeometries(){let e=0;return this._dataByOrigin.forEach(t=>e+=t.buffers.reduce((e,t)=>e+t.instances.size,0)),e}get usedMemory(){let e=0;return this._dataByOrigin.forEach(t=>e+=t.buffers.reduce((e,t)=>e+t.vao.cachedMemory,0)),e}forEachGeometry(e){this._dataByOrigin.forEach(t=>t.buffers.forEach(t=>t.instances.forEach(({geometry:t})=>e(t))))}modify(e,t){this._applyUpdates(e,t),this._applyAddsAndRemoves(e),this._updateDrawCommands()}get canCompact(){for(const e of this._dataByOrigin.values())if(e.buffers.some(e=>e.holes.length>1))return!0;return!1}compact(e){if(!this.canCompact)return!1;let t=!1;for(const r of this._dataByOrigin.values()){const s=new Array;for(let t=0;t<r.buffers.length&&!e.done;){const i=r.buffers[t];i.holes.length<=1?++t:(i.instances.forEach(({geometry:e})=>s.push(e)),this._vaoCache.deleteVao(i.vao),r.buffers[t]=r.buffers[r.buffers.length-1],--r.buffers.length,e.madeProgress())}if(s.length>0){for(r.buffers.forEach(e=>this._applyAdds(e,s));s.length>0;)r.buffers.push(this._applyAndRebuild(new C,s,null));t=!0}}return t}updateHighlights(e){this.highlightOrderMap=e,this._highlightNames.clear(),this._dataByOrigin.forEach(t=>{t.buffers.forEach(t=>{t.updateHighlights(e),t.highlightNames.forEach(e=>this._highlightNames.add(e))})}),this._updateProduces()}_applyUpdates(e,r){const s=this._bufferWriter;if(null==s)return void e.clearUpdates();const i=s.layout.stride/4;for(const a of e.updates){if(r.done)return;const{renderGeometry:o,updateType:n}=a;t(e.pending.updates,a),r.madeProgress();const l=this._dataByOrigin.get(o.localOrigin.id),h=l?.findBuffer(o.id);if(null==h)return;const u=h.instances.get(o.id);if(6&n){const e=G(s.elementCount(u.geometry.geometry.attributes)*i),t=s.layout.createView(e.buffer);this._writeGeometry(o,t,0),h.vao.buffer()?.buffer.setSubData(e,u.from*i,0,u.numElements*i)}25&n&&(h.drawCommandsDirty=!0)}}_computeDeltas(e,t){const r=new a;for(const s of e){const e=s.localOrigin;if(null==e)continue;let t=r.get(e.id,null);null==t&&(t=new D(e.vec3),r.set(e.id,null,t)),t.changes.push(s)}for(const s of t){const e=s.localOrigin;if(null==e)continue;const t=this._dataByOrigin.get(e.id),i=t?.findBuffer(s.id);if(null==i)continue;let a=r.get(e.id,i);null==a&&(a=new D(e.vec3),r.set(e.id,i,a)),a.changes.push(s)}return r}_applyAddsAndRemoves(e){const{_bufferWriter:r,_dataByOrigin:s,_vaoCache:i}=this;if(null==r||null==i)return void e.clearAddsAndRemoves();const a=r.layout.stride/4,o=this._computeDeltas(e.adds,e.removes);o.forEach((e,n)=>{const l=e.get(null),h=l?.changes??[];o.delete(n,null);let u=s.get(n);if(e.forEach((e,l)=>{if(o.delete(n,l),null==l&&y(!1,"No VAO for removed geometries"),l.instances.size===e.changes.length)return i.deleteVao(l.vao),t(u.buffers,l),void(0===u.buffers.length&&0===h.length&&s.delete(n));const f=l.numElements,c=l.vao.getByteLength("geometry")/4,d=h.reduce((e,t)=>e+r.elementCount(t.geometry.attributes),0),m=e.changes.reduce((e,t)=>e+r.elementCount(t.geometry.attributes),0),g=Math.min((f+d-m)*a,W),p=g>c;g>P&&g<c/2?(e.changes.forEach(({id:e})=>l.deleteInstance(e)),l.instances.forEach(({geometry:e})=>h.push(e)),this._vaoCache.deleteVao(l.vao),t(u.buffers,l)):p?this._applyAndRebuild(l,h,e):this._applyRemoves(l,e)}),h.length>0)for(null==u&&(u=new A(l.origin),s.set(n,u)),u.buffers.forEach(e=>this._applyAdds(e,h));h.length>0;)u.buffers.push(this._applyAndRebuild(new C,h,null))}),e.clearAddsAndRemoves()}_updateDrawCommands(){this._highlightNames.clear(),this._hasOccludees=!1,this._dataByOrigin.forEach(e=>{e.buffers.forEach(e=>{e.updateIfDrawCommandsDirty(this.highlightOrderMap,this._bufferWriter.layout.stride),e.hasHighlights&&n(this._highlightNames,e.highlightNames),this._hasOccludees||=e.hasOccludees})})}_applyAndRebuild(e,t,r){if(r)for(const d of r.changes)e.deleteInstance(d.id);const s=this._bufferWriter,i=s.layout.stride,a=i/4,o=Math.floor(W/a);let n=e.numElements;for(;t.length>0;){const r=t.pop(),i=s.elementCount(r.geometry.attributes);if(n+i>o&&n>0){t.push(r);break}n+=i;const a=new v(r,0,0,this.highlightOrderMap);y(null==e.instances.get(r.id)),e.addInstance(r.id,a)}const l=n*a,h=G(l),u=s.layout.createView(h.buffer);let f=0;e.resetInstanceSummary(),e.instances.forEach((t,r)=>{this._writeGeometry(t.geometry,u,f);const i=f;f+=s.elementCount(t.geometry.geometry.attributes),e.updateInstance(r,i,f),e.updateDrawState(t)}),this._vaoCache.deleteVao(e.vao),e.vao=this._vaoCache.newVao(z(l)),e.vao.buffer()?.buffer.setSubData(h,0,0,f*a),e.holes.clear();const c=e.holes.pushNew();return c.from=f,c.to=Math.floor(e.vao.getByteLength("geometry")/i),e.updateDrawCommands(this.highlightOrderMap,i),e}_applyRemoves(e,t){if(0===t.changes.length||null==this._bufferWriter)return;let r=1/0,s=-1/0;for(const o of t.changes){const t=o.id,i=e.instances.get(t);if(!i)continue;e.deleteInstance(t),U&&(r=Math.min(r,i.from),s=Math.max(s,i.to));const a=H.back();if(a){if(a.to===i.from){a.to=i.to;continue}if(a.from===i.to){a.from=i.from;continue}}const n=H.pushNew();n.from=i.from,n.to=i.to}w(H);const i=this._bufferWriter.layout.stride/4,a=e.vao.buffer()?.buffer;if(U){const t=(s-r)*i,o=G(t),n=this._bufferWriter.layout.createView(o.buffer);o.fill(0,0,t),e.instances.forEach(e=>{if(!(e.from>=r&&e.to<=s))return;const t=e.from-r;this._writeGeometry(e.geometry,n,t)}),a?.setSubData(o,r*i,0,t)}else{const e=H.reduce((e,t)=>Math.max(e,t.numElements),0)*i,t=G(e);t.fill(0,0,e),H.forAll(e=>a?.setSubData(t,e.from*i,0,e.numElements*i))}e.holes.pushArray(H.data,H.length),H.forAll((e,t)=>H.data[t]=null),H.clear(),e.drawCommandsDirty=!0}_applyAdds(e,t){if(0===t.length||null==this._bufferWriter)return;if(!O(e))return void this._applyAndRebuild(e,t,null);const s=this._bufferWriter,i=s.layout.stride/4,a=e.numElements,o=t.reduce((e,t)=>e+s.elementCount(t.geometry.attributes),0),n=Math.min((a+o)*i,W),l=4*n;if(e.vao.getByteLength("geometry")<z(W-P)&&l>e.vao.getByteLength("geometry"))return void this._applyAndRebuild(e,t,null);w(e.holes);const h=new Array;let u=1/0,f=-1/0;for(const r of t){const t=s.elementCount(r.geometry.attributes),i=B(e.holes,t);h.push(i),U&&null!=i&&(u=Math.min(i,u),f=Math.max(i+t,f))}const c=e.vao.buffer()?.buffer;let d=0,m=0,g=0;const p=G(U?(f-u)*i:n),_=s.layout.createView(p.buffer);if(t.forEach((t,r)=>{const a=h[r];if(null==a)return;const o=s.elementCount(t.geometry.attributes);if(!U){if(!(g===a)){const e=g-m;e>0&&c?.setSubData(p,m*i,0,e*i),m=a,d=0}this._writeGeometry(t,_,d),d+=o,g=a+o}const n=new v(t,a,a+o,this.highlightOrderMap);y(null==e.instances.get(t.id)),e.addInstance(t.id,n),e.drawCommandsDirty=!0}),U){const t=(f-u)*i;p.fill(0,0,t),e.instances.forEach(e=>{if(!(e.from>=u&&e.to<=f))return;const t=e.from-u;this._writeGeometry(e.geometry,_,t)}),m=u,g=f}const b=g-m;b>0&&c?.setSubData(p,m*i,0,b*i),r(t,(e,t)=>null==h[t])}_writeGeometry(e,t,r){null!=this._bufferWriter&&(u(j,e.transformation),j[12]-=e.localOrigin.vec3[0],j[13]-=e.localOrigin.vec3[1],j[14]-=e.localOrigin.vec3[2],f(R,j),c(R,R),this._bufferWriter.write(j,R,e.geometry.attributes,e.geometry.olidColor,t,r))}updateAnimation(e){return this.material.update(e)}acquireTechniques(e){if(!this.material.shouldRender(e))return null;const{output:t,bind:r}=e,s=this.material.produces.get(r.slot);if(!s?.(t))return null;const{highlight:i,slot:a}=r,o=5===t,n=8===t,l=n||o,h=i?.name;if(l&&(0===this._highlightNames.size||n&&h&&!this._highlightNames.has(h)))return null;const u=e=>n&&!!h&&!e.has(h),f=6===t,c=!(l||f);for(const{buffers:d}of this._dataByOrigin.values())for(const s of d){if(u(s.highlightNames))continue;const i=o?s.drawCommandsHighlights.get(E):l?h?s.drawCommandsHighlights.get(h):s.drawCommandsHighlights.size>0:((f&&s.needsMultipleCommands()?s.drawCommandsShadowHighlightRest:s.drawCommandsDefault)||null)?.length??!1,n=c&&s.drawCommandsOccludees||null;if(i||n?.length){const s=this._glMaterials.load(e.rctx,a,t),i=s?.beginSlot(r);if(i)return i}}return null}render(e,t){const{output:r,bind:s}=e,{slot:i,highlight:a}=s,n=8===r,l=a?.name??"";if(n&&!a)return;const h=5===r,u=n||h,f=6===r,c=!(u||f),d=9===i||10===i?i:null,{rctx:m}=e;m.runAppleAmdDriverHelper();const g=m.bindTechnique(t,s,this.material.parameters);for(const p of this._dataByOrigin.values())for(const e of p.buffers){if(n&&(!e.hasHighlights||!e.drawCommandsHighlights.has(l)))continue;if(h&&(!e.hasHighlights||!e.drawCommandsHighlights.has(E)))continue;const r=()=>{const t=[],r=e.drawCommandsHighlights.get(E)??new o;return r&&t.push(r),t},i=u&&!h?e.drawCommandsHighlights.get(l)??null:null,a=h?r():u?i?[i]:I:f&&e.needsMultipleCommands()?[e.drawCommandsShadowHighlightRest]:[e.drawCommandsDefault],y=a.some(e=>e.length>0),_=c&&e.drawCommandsOccludees||null;if(y||_?.length){if(this._drawParameters.origin=p.origin,g.bindDraw(s,this.material.parameters,this._drawParameters),t.ensureAttributeLocations(e.vao),m.bindVAO(e.vao),y)for(const e of a)m.setPipelineState(t.getPipeline(!1,d)),e.forAll(e=>m.drawArrays(t.primitiveType,e.first,e.count));_?.length&&(m.setPipelineState(t.getPipeline(!0,d)),_.forAll(e=>m.drawArrays(t.primitiveType,e.first,e.count)))}}}static prune(){V=new Float32Array(P)}get test(){}};e([l({constructOnly:!0})],M.prototype,"material",void 0),e([l({})],M.prototype,"highlightOrderMap",void 0),M=e([h("esri.views.3d.webgl-engine.materials.renderers.MergedRenderer")],M);class D{constructor(e){this.origin=e,this.changes=new Array}}function B(e,t){const r=e.find(e=>e.numElements>=t);if(null==r)return null;const s=r.from;return r.from+=t,r.from>=r.to&&e.removeUnordered(r),s}const j=d(),R=d(),H=new o({allocator:e=>e||new b,deallocator:null}),P=65536,S=4*P,x=1024,N=16777216,W=N/4;let V=new Float32Array(P);function G(e){return V.length<e&&(V=new Float32Array(e)),V}function z(e){const t=4*e;return t<=x?x:t<S?s(t):Math.max(Math.min(Math.ceil(1.5*t/S)*S,N),t)}const I=[];let U;export{M as MergedRenderer,z as sizeForVao};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{MemCachePool as e}from"../../../../../core/MemCachePool.js";import{VertexArrayObject as t}from"../../lib/VertexArrayObject.js";import{BufferObject as r}from"../../../../webgl/BufferObject.js";class
|
|
5
|
+
import{MemCachePool as e}from"../../../../../core/MemCachePool.js";import{VertexArrayObject as t}from"../../lib/VertexArrayObject.js";import{BufferObject as r}from"../../../../webgl/BufferObject.js";import{VertexBuffer as o}from"../../../../webgl/VertexBuffer.js";class c{constructor(t,r){this._rctx=t,this._layout=r,this._cache=new e(t.newCache,"VAOCache")}dispose(){this._cache.destroy()}newVao(e){const c=e.toString();let s=this._cache.pop(c);return s||(s=new t(this._rctx,new o(this._layout,r.createVertex(this._rctx,35044))),s.buffer()?.buffer.setSize(e),s)}deleteVao(e){if(null==e)return;const t=e.getByteLength("geometry").toString();this._cache.put(t,e)}}export{c as VaoCache};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{unpackFloatRGBA as r}from"../../../../core/floatRGBA.js";import has from"../../../../core/has.js";import s from"../../../../core/Logger.js";import{removeMaybe as i,destroyMaybe as n}from"../../../../core/maybe.js";import{watch as o,initial as a,syncAndInitial as h}from"../../../../core/reactiveUtils.js";import{addFrameTask as l}from"../../../../core/scheduling.js";import{Milliseconds as p}from"../../../../core/time.js";import{property as d}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/RandomLCG.js";import{subclass as c}from"../../../../core/accessorSupport/decorators/subclass.js";import{isMoon as m,isMars as u}from"../../../../geometry/support/spatialReferenceUtils.js";import{ChapmanAtmosphere as f}from"../../environment/ChapmanAtmosphere.js";import{CloudsComposition as _}from"../../environment/CloudsComposition.js";import{Fog as g}from"../../environment/Fog.js";import{LocalAtmosphere as x}from"../../environment/LocalAtmosphere.js";import w from"../../environment/MarsAtmosphere.js";import{ComponentObjectCollection as v}from"../collections/Component/ComponentObjectCollection.js";import{ShaderTechniqueConstructionContext as y}from"../core/shaderTechnique/ShaderTechniqueConstructionContext.js";import{ShaderTechniqueRepository as b}from"../core/shaderTechnique/ShaderTechniqueRepository.js";import{BloomRenderNode as j}from"../effects/bloom/BloomRenderNode.js";import{ObjectAndLayerIDRenderNode as R}from"../effects/geometry/ObjectAndLayerIDRenderNode.js";import{olidEnabled as C}from"../effects/geometry/olidUtils.js";import{RenderOccludedRenderNode as T}from"../effects/geometry/RenderOccludedRenderNode.js";import{Haze as A}from"../effects/haze/Haze.js";import{Highlight as O}from"../effects/highlight/Highlight.js";import{ShadowHighlight as S}from"../effects/highlight/ShadowHighlight.js";import{Magnifier as q}from"../effects/magnifier/Magnifier.js";import{SMAA as M}from"../effects/smaa/SMAA.js";import{SSAO as U}from"../effects/ssao/SSAO.js";import{Stars as L}from"../effects/stars/Stars.js";import k from"../lib/CompositingHelper.js";import{GLMaterialRepository as D}from"../lib/GLMaterialRepository.js";import{ObjectAndLayerIdRenderHelper as H}from"../lib/ObjectAndLayerIdRenderHelper.js";import{Renderer as F}from"../lib/Renderer.js";import{RenderingContext as W}from"../lib/RenderingContext.js";import{TextureRepository as E}from"../lib/TextureRepository.js";import{createMarkerTextureRepository as B}from"../materials/markerTextureRepository.js";import{createStippleTextureRepository as G}from"../materials/stippleTextureRepository.js";import{WaterTextureRepository as P}from"../materials/internal/WaterTextureRepository.js";import{getContextCache as N}from"./contextCache.js";import{removeLoadedShaderModules as z}from"./renderUtils.js";import{ScreenshotManager as I,ScreenshotContext as V}from"./ScreenshotManager.js";import{contextCache as X}from"./testUtils.js";import{noBudget as Q}from"../../../support/Scheduler.js";import{checkWebGLError as J}from"../../../webgl/checkWebGLError.js";let K=class extends t{constructor(e){super(e),this._waterTextures=new P,this.olidRenderHelper=C()?new H:null,this._needsUpdate=!0,this._needsRender=!0,this._idleSuspend=!0,this._needsWaterReflectionUpdate=!1,this._lastAnimationUpdate=0,this.bloom=null,this.test=null;const t=e.stage;try{this._initializeContext(t)}catch(n){return void console.error("Failed to initialize context",n)}const{memoryController:r}=t.view.resourceController;this._stippleTextures=G(this._rctx,r),this.notifyChange("stippleTextures"),this._markerTextures=B(this._rctx,r),this.notifyChange("markerTextures"),this._techniques=new b(new y(this._rctx,t.viewingMode,this.stippleTextures,this.waterTextures,this.markerTextures)),this._textures=new E(t),this.addHandles(this._textures.events.on("changed",e=>this.requestRender(e)));const s=new D(this._textures,this._techniques,()=>this.requestRender(),()=>this.requestRender());this._compositingHelper=new k(this._rctx,this._techniques),this._renderer=new F(t,s,this._techniques,this._rctx,this._compositingHelper,e=>this.requestRender(e)),this.notifyChange("renderer"),this.addHandles([o(()=>t.view.ready,e=>{e&&this._createRenderNodes()},a),o(()=>this.waterTextures?.updating,()=>this.requestRender(),a),o(()=>t.view.qualityProfile,e=>this.renderer?.updateRenderFeatures(e),h)]);const i={renderScene:(e,t,r,s)=>this.renderer.render(e,t,r,s),requestRenderScene:e=>this.requestRender(e),prepareOverlay:()=>t.options.screenshot.prepareOverlay(),renderOverlay:(e,r,s)=>t.options.screenshot.renderOverlay(e,r,s)};this._screenshotManager=new I(this._rctx,i,e=>t.view.basemapTerrain.overlayManager.updateOverlays(Q,e.camera,0)),this._registerFrameTask(t)}destroy(){const e=this.stage?.container;e?.contains(this._canvas)&&e.removeChild(this._canvas),this._frameTask=i(this._frameTask),this._techniques=n(this._techniques),this._componentObjectCollection=n(this._componentObjectCollection),this._set("componentObjectCollection",null),this._screenshotManager=n(this._screenshotManager),n(this.renderer),this._textures=n(this._textures),n(this.waterTextures),n(this.markerTextures),n(this.stippleTextures),this._waterTextures=null,this._markerTextures=null,this._stippleTextures=null,this._canvas=null,this._rctx=n(this._rctx),this._compositingHelper=null,this._renderer=null,this._set("renderer",null),this.test?.destroy()}_createRenderNodes(){const{view:e,viewingMode:t}=this.stage;new L({view:e}),m(e.spatialReference)||(2===t?(new x({view:e}),this.bloom=new j({view:e})):u(e.spatialReference)?(new w({view:e}),this.bloom=new j({view:e})):(new f({view:e}),new _({view:e}),this.bloom=new j({view:e}),new A({view:e}),new g({view:e}))),new U({view:e,isEnabled:()=>this.renderer.hasSSAO}),new M({view:e,isEnabled:()=>this.renderer.hasSMAA}),new q({view:e}),new O({view:e}),new S({view:e,viewingMode:t}),new T({view:e}),C()&&new R({view:e})}requestRender(e=1){this._needsRender=!0,1===e&&(this._needsUpdate=!0)}get updating(){return this._needsUpdate||this._needsWaterReflectionUpdate||this.renderer.updating||this._textures.updating||this.waterTextures.updating}get textures(){return this._textures}get techniques(){return this._techniques}get compositingHelper(){return this._compositingHelper}setIdleSuspend(e){this._idleSuspend!==e&&(this._idleSuspend=e,this.requestRender())}get renderingContext(){return this._rctx}get capabilities(){return this._rctx.capabilities}get canvas(){return this._canvas}takeScreenshot(e){return this._screenshotManager.takeScreenshot(e)}getAlpha(){return!!this._rctx.contextAttributes.alpha}getMinimalDepthForArea(e,t,s,i,n,o=n){const a=i.constrainWindowSize(t,s,n*i.pixelRatio,o*i.pixelRatio),h=this._ensureLinearDepthArrayBuffer(a);this.renderer.readMainDepth(a,h);const l=(e,t,s)=>r(t,e)*(s[1]-s[0])+s[0];let p=Number.MAX_VALUE;for(let r=0;r<a[2]*a[3];r++){const e=l(4*r,h,i.nearFar);p>e&&e!==i.nearFar[0]&&e!==i.nearFar[1]&&(p=e)}if(e){const r=e.pickDepth(t*i.pixelRatio,s*i.pixelRatio,i);null!=r&&p>r&&r!==i.nearFar[0]&&r!==i.nearFar[1]&&(p=r)}return p===Number.MAX_VALUE?void 0:p}_ensureLinearDepthArrayBuffer(e){const t=4*e[2]*e[3];return(null==this._tmpDepthBuffer||this._tmpDepthBuffer.byteLength<t)&&(this._tmpDepthBuffer=new Uint8Array(t)),this._tmpDepthBuffer}async reloadShaders(){z(),await this._techniques.reloadAll(),this.renderer.overlay?.reloadShaders(),this.requestRender()}_registerFrameTask(e){const t=e.view.state;let r=!1,s=0,i=!1;const n={preRender:({time:i})=>{r=this.updating,s=this._needsUpdate?1:0,this._needsRender&&this.renderer.updateSceneDepthRange(t.camera),e.commitSyncLayers(),i=this.test?.time??i;(p(i-this._lastAnimationUpdate)>this.renderer.animationTimestep||r||this._needsRender)&&(this.renderer.updateAnimation(t,i)&&this.requestRender(0),this._lastAnimationUpdate=i)},render:({time:e})=>{if((this._needsRender||!this._idleSuspend||!this.renderer.isCameraFinal||this._needsWaterReflectionUpdate)&&t.camera.fullWidth>0&&t.camera.fullHeight>0){const r=this._needsUpdate&&this._idleSuspend&&this.renderer.isCameraFinal;this._needsRender=!1,this._needsUpdate=!1,this._needsWaterReflectionUpdate=!1,e=this.test?.time??e,this.renderer.render(t,e),i=!0,r&&this.renderer.hasReflections&&(this.requestRender(0),this._needsWaterReflectionUpdate=!0)}},update:({time:e})=>{this._textures.update();const r=new V(t,this.renderer.fboCache);e=this.test?.time??e,this._screenshotManager.update(r,e)},finish:()=>{i&&(this.renderer.finish(2===t.mode?s:1),i=!1)}};this._frameTask=l(n)}_initializeContext(e){const{options:t}=e,r=t.canvas??document.createElement("canvas");r.setAttribute("style","width: 100%; height:100%; display:block;"),this._canvas=r;const i={alpha:t.alpha||!1,premultipliedAlpha:!0,antialias:!1,depth:!0,stencil:t.stencil??!0,powerPreference:"high-performance",preserveDrawingBuffer:t.preserveDrawingBuffer??!1},n=r.getContext("webgl2",i);if(null==n)return void s.getLogger(this).error("A WebGL2 context could not be created.");J(n,!0),this._rctx=Y(n,e),this._loadShaderOnlyExtensions(),!t.alpha&&this._rctx.contextAttributes.alpha&&s.getLogger(this).error("WebGL context has alpha channel even though no alpha channel was requested");const{container:o}=e;!this._rctx.contextAttributes.alpha&&has("safari")>=11&&(o.style.backgroundColor="black"),o.contains(r)||o.appendChild(r)}_loadShaderOnlyExtensions(){this._rctx.capabilities.enable("textureFloatLinear")}get _viewingMode(){return this.stage.viewingMode}get stippleTextures(){return this._stippleTextures}get markerTextures(){return this._markerTextures}get waterTextures(){return this._waterTextures}getObjectAndLayerIdColor(e){return this.olidRenderHelper?.getObjectAndLayerIdColor(e)}get renderer(){return this._renderer}get componentObjectCollection(){return null==this._componentObjectCollection&&(this._componentObjectCollection=new v(this.renderer.renderPassManager,this._viewingMode)),this._componentObjectCollection}set componentObjectCollection(e){this._componentObjectCollection=e}updateQualitySettings(e){null!=this.test?.time&&(this.test.savedFadeDuration=e.fadeDuration,e.fadeDuration=p(0)),this._rctx.updateOptions({maxPreferredTexturePixels:this.stage.view.qualitySettings.maxTexturePixels})}};function Y(e,t){const r=(e,r)=>t.view.resourceController.memoryController.newCache(e,r),s={disabledExtensions:t.options.deactivatedWebGLExtensions||{},debugWebGLExtensions:t.options.debugWebGLExtensions||{},maxAnisotropy:8,maxPreferredTexturePixels:t.view.qualitySettings.maxTexturePixels,newCache:r};if(X.enabled){let t=Z.get(e);return t?(t.configure(s),t.ref(),t):(t=new W(e,s),Z.set(e,t),t.ref(),t)}return new W(e,s)}e([d({type:Boolean,readOnly:!0})],K.prototype,"updating",null),e([d({constructOnly:!0})],K.prototype,"stage",void 0),e([d({readOnly:!0})],K.prototype,"stippleTextures",null),e([d({readOnly:!0})],K.prototype,"markerTextures",null),e([d({readOnly:!0})],K.prototype,"waterTextures",null),e([d({readOnly:!0})],K.prototype,"olidRenderHelper",void 0),e([d()],K.prototype,"_textures",void 0),e([d({readOnly:!0})],K.prototype,"renderer",null),e([d()],K.prototype,"_screenshotManager",void 0),e([d()],K.prototype,"componentObjectCollection",null),e([d()],K.prototype,"_componentObjectCollection",void 0),e([d()],K.prototype,"_needsUpdate",void 0),e([d()],K.prototype,"_needsWaterReflectionUpdate",void 0),K=e([c("esri.views.3d.webgl-engine.parts.RenderView")],K);const Z=N();export{K as RenderView};
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{toConst as r}from"../../../../core/compilerUtils.js";import{unpackFloatRGBA as s}from"../../../../core/floatRGBA.js";import has from"../../../../core/has.js";import i from"../../../../core/Logger.js";import{removeMaybe as n,destroyMaybe as o}from"../../../../core/maybe.js";import{watch as a,initial as h,syncAndInitial as l}from"../../../../core/reactiveUtils.js";import{addFrameTask as p}from"../../../../core/scheduling.js";import{Milliseconds as d}from"../../../../core/time.js";import{property as c}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/RandomLCG.js";import{subclass as m}from"../../../../core/accessorSupport/decorators/subclass.js";import{isMoon as u,isMars as f}from"../../../../geometry/support/spatialReferenceUtils.js";import{ChapmanAtmosphere as _}from"../../environment/ChapmanAtmosphere.js";import{CloudsComposition as g}from"../../environment/CloudsComposition.js";import{Fog as w}from"../../environment/Fog.js";import{LocalAtmosphere as x}from"../../environment/LocalAtmosphere.js";import{MarsAtmosphere as v}from"../../environment/MarsAtmosphere.js";import{ComponentObjectCollection as y}from"../collections/Component/ComponentObjectCollection.js";import{ShaderTechniqueConstructionContext as j}from"../core/shaderTechnique/ShaderTechniqueConstructionContext.js";import{ShaderTechniqueRepository as b}from"../core/shaderTechnique/ShaderTechniqueRepository.js";import{BloomRenderNode as R}from"../effects/bloom/BloomRenderNode.js";import{ObjectAndLayerIDRenderNode as T}from"../effects/geometry/ObjectAndLayerIDRenderNode.js";import{olidEnabled as C}from"../effects/geometry/olidUtils.js";import{RenderOccludedRenderNode as A}from"../effects/geometry/RenderOccludedRenderNode.js";import{Haze as O}from"../effects/haze/Haze.js";import{Highlight as S}from"../effects/highlight/Highlight.js";import{ShadowHighlight as q}from"../effects/highlight/ShadowHighlight.js";import{Magnifier as U}from"../effects/magnifier/Magnifier.js";import{SMAA as M}from"../effects/smaa/SMAA.js";import{SSAO as k}from"../effects/ssao/SSAO.js";import{Stars as L}from"../effects/stars/Stars.js";import D from"../lib/CompositingHelper.js";import{GLMaterialRepository as H}from"../lib/GLMaterialRepository.js";import{ObjectAndLayerIdRenderHelper as F}from"../lib/ObjectAndLayerIdRenderHelper.js";import{Renderer as W}from"../lib/Renderer.js";import{RenderingContext as B}from"../lib/RenderingContext.js";import{RenderingContextOptions as E}from"../lib/RenderingContextOptions.js";import{TextureRepository as N}from"../lib/TextureRepository.js";import{createMarkerTextureRepository as z}from"../materials/markerTextureRepository.js";import{createStippleTextureRepository as G}from"../materials/stippleTextureRepository.js";import{WaterTextureRepository as P}from"../materials/internal/WaterTextureRepository.js";import{getContextCache as I}from"./contextCache.js";import{removeLoadedShaderModules as V}from"./renderUtils.js";import{ScreenshotManager as X,ScreenshotContext as Q}from"./ScreenshotManager.js";import{contextCache as J}from"./testUtils.js";import{noBudget as K}from"../../../support/Scheduler.js";import{checkWebGLError as Y}from"../../../webgl/checkWebGLError.js";let Z=class extends t{constructor(e){super(e),this._waterTextures=new P,this.olidRenderHelper=C()?new F:null,this._needsUpdate=!0,this._needsRender=!0,this._idleSuspend=!0,this._needsWaterReflectionUpdate=!1,this._lastAnimationUpdate=0,this.bloom=null,this.test=null;const t=e.stage;try{this._initializeContext(t)}catch(n){return void console.error("Failed to initialize context",n)}const{memoryController:r}=t.view.resourceController;this._stippleTextures=G(this._rctx,r),this.notifyChange("stippleTextures"),this._markerTextures=z(this._rctx,r),this.notifyChange("markerTextures"),this._techniques=new b(new j(this._rctx,t.viewingMode,this.stippleTextures,this.waterTextures,this.markerTextures)),this._textures=new N(t),this.addHandles(this._textures.events.on("changed",e=>this.requestRender(e)));const s=new H(this._textures,this._techniques,()=>this.requestRender(),()=>this.requestRender());this._compositingHelper=new D(this._rctx,this._techniques),this._renderer=new W(t,s,this._techniques,this._rctx,this._compositingHelper,e=>this.requestRender(e)),this.notifyChange("renderer"),this.addHandles([a(()=>t.view.ready,e=>{e&&this._createRenderNodes()},h),a(()=>this.waterTextures?.updating,()=>this.requestRender(),h),a(()=>t.view.qualityProfile,e=>this.renderer?.updateRenderFeatures(e),l)]);const i={renderScene:(e,t,r,s)=>this.renderer.render(e,t,r,s),requestRenderScene:e=>this.requestRender(e),prepareOverlay:()=>t.options.screenshot.prepareOverlay(),renderOverlay:(e,r,s)=>t.options.screenshot.renderOverlay(e,r,s)};this._screenshotManager=new X(this._rctx,i,e=>t.view.basemapTerrain.overlayManager.updateOverlays(K,e.camera,0)),this._registerFrameTask(t)}destroy(){const e=this.stage?.container;e?.contains(this._canvas)&&e.removeChild(this._canvas),this._frameTask=n(this._frameTask),this._techniques=o(this._techniques),this._componentObjectCollection=o(this._componentObjectCollection),this._set("componentObjectCollection",null),this._screenshotManager=o(this._screenshotManager),o(this.renderer),this._textures=o(this._textures),o(this.waterTextures),o(this.markerTextures),o(this.stippleTextures),this._waterTextures=null,this._markerTextures=null,this._stippleTextures=null,this._canvas=null,this._rctx=o(this._rctx),this._compositingHelper=null,this._renderer=null,this._set("renderer",null),this.test?.destroy()}_createRenderNodes(){const{view:e,viewingMode:t}=this.stage;new L({view:e}),u(e.spatialReference)||(2===t?(new x({view:e}),this.bloom=new R({view:e})):f(e.spatialReference)?(new v({view:e}),this.bloom=new R({view:e})):(new _({view:e}),new g({view:e}),this.bloom=new R({view:e}),new O({view:e}),new w({view:e}))),new k({view:e,isEnabled:()=>this.renderer.hasSSAO}),new M({view:e,isEnabled:()=>this.renderer.hasSMAA}),new U({view:e}),new S({view:e}),new q({view:e,viewingMode:t}),new A({view:e}),C()&&new T({view:e})}requestRender(e=1){this._needsRender=!0,1===e&&(this._needsUpdate=!0)}get updating(){return this._needsUpdate||this._needsWaterReflectionUpdate||this.renderer.updating||this._textures.updating||this.waterTextures.updating}get textures(){return this._textures}get techniques(){return this._techniques}get compositingHelper(){return this._compositingHelper}setIdleSuspend(e){this._idleSuspend!==e&&(this._idleSuspend=e,this.requestRender())}get renderingContext(){return this._rctx}get capabilities(){return this._rctx.capabilities}get canvas(){return this._canvas}takeScreenshot(e){return this._screenshotManager.takeScreenshot(r(e))}getAlpha(){return!!this._rctx.contextAttributes.alpha}getMinimalDepthForArea(e,t,r,i,n,o=n){const a=i.constrainWindowSize(t,r,n*i.pixelRatio,o*i.pixelRatio),h=this._ensureLinearDepthArrayBuffer(a);this.renderer.readMainDepth(a,h);const l=(e,t,r)=>s(t,e)*(r[1]-r[0])+r[0];let p=Number.MAX_VALUE;for(let s=0;s<a[2]*a[3];s++){const e=l(4*s,h,i.nearFar);p>e&&e!==i.nearFar[0]&&e!==i.nearFar[1]&&(p=e)}if(e){const s=e.pickDepth(t*i.pixelRatio,r*i.pixelRatio,i);null!=s&&p>s&&s!==i.nearFar[0]&&s!==i.nearFar[1]&&(p=s)}return p===Number.MAX_VALUE?void 0:p}_ensureLinearDepthArrayBuffer(e){const t=4*e[2]*e[3];return(null==this._tmpDepthBuffer||this._tmpDepthBuffer.byteLength<t)&&(this._tmpDepthBuffer=new Uint8Array(t)),this._tmpDepthBuffer}async reloadShaders(){V(),await this._techniques.reloadAll(),this.renderer.overlay?.reloadShaders(),this.requestRender()}_registerFrameTask(e){const t=e.view.state;let r=!1,s=0,i=!1;const n={preRender:({time:i})=>{r=this.updating,s=this._needsUpdate?1:0,this._needsRender&&this.renderer.updateSceneDepthRange(t.camera),e.commitSyncLayers(),i=this.test?.time??i;(d(i-this._lastAnimationUpdate)>this.renderer.animationTimestep||r||this._needsRender)&&(this.renderer.updateAnimation(t,i)&&this.requestRender(0),this._lastAnimationUpdate=i)},render:({time:e})=>{if((this._needsRender||!this._idleSuspend||!this.renderer.isCameraFinal||this._needsWaterReflectionUpdate)&&t.camera.fullWidth>0&&t.camera.fullHeight>0){const r=this._needsUpdate&&this._idleSuspend&&this.renderer.isCameraFinal;this._needsRender=!1,this._needsUpdate=!1,this._needsWaterReflectionUpdate=!1,e=this.test?.time??e,this.renderer.render(t,e,0),i=!0,r&&this.renderer.hasReflections&&(this.requestRender(0),this._needsWaterReflectionUpdate=!0)}},update:({time:e})=>{this._textures.update();const r=new Q(t,this.renderer.fboCache);e=this.test?.time??e,this._screenshotManager.update(r,e)},finish:()=>{i&&(this.renderer.finish(2===t.mode?s:1),i=!1)}};this._frameTask=p(n)}_initializeContext(e){const{options:t}=e,r=t.canvas??document.createElement("canvas");r.setAttribute("style","width: 100%; height:100%; display:block;"),this._canvas=r;const s={alpha:t.alpha||!1,premultipliedAlpha:!0,antialias:!1,depth:!0,stencil:t.stencil??!0,powerPreference:"high-performance",preserveDrawingBuffer:t.preserveDrawingBuffer??!1},n=r.getContext("webgl2",s);if(null==n)return void i.getLogger(this).error("A WebGL2 context could not be created.");Y(n,!0),this._rctx=$(n,e),this._loadShaderOnlyExtensions(),!t.alpha&&this._rctx.contextAttributes.alpha&&i.getLogger(this).error("WebGL context has alpha channel even though no alpha channel was requested");const{container:o}=e;!this._rctx.contextAttributes.alpha&&has("safari")>=11&&(o.style.backgroundColor="black"),o.contains(r)||o.appendChild(r)}_loadShaderOnlyExtensions(){this._rctx.capabilities.enable("textureFloatLinear")}get _viewingMode(){return this.stage.viewingMode}get stippleTextures(){return this._stippleTextures}get markerTextures(){return this._markerTextures}get waterTextures(){return this._waterTextures}getObjectAndLayerIdColor(e){return this.olidRenderHelper?.getObjectAndLayerIdColor(e)}get renderer(){return this._renderer}get componentObjectCollection(){return null==this._componentObjectCollection&&(this._componentObjectCollection=new y(this.renderer.renderPassManager,this._viewingMode)),this._componentObjectCollection}set componentObjectCollection(e){this._componentObjectCollection=e}updateQualitySettings(e){null!=this.test?.time&&(this.test.savedFadeDuration=e.fadeDuration,e.fadeDuration=d(0)),this._rctx.updateOptions({maxPreferredTexturePixels:this.stage.view.qualitySettings.maxTexturePixels})}};function $(e,t){const r=new E(t);if(J.enabled){let t=ee.get(e);return t?(t.configure(r),t.ref(),t):(t=new B(e,r),ee.set(e,t),t.ref(),t)}return new B(e,r)}e([c({type:Boolean,readOnly:!0})],Z.prototype,"updating",null),e([c({constructOnly:!0})],Z.prototype,"stage",void 0),e([c({readOnly:!0})],Z.prototype,"stippleTextures",null),e([c({readOnly:!0})],Z.prototype,"markerTextures",null),e([c({readOnly:!0})],Z.prototype,"waterTextures",null),e([c({readOnly:!0})],Z.prototype,"olidRenderHelper",void 0),e([c()],Z.prototype,"_textures",void 0),e([c({readOnly:!0})],Z.prototype,"renderer",null),e([c()],Z.prototype,"_screenshotManager",void 0),e([c()],Z.prototype,"componentObjectCollection",null),e([c()],Z.prototype,"_componentObjectCollection",void 0),e([c()],Z.prototype,"_needsUpdate",void 0),e([c()],Z.prototype,"_needsWaterReflectionUpdate",void 0),Z=e([m("esri.views.3d.webgl-engine.parts.RenderView")],Z);const ee=I();export{Z as RenderView};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{createResolver as e}from"../../../../core/promiseUtils.js";import{clone as t}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{resampleHermite as r}from"../../../support/screenshotUtils.js";import{DataType as
|
|
5
|
+
import{createResolver as e}from"../../../../core/promiseUtils.js";import{clone as t}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{resampleHermite as r}from"../../../support/screenshotUtils.js";import{DataType as s}from"../../../webgl/enums.js";import{ensureAttachmentMaxSize as i}from"../../../webgl/FramebufferObject.js";import{createEmptyImageData as n}from"../../../../core/imageUtils.js";class o{constructor(e,t){this.parameters=e,this.fbos=t}}class a{constructor(e,t,r){this._rctx=e,this._renderFunctions=t,this._forceCameraHook=r,this.supersample=!0,this._screenshotQueue=new Array}destroy(){this._rctx=null}async takeScreenshot(t){await this._renderFunctions.prepareOverlay(),this._renderFunctions.requestRenderScene(0);const r=e();return this._screenshotQueue.push({settings:t,resolver:r}),r.promise}update(e,t){for(const r of this._screenshotQueue){if(null==this._rctx){r.resolver.reject();continue}const s={...r.settings,pixelRatio:r.settings.pixelRatio*e.parameters.camera.pixelRatio},i=this._renderScreenshot(e,s,t);r.resolver(i)}this._screenshotQueue.length=0}_renderScreenshotOverlay(e,t,r){e.width=t.width,e.height=t.height;const s=e.getContext("2d",{willReadFrequently:!0}),i=r.pixelRatio;return s.save(),s.translate(0,t.height),s.scale(1,-1),r.region&&s.translate(-r.region.x,-r.region.y),s.scale(i,i),t=this._renderFunctions.renderOverlay(e,r.disableDecorations,t),s.restore(),t}_readbackScreenshot(e,t){return e.resample?this._readbackScreenshotResampled({...e,resample:e.resample},t):this._readbackScreenshotImmediate(e,t)}_readbackScreenshotResampled(e,t){const{framebufferWidth:i,framebufferHeight:o,region:a,resample:h}=e,c=this._ensureScreenshotEncodeCanvas();let l=n(i,o,c);this._rctx.gl.readPixels(0,0,i,o,6408,s.UNSIGNED_BYTE,new Uint8Array(l.data.buffer)),t(),l=this._renderScreenshotOverlay(c,l,{...e,region:void 0});const d=n(a.width,a.height,c);return r(l,d,!0,h.region.x,o-(h.region.y+h.region.height),h.region.width,h.region.height)}_readbackScreenshotImmediate(e,t){const{framebufferHeight:r,region:i}=e,o=this._ensureScreenshotEncodeCanvas(),a=n(i.width,i.height,o);return this._rctx.gl.readPixels(i.x,r-(i.y+i.height),i.width,i.height,6408,s.UNSIGNED_BYTE,new Uint8Array(a.data.buffer)),t(),this._renderScreenshotOverlay(o,a,e)}_renderScreenshot(e,r,s){const n=e.parameters.camera,{framebufferWidth:o,framebufferHeight:a,ignorePadding:h,pixelRatio:c,disableDecorations:l,olidColor:d}=r,f={width:o,height:a};i(f,Math.min(this._rctx.parameters.maxTextureSize,this._rctx.parameters.maxRenderbufferSize));let u=!1;const m=f.width!==n.fullWidth||f.height!==n.fullHeight,g=h&&n.pixelRatio!==c,_=m||l||g||d;let p=null,b=null;if(_){const e=n.clone();if(h){const r=t(e.padding);for(let t=0;t<4;t++)r[t]=Math.round(r[t]/e.pixelRatio*c);e.padding=r}e.fullWidth=f.width,e.fullHeight=f.height,e.pixelRatio=c;const r=n.fovX-e.fovX,i=n.fovY-e.fovY;r<0&&r<i?e.fovX=n.fovX:i<0&&i<r&&(e.fovY=n.fovY);const o={camera:e,contentCamera:e,mode:2,alignPixelEnabled:!0,contentPixelRatio:e.pixelRatio};this._forceCameraHook(o),u=!0;const a=this._renderFunctions.renderScene(o,s,d?2:1,l);b=a.screen,p=a.olid}const x=()=>{this._rctx.bindFramebuffer(null),b?.release()};this._rctx.bindFramebuffer(b?.fbo);const v=this._readbackScreenshot(r,x);let S=null;if(d){const e=()=>{this._rctx.bindFramebuffer(null),p?.release()};this._rctx.bindFramebuffer(p?.fbo),S=this._readbackScreenshot(r,e),this._rctx.bindFramebuffer(null)}if(_&&!this._rctx.contextAttributes.alpha)for(let t=3;t<v.data.length;t+=4)v.data[t]=255;if(S&&!this._rctx.contextAttributes.alpha)for(let t=3;t<S.data.length;t+=4)S.data[t]=255;return u&&this._forceCameraHook(e.parameters),[v,S]}_ensureScreenshotEncodeCanvas(){return this._screenshotEncodeCanvas??=document.createElement("canvas"),this._screenshotEncodeCanvas}}export{o as ScreenshotContext,a as ScreenshotManager};
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{FloatPassUniform as t}from"../core/shaderModules/FloatPassUniform.js";import{glsl as a}from"../core/shaderModules/glsl.js";function e(e,r){const{attributes:m,varyings:o,vertex:d,fragment:
|
|
5
|
+
import{FloatPassUniform as t}from"../core/shaderModules/FloatPassUniform.js";import{glsl as a}from"../core/shaderModules/glsl.js";function e(e,r){if(!r.hasAnimation)return;const{attributes:m,varyings:o,vertex:d,fragment:n}=e;m.add("timeStamps","vec3"),o.add("vTimeStamp","float"),o.add("vFirstTime","float"),o.add("vLastTime","float"),d.main.add(a`vTimeStamp = timeStamps.x;
|
|
6
6
|
vFirstTime = timeStamps.y;
|
|
7
|
-
vLastTime = timeStamps.z;`)
|
|
7
|
+
vLastTime = timeStamps.z;`);const{animation:s}=r;3===s&&n.constants.add("decayRate","float",2.3),n.code.add(a`
|
|
8
8
|
float getTrailOpacity(float x) {
|
|
9
|
-
${i(
|
|
10
|
-
}`),
|
|
9
|
+
${i(s)}
|
|
10
|
+
}`),n.uniforms.add(new t("timeElapsed",t=>t.timeElapsed),new t("trailLength",t=>t.trailLength)).code.add(a`vec4 animate(vec4 color) {
|
|
11
11
|
float totalTimeWithTrail = vLastTime - vFirstTime + trailLength;
|
|
12
12
|
float timeAtHead = mod(timeElapsed - vFirstTime, totalTimeWithTrail) + vFirstTime;
|
|
13
13
|
float t = timeAtHead - vTimeStamp;
|
|
14
14
|
vec4 animatedColor = color * step(0.0, t);
|
|
15
15
|
animatedColor.a *= getTrailOpacity(t / trailLength);
|
|
16
16
|
return animatedColor;
|
|
17
|
-
}`)
|
|
17
|
+
}`)}function i(t){switch(t){case 2:return"return x >= 0.0 && x <= 1.0 ? 1.0 : 0.0;";case 3:return"float cutOff = exp(-decayRate);\n return (exp(-decayRate * x) - cutOff) / (1.0 - cutOff);";default:return"return 1.0;"}}export{e as AnimatedLine};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{
|
|
5
|
+
import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{a as t}from"../../../../chunks/AtmosphereCompositing.glsl.js";import{makePipelineState as s,defaultColorWrite as i,simpleBlendingParams as n}from"../../../webgl/renderState.js";class l extends r{constructor(r,s){super(r,s,new e(t,()=>import("./AtmosphereCompositing.glsl.js")),o)}initializePipeline(){return s({blending:n(770,771),depthTest:{func:519},colorWrite:i})}}export{l as AtmosphereCompositingTechnique};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as t,depthWrite as o,oitDepthTest as
|
|
5
|
+
import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as t,depthWrite as o,oitDepthTest as s,blending as n}from"../lib/OrderIndependentTransparency.js";import{PositionUvLayout as a}from"../materials/DefaultLayouts.js";import{C as i}from"../../../../chunks/CheckerBoard.glsl.js";import{makePipelineState as l,defaultColorWrite as c}from"../../../webgl/renderState.js";class p extends r{constructor(r,t){super(r,t,new e(i,()=>import("./CheckerBoard.glsl.js")),a.locations)}initializePipeline(e){const{oitPass:r,transparent:a,polygonOffset:i,output:p}=e,d=0===r,f=2===r;return l({blending:a?n(r):null,depthTest:{func:s(r)},depthWrite:o(e),drawBuffers:t(r,p),colorWrite:c,polygonOffset:d||f?i?u:null:{factor:-1,units:-25}})}}const u={factor:0,units:-25};export{p as CheckerBoardTechnique};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as t}from"tslib";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as r}from"../materials/DefaultTechniqueConfiguration.js";class o extends r{constructor(){super(...arguments),this.transparent=!1,this.writeDepth=!0,this.polygonOffset=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.textureCoordinateType=0,this.emissionSource=0,this.output=0,this.occlusionPass=!1,this.
|
|
5
|
+
import{__decorate as t}from"tslib";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as r}from"../materials/DefaultTechniqueConfiguration.js";class o extends r{constructor(){super(...arguments),this.transparent=!1,this.writeDepth=!0,this.polygonOffset=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.textureCoordinateType=0,this.emissionSource=0,this.output=0,this.occlusionPass=!1,this.olidColorInstanced=!1,this.overlayEnabled=!1,this.draped=!1,this.snowCover=!1}get discardInvisibleFragments(){return this.transparent&&this.writeDepth}}t([e()],o.prototype,"transparent",void 0),t([e()],o.prototype,"writeDepth",void 0),t([e()],o.prototype,"polygonOffset",void 0),t([e()],o.prototype,"terrainDepthTest",void 0),t([e()],o.prototype,"cullAboveTerrain",void 0);export{o as CheckerBoardTechniqueConfiguration};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ZEROS as e}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{
|
|
5
|
+
import{ZEROS as e}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{newLayout as r}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as o}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i,depthOnlyOutputBuffersOr as s}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as l}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as n,depthWrite as a,oitDepthTest as c,blending as u,getDrawBuffers as p}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as f,stencilBaseAllZerosParams as m,stencilWriteMaskOn as d}from"../lib/StencilUtils.js";import{VisualVariablePassParameters as h}from"../materials/VisualVariablePassParameters.js";import{C as j}from"../../../../chunks/ColorMaterial.glsl.js";import{makePipelineState as g,defaultColorWrite as P,cullingParams as b}from"../../../webgl/renderState.js";class S extends h{constructor(){super(...arguments),this.color=e}}class y extends i{constructor(e,r){super(e,r,new o(j,()=>import("./ColorMaterial.glsl.js")),v(r).locations)}_createPipeline(e,r){const{oitPass:o,output:i,transparent:l,cullFace:h,draped:j,hasOccludees:S,polygonOffset:y}=e,v=0===o;return g({blending:t(i)&&l?u(o):null,culling:b(h),depthTest:j?null:{func:c(o)},depthWrite:a(e),drawBuffers:s(i,p(o,i)),colorWrite:P,stencilWrite:S?d:null,stencilTest:S?r?f:m:null,polygonOffset:v?y?T:null:n(e)})}initializePipeline(e){return this._occludeePipelineState=this._createPipeline(e,!0),this._createPipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}}const T={factor:1,units:1};function v(e){const t=r().vec3f("position");return l()&&t.vec4u8("olidColor"),e.hasVVColor?t.f32("colorFeatureAttribute"):t.vec4u8("color"),t.freeze()}export{S as ColorMaterialPassParameters,y as ColorMaterialTechnique,v as getLayout};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as t}from"tslib";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as o}from"../materials/DefaultTechniqueConfiguration.js";class
|
|
5
|
+
import{__decorate as t}from"tslib";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as o}from"../materials/DefaultTechniqueConfiguration.js";class s extends o{constructor(){super(...arguments),this.cullFace=0,this.hasVertexColors=!1,this.transparent=!1,this.discardInvisibleFragments=!1,this.polygonOffset=!1,this.enableOffset=!0,this.writeDepth=!0,this.hasOccludees=!1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.hasVVColor=!1,this.draped=!1,this.textureCoordinateType=0,this.emissionSource=0,this.occlusionPass=!1,this.olidColorInstanced=!1,this.hasVVInstancing=!1,this.hasVVSize=!1,this.hasVVOpacity=!1,this.snowCover=!1}}t([e({count:3})],s.prototype,"cullFace",void 0),t([e()],s.prototype,"hasVertexColors",void 0),t([e()],s.prototype,"transparent",void 0),t([e()],s.prototype,"discardInvisibleFragments",void 0),t([e()],s.prototype,"polygonOffset",void 0),t([e()],s.prototype,"enableOffset",void 0),t([e()],s.prototype,"writeDepth",void 0),t([e()],s.prototype,"hasOccludees",void 0),t([e()],s.prototype,"terrainDepthTest",void 0),t([e()],s.prototype,"cullAboveTerrain",void 0),t([e()],s.prototype,"hasVVColor",void 0),t([e()],s.prototype,"draped",void 0);export{s as ColorMaterialTechniqueConfiguration};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{neverReached as e}from"../../../../core/compilerUtils.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{
|
|
5
|
+
import{neverReached as e}from"../../../../core/compilerUtils.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as i}from"../lib/DefaultVertexBufferLayouts.js";import{a as t}from"../../../../chunks/Compositing.glsl.js";import{makePipelineState as s,defaultColorWrite as l,premultipliedAlpha as c,unpremultipliedAlphaToPremultipliedAlpha as a}from"../../../webgl/renderState.js";class n extends o{constructor(e,o){super(e,o,new r(t,()=>import("./Compositing.glsl.js")),i)}initializePipeline(r){switch(r.blitMode){case 0:case 3:return s({colorWrite:l});case 1:return s({blending:a,colorWrite:l});default:e(r.blitMode);case 2:case 4:return s({blending:c,colorWrite:l})}}}export{n as CompositingTechnique};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ZEROS as e,freeze as t,create as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as s}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{
|
|
5
|
+
import{ZEROS as e,freeze as t,create as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as s}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{glLayout as r}from"../../support/buffer/glUtil.js";import{newLayout as o}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as l}from"../core/shaderLibrary/ShaderOutput.js";import{VertexNormalPassParameters as n,VertexNormalDrawParameters as a}from"../core/shaderLibrary/attributes/VertexNormal.glsl.js";import{ReloadableShaderModule as c}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as h,depthOnlyOutputBuffersOr as u}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as p}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as m,depthWrite as d,oitDepthTest as f,blending as v,getDrawBuffers as b}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as g,stencilBaseAllZerosParams as S,stencilWriteMaskOn as y}from"../lib/StencilUtils.js";import{getRenderInstanceDataLayout as j}from"../lib/lodRendering/RenderInstanceData.js";import{advancedMRRFactors as x}from"../materials/pbrUtils.js";import{D as C}from"../../../../chunks/DefaultMaterial.glsl.js";import{makePipelineState as P,cullingParams as T,defaultColorWrite as O}from"../../../webgl/renderState.js";import{fromLayouts as V}from"../../../webgl/VertexAttributeLocations.js";import{alphaCutoff as D}from"../../../../webscene/support/AlphaCutoff.js";class A extends n{constructor(){super(...arguments),this.isSchematic=!1,this.usePBR=!1,this.mrrFactors=x,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.doubleSided=!1,this.doubleSidedType="normal",this.cullFace=2,this.instanced=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.instanceColorEncodesAlphaIgnore=!1,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=e,this.instancedDoublePrecision=!1,this.normalType=0,this.receiveShadows=!0,this.receiveAmbientOcclusion=!0,this.castShadows=!0,this.ambient=t(.2,.2,.2),this.diffuse=t(.8,.8,.8),this.externalColor=s(1,1,1,1),this.colorMixMode="multiply",this.opacity=1,this.layerOpacity=1,this.origin=i(),this.hasSlicePlane=!1,this.offsetTransparentBackfaces=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.modelTransformation=null,this.drivenOpacity=!1,this.writeDepth=!0,this.customDepthTest=0,this.textureAlphaMode=0,this.textureAlphaCutoff=D,this.textureAlphaPremultiplied=!1,this.renderOccluded=1,this.isDecoration=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}class w extends a{constructor(){super(...arguments),this.origin=i(),this.slicePlaneLocalOrigin=this.origin}}class M extends h{constructor(e,t,i=new c(C,()=>import("./DefaultMaterial.glsl.js"))){const s=[r(F(t))];t.instanced&&t.instancedDoublePrecision&&s.push(r(j(t))),super(e,t,i,V(s))}_makePipeline(e,t){const{oitPass:i,output:s,transparent:r,cullFace:o,customDepthTest:n,hasOccludees:a}=e;return P({blending:l(s)&&r?v(i):null,culling:z(e)?T(o):null,depthTest:{func:f(i,k(n))},depthWrite:d(e),drawBuffers:u(s,b(i,s)),colorWrite:O,stencilWrite:a?y:null,stencilTest:a?t?g:S:null,polygonOffset:m(e)})}initializePipeline(e){return this._occludeePipelineState=this._makePipeline(e,!0),this._makePipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}}function k(e){return 1===e?515:513}function z(e){return 0!==e.cullFace||!e.hasSlicePlane&&(!e.transparent&&!e.doubleSidedMode)}function F(e){const t=o().vec3f("position");return 1===e.normalType?t.vec2i16("normalCompressed",{glNormalized:!0}):t.vec3f("normal"),e.hasVertexTangents&&t.vec4f("tangent"),e.hasTextures&&t.vec2f16("uv0"),e.hasVertexColors&&t.vec4u8("color"),e.hasSymbolColors&&t.vec4u8("symbolColor"),!e.instanced&&p()&&t.vec4u8("olidColor"),t}export{w as DefaultMaterialDrawParameters,A as DefaultMaterialPassParameters,M as DefaultMaterialTechnique,F as getLayout};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as
|
|
5
|
+
import{__decorate as t}from"tslib";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as o}from"../materials/DefaultTechniqueConfiguration.js";class s extends o{constructor(t){super(),this.spherical=t,this.alphaDiscardMode=1,this.doubleSidedMode=0,this.pbrMode=0,this.cullFace=0,this.normalType=0,this.customDepthTest=0,this.emissionSource=0,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.hasVerticalOffset=!1,this.hasColorTexture=!1,this.hasMetallicRoughnessTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.hasScreenSizePerspective=!1,this.hasVertexTangents=!1,this.hasOccludees=!1,this.instanced=!1,this.instancedDoublePrecision=!1,this.hasModelTransformation=!1,this.offsetBackfaces=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.receiveShadows=!1,this.receiveAmbientOcclusion=!1,this.textureAlphaPremultiplied=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.writeDepth=!0,this.transparent=!1,this.enableOffset=!0,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.snowCover=!1,this.hasBloom=!1,this.hasColorTextureTransform=!1,this.hasEmissionTextureTransform=!1,this.hasNormalTextureTransform=!1,this.hasOcclusionTextureTransform=!1,this.hasMetallicRoughnessTextureTransform=!1,this.occlusionPass=!1,this.useCustomDTRExponentForWater=!1,this.useFillLights=!0,this.draped=!1}get textureCoordinateType(){return this.hasTextures?1:0}get hasTextures(){return this.hasColorTexture||this.hasNormalTexture||this.hasMetallicRoughnessTexture||3===this.emissionSource||this.hasOcclusionTexture}get hasVVInstancing(){return this.instanced}get discardInvisibleFragments(){return this.transparent}}t([e({count:4})],s.prototype,"alphaDiscardMode",void 0),t([e({count:3})],s.prototype,"doubleSidedMode",void 0),t([e({count:7})],s.prototype,"pbrMode",void 0),t([e({count:3})],s.prototype,"cullFace",void 0),t([e({count:3})],s.prototype,"normalType",void 0),t([e({count:2})],s.prototype,"customDepthTest",void 0),t([e({count:4})],s.prototype,"emissionSource",void 0),t([e()],s.prototype,"hasVertexColors",void 0),t([e()],s.prototype,"hasSymbolColors",void 0),t([e()],s.prototype,"hasVerticalOffset",void 0),t([e()],s.prototype,"hasColorTexture",void 0),t([e()],s.prototype,"hasMetallicRoughnessTexture",void 0),t([e()],s.prototype,"hasOcclusionTexture",void 0),t([e()],s.prototype,"hasNormalTexture",void 0),t([e()],s.prototype,"hasScreenSizePerspective",void 0),t([e()],s.prototype,"hasVertexTangents",void 0),t([e()],s.prototype,"hasOccludees",void 0),t([e()],s.prototype,"instanced",void 0),t([e()],s.prototype,"instancedDoublePrecision",void 0),t([e()],s.prototype,"hasModelTransformation",void 0),t([e()],s.prototype,"offsetBackfaces",void 0),t([e()],s.prototype,"hasVVSize",void 0),t([e()],s.prototype,"hasVVColor",void 0),t([e()],s.prototype,"receiveShadows",void 0),t([e()],s.prototype,"receiveAmbientOcclusion",void 0),t([e()],s.prototype,"textureAlphaPremultiplied",void 0),t([e()],s.prototype,"instancedFeatureAttribute",void 0),t([e()],s.prototype,"instancedColor",void 0),t([e()],s.prototype,"writeDepth",void 0),t([e()],s.prototype,"transparent",void 0),t([e()],s.prototype,"enableOffset",void 0),t([e()],s.prototype,"terrainDepthTest",void 0),t([e()],s.prototype,"cullAboveTerrain",void 0),t([e()],s.prototype,"snowCover",void 0),t([e()],s.prototype,"hasBloom",void 0),t([e()],s.prototype,"hasColorTextureTransform",void 0),t([e()],s.prototype,"hasEmissionTextureTransform",void 0),t([e()],s.prototype,"hasNormalTextureTransform",void 0),t([e()],s.prototype,"hasOcclusionTextureTransform",void 0),t([e()],s.prototype,"hasMetallicRoughnessTextureTransform",void 0);export{s as DefaultMaterialTechniqueConfiguration};
|