@arcgis/core 5.2.0-next.63 → 5.2.0-next.64
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/arcade/Feature.js +1 -1
- package/arcade/ImmutableArray.js +1 -1
- package/arcade/ImmutablePathArray.js +1 -1
- package/arcade/ImmutablePointArray.js +1 -1
- package/arcade/Pixel.js +1 -1
- package/arcade/Voxel.js +1 -1
- package/arcade/arcadeAsyncRuntime.js +1 -1
- package/arcade/arcadeCompiler.js +1 -1
- package/arcade/arcadeRuntime.js +1 -1
- package/arcade/containerUtils.js +1 -1
- package/arcade/debug.js +1 -1
- package/arcade/deepClone.js +1 -1
- package/arcade/functions/convertdirection.js +1 -1
- package/arcade/functions/date.js +1 -1
- package/arcade/functions/feature.js +1 -1
- package/arcade/functions/featuresetbase.js +1 -1
- package/arcade/functions/featuresetgeom.js +1 -1
- package/arcade/functions/featuresetstats.js +1 -1
- package/arcade/functions/featuresetstring.js +1 -1
- package/arcade/functions/fieldStats.js +1 -1
- package/arcade/functions/geomasync.js +1 -1
- package/arcade/functions/geometry.js +1 -1
- package/arcade/functions/geomsync.js +1 -1
- package/arcade/functions/knowledgegraph.js +1 -1
- package/arcade/functions/maths.js +1 -1
- package/arcade/functions/stats.js +1 -1
- package/arcade/functions/string.js +1 -1
- package/arcade/functions/track.js +1 -1
- package/arcade/geometry/functions.js +1 -1
- package/arcade/languageUtils.js +1 -1
- package/arcade.js +1 -1
- package/arcgisGlobal.d.ts +9 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{44e64186318728d1be51.js → 067b00498ae85f635f60.js} +1 -1
- package/assets/esri/core/workers/chunks/0977f4d77c36175c2895.js +1 -0
- package/assets/esri/core/workers/chunks/{62f3ca0719ac6bc76512.js → 09c43bcb09aad02e83a9.js} +1 -1
- package/assets/esri/core/workers/chunks/0b20f92bae2b4c40d299.js +1 -0
- package/assets/esri/core/workers/chunks/0c3c311400ee352187ea.js +1 -0
- package/assets/esri/core/workers/chunks/0c582abc8d25249eb530.js +1 -0
- package/assets/esri/core/workers/chunks/0d6776055e9b34c14151.js +1 -0
- package/assets/esri/core/workers/chunks/0d7d54e74b5639a0be6e.js +1 -0
- package/assets/esri/core/workers/chunks/0da5b27b070ab780f8b3.js +1 -0
- package/assets/esri/core/workers/chunks/0e6b6fcc55cc43ede1fc.js +1 -0
- package/assets/esri/core/workers/chunks/{bcb5017500d144b73908.js → 126f1f6b355723db6c4f.js} +1 -1
- package/assets/esri/core/workers/chunks/12a64eca4c571926d9d4.js +1 -0
- package/assets/esri/core/workers/chunks/{b2c0262c4a76b8a86200.js → 149284464115981694ff.js} +1 -1
- package/assets/esri/core/workers/chunks/1642fa1263d8f4a45101.js +1 -0
- package/assets/esri/core/workers/chunks/1840d74ebae777a0200b.js +1 -0
- package/assets/esri/core/workers/chunks/19bf6826e7d9a4d52035.js +1 -0
- package/assets/esri/core/workers/chunks/1bfbdec791e19f5a2534.js +1 -0
- package/assets/esri/core/workers/chunks/1d8280f63a6698e74f20.js +1 -0
- package/assets/esri/core/workers/chunks/{a12803108c3b12808698.js → 242cad472fbc38b24dbc.js} +2 -2
- package/assets/esri/core/workers/chunks/25197ecb324d6f08e03e.js +1 -0
- package/assets/esri/core/workers/chunks/253c231b5a52f1d2d3a5.js +1 -0
- package/assets/esri/core/workers/chunks/25999b6f96ec305a7679.js +1 -0
- package/assets/esri/core/workers/chunks/259bdacfb7b0f866a8d0.js +1 -0
- package/assets/esri/core/workers/chunks/28565756f884d0851003.js +1 -0
- package/assets/esri/core/workers/chunks/2a5a165848413764381b.js +1 -0
- package/assets/esri/core/workers/chunks/2e7a5bb740281ef59199.js +1 -0
- package/assets/esri/core/workers/chunks/{285a5bd708f0fe1c620c.js → 2ea3ca68cfa4d34e8f3b.js} +1 -1
- package/assets/esri/core/workers/chunks/2f87a49bdd00f899d81d.js +1 -0
- package/assets/esri/core/workers/chunks/{37a95f097533bad1b338.js → 302d91b7c480c6c9304b.js} +1 -1
- package/assets/esri/core/workers/chunks/{3d6d2b42ba2ad7086d5d.js → 3b493e8043ec1a2a5d96.js} +1 -1
- package/assets/esri/core/workers/chunks/40e48b720d89cd067892.js +1 -0
- package/assets/esri/core/workers/chunks/{a833fc9250635eb4152f.js → 41f7f3615d3ecb87c59a.js} +1 -1
- package/assets/esri/core/workers/chunks/{95b3b8fe45ef4ac6b277.js → 450bc48a7389607bce1e.js} +1 -1
- package/assets/esri/core/workers/chunks/465a050fd838ee8eddf3.js +1 -0
- package/assets/esri/core/workers/chunks/{0d61c8d348b09179777a.js → 46d8a1d6f7341ad20749.js} +1 -1
- package/assets/esri/core/workers/chunks/4710f21b138a2c9a0345.js +1 -0
- package/assets/esri/core/workers/chunks/48a0dfaabb9b4bce4191.js +1 -0
- package/assets/esri/core/workers/chunks/49a3888bf9e2481642ac.js +1 -0
- package/assets/esri/core/workers/chunks/{4ee900e5dbb130fa0c7b.js → 4a40b894ec89b0a4f9bf.js} +1 -1
- package/assets/esri/core/workers/chunks/{d847c3cb2043a983145b.js → 4addea2e35b0c845743e.js} +1 -1
- package/assets/esri/core/workers/chunks/{e0a4d0288abd334b0673.js → 4ae626868e14bedd7fc5.js} +1 -1
- package/assets/esri/core/workers/chunks/529ee4670940720e888b.js +1 -0
- package/assets/esri/core/workers/chunks/{a3c882fe7599dc0f4f27.js → 59d1708ae13c6e7e6e55.js} +1 -1
- package/assets/esri/core/workers/chunks/59dd83e5aee2908c7eca.js +1 -0
- package/assets/esri/core/workers/chunks/{b8bdacebd4d24ba90f3f.js → 5fde1234c5cccaee6763.js} +1 -1
- package/assets/esri/core/workers/chunks/60f9b37dd738d884c48d.js +1 -0
- package/assets/esri/core/workers/chunks/6123894e2ae9233cdf89.js +1 -0
- package/assets/esri/core/workers/chunks/62c8413f3bbc1378273d.js +1 -0
- package/assets/esri/core/workers/chunks/6501ee40bf25f9f75d02.js +1 -0
- package/assets/esri/core/workers/chunks/663cf8bff17c894cd5f8.js +1 -0
- package/assets/esri/core/workers/chunks/6b536d03b4bef408035b.js +1 -0
- package/assets/esri/core/workers/chunks/6d1371b521c7f94fd77e.js +1 -0
- package/assets/esri/core/workers/chunks/6d5038d4351fe29e2718.js +1 -0
- package/assets/esri/core/workers/chunks/6f102c90908c9900cdaa.js +1 -0
- package/assets/esri/core/workers/chunks/6f39545710d1b35d922c.js +1 -0
- package/assets/esri/core/workers/chunks/7278fdf6bfcdffa10a7f.js +1 -0
- package/assets/esri/core/workers/chunks/72eb0ac55026a4f5d6a7.js +1 -0
- package/assets/esri/core/workers/chunks/73cb499d7d68c59ba34e.js +1 -0
- package/assets/esri/core/workers/chunks/{b8d788e110c212a879ab.js → 73f228d966b89c73c9e9.js} +1 -1
- package/assets/esri/core/workers/chunks/76bccc318d7cc33829a7.js +1 -0
- package/assets/esri/core/workers/chunks/{23a3d8f91caf3136b2aa.js → 771ead806efbe9c91fdc.js} +1 -1
- package/assets/esri/core/workers/chunks/777eafdb86b26b35c803.js +1 -0
- package/assets/esri/core/workers/chunks/7821aeba3e414b318a75.js +1 -0
- package/assets/esri/core/workers/chunks/78b80da3bbc1b608fe83.js +1 -0
- package/assets/esri/core/workers/chunks/7b531feba4fd662575f9.js +1 -0
- package/assets/esri/core/workers/chunks/7c57354d026e27e056d4.js +1 -0
- package/assets/esri/core/workers/chunks/7d163d9d90393e491ee5.js +1 -0
- package/assets/esri/core/workers/chunks/7d4c65311064a5c2e0b1.js +1 -0
- package/assets/esri/core/workers/chunks/{0474af7687466d8befd2.js → 7e2794705b4e679fcb3f.js} +1 -1
- package/assets/esri/core/workers/chunks/7ebbb90d80600d9ba889.js +1 -0
- package/assets/esri/core/workers/chunks/7f125963555dc1ce63ad.js +1 -0
- package/assets/esri/core/workers/chunks/{763cbb6716e398436a6d.js → 7f6eee102871769fdf8f.js} +1 -1
- package/assets/esri/core/workers/chunks/805c97b875d3066fb8df.js +1 -0
- package/assets/esri/core/workers/chunks/8566449c39eba55147f5.js +1 -0
- package/assets/esri/core/workers/chunks/86ed75b7169b8ee43025.js +1 -0
- package/assets/esri/core/workers/chunks/{9482a6d7baa24bbf5693.js → 89132395eca329b9ab92.js} +1 -1
- package/assets/esri/core/workers/chunks/{28bc5e8e82f188b30eb9.js → 894343e415639df88243.js} +1 -1
- package/assets/esri/core/workers/chunks/8b4759cef5ae5e43253b.js +1 -0
- package/assets/esri/core/workers/chunks/8ba4175f5e9a24ffecf7.js +1 -0
- package/assets/esri/core/workers/chunks/8be707044d992ef5f1d8.js +1 -0
- package/assets/esri/core/workers/chunks/{bd862382f72ebd446b46.js → 8d2cac1952e817daaf1f.js} +1 -1
- package/assets/esri/core/workers/chunks/8e38c5e63aae42bdf5a4.js +29 -0
- package/assets/esri/core/workers/chunks/{02ab09285a5c4ca98066.js → 8f785b722b1a131bf370.js} +1 -1
- package/assets/esri/core/workers/chunks/8f9874f42f21a4cb3acd.js +1 -0
- package/assets/esri/core/workers/chunks/90f4b81c6034253b70d7.js +1 -0
- package/assets/esri/core/workers/chunks/917c11cb40a7742d7f98.js +1 -0
- package/assets/esri/core/workers/chunks/93ab247ff34694ac60eb.js +1 -0
- package/assets/esri/core/workers/chunks/{6e45d0db97ffa4509177.js → 94bf7f0da6ad3f7ea277.js} +1 -1
- package/assets/esri/core/workers/chunks/9c57161ad48d8d546dc7.js +1 -0
- package/assets/esri/core/workers/chunks/{b2cf1d3f0d48eac23a84.js → 9c5dff4f13102871786e.js} +1 -1
- package/assets/esri/core/workers/chunks/9d0bda096cdbd7e22f4b.js +1 -0
- package/assets/esri/core/workers/chunks/9dfb7d120195991e9672.js +1 -0
- package/assets/esri/core/workers/chunks/9ed5e6b06afea6c85330.js +1 -0
- package/assets/esri/core/workers/chunks/{79b857bb301f9c4169d6.js → 9fee8441fbac9f723f77.js} +1 -1
- package/assets/esri/core/workers/chunks/a108f276659d5f25352c.js +1 -0
- package/assets/esri/core/workers/chunks/a2d8bc0efddd2e13b1ad.js +1 -0
- package/assets/esri/core/workers/chunks/{b32ede7805c7c6644e4c.js → a3bf8aa81ee398da5b52.js} +1 -1
- package/assets/esri/core/workers/chunks/{5b30231ae0a8f4b8435f.js → a504fa17d83facf1c01f.js} +1 -1
- package/assets/esri/core/workers/chunks/{538fe46dfd685a490e23.js → a7f42ada0aa69873a938.js} +1 -1
- package/assets/esri/core/workers/chunks/a97e0b9b057664911c14.js +1 -0
- package/assets/esri/core/workers/chunks/{cb58aff1ff186fa18345.js → a9f616f22042b0dce8b9.js} +1 -1
- package/assets/esri/core/workers/chunks/afd63c18ce4656271c8e.js +1 -0
- package/assets/esri/core/workers/chunks/{f04cb48fc73635d0572f.js → b059dabb1c732829487c.js} +1 -1
- package/assets/esri/core/workers/chunks/b313464b987db8a3987a.js +1 -0
- package/assets/esri/core/workers/chunks/b318823aefcefad6fad5.js +1 -0
- package/assets/esri/core/workers/chunks/b378e504a5b1afc8d0ce.js +1 -0
- package/assets/esri/core/workers/chunks/{9fb87a7dba62b527c0ba.js → b3a1a93c6dc9247cb048.js} +1 -1
- package/assets/esri/core/workers/chunks/b5397dc03fa0bd654ba6.js +1 -0
- package/assets/esri/core/workers/chunks/b5b698008b8f3f4d5d61.js +1 -0
- package/assets/esri/core/workers/chunks/b7bcb31737b01d7736d0.js +1 -0
- package/assets/esri/core/workers/chunks/b9a1046ca2cd0cca5da5.js +1 -0
- package/assets/esri/core/workers/chunks/{cda04571d7623c17ada2.js → b9c7aa04861f545a559c.js} +1 -1
- package/assets/esri/core/workers/chunks/{7df795bc4fa1d433463b.js → ba030767cf935f967454.js} +1 -1
- package/assets/esri/core/workers/chunks/{53d165b4f30fd64e5d8a.js → bd311c85437743cf7d2f.js} +1 -1
- package/assets/esri/core/workers/chunks/bd88228f781a0399d8bd.js +1 -0
- package/assets/esri/core/workers/chunks/bfb626805405646a0419.js +1 -0
- package/assets/esri/core/workers/chunks/{e65ee26feca0564aeb9b.js → c1e45e24f5ef719a714c.js} +18 -18
- package/assets/esri/core/workers/chunks/c203df41f9d2e4b80889.js +1 -0
- package/assets/esri/core/workers/chunks/{278409028bc5af45b507.js → c4c83b5129c279c3615b.js} +1 -1
- package/assets/esri/core/workers/chunks/c6ef0636073e28350c91.js +1 -0
- package/assets/esri/core/workers/chunks/c7e391df714839484cd1.js +1 -0
- package/assets/esri/core/workers/chunks/cded485ad893a7dd2948.js +1 -0
- package/assets/esri/core/workers/chunks/{1cf8fb704c48ac3d3b15.js → cf360767310fb45660a8.js} +1 -1
- package/assets/esri/core/workers/chunks/{8f2fecd8a0a972d68590.js → cf8ce63711488f2e677c.js} +1 -1
- package/assets/esri/core/workers/chunks/d214ac457ac970479536.js +1 -0
- package/assets/esri/core/workers/chunks/d4058352db1e8255b52e.js +1 -0
- package/assets/esri/core/workers/chunks/d4d385d19e62ef1c286f.js +1 -0
- package/assets/esri/core/workers/chunks/d4f005dadba75422b401.js +1 -0
- package/assets/esri/core/workers/chunks/{52c4b4dabcb0d162be72.js → d5e15021928e95c11463.js} +1 -1
- package/assets/esri/core/workers/chunks/{fc639c730115e07a4a1a.js → d6500f6b2ff115d9eb09.js} +1 -1
- package/assets/esri/core/workers/chunks/e1492d2404c3ed82931e.js +1 -0
- package/assets/esri/core/workers/chunks/e34ed3b818b2eb4116c5.js +1 -0
- package/assets/esri/core/workers/chunks/e7149d23615fee31ab7e.js +1 -0
- package/assets/esri/core/workers/chunks/ec774f5d6ea5c29536e5.js +1 -0
- package/assets/esri/core/workers/chunks/ed71a4e353715db0a6e9.js +1 -0
- package/assets/esri/core/workers/chunks/{3f775deea48e268411f1.js → ef27bf1d7941ae265ca4.js} +1 -1
- package/assets/esri/core/workers/chunks/{1e342d532925569daadb.js → f475672ff4c2ec9367c2.js} +1 -1
- package/assets/esri/core/workers/chunks/{cc414fd2e313d89d524d.js → f54eba484f40d5eeb590.js} +1 -1
- package/assets/esri/core/workers/chunks/{04ffe788d2efc0a076dd.js → f5c9659fc5d571d501c9.js} +1 -1
- package/assets/esri/core/workers/chunks/f622b27ebdf1c918fd6d.js +1 -0
- package/assets/esri/core/workers/chunks/{dd95f50dac3f33cdb6d2.js → f6a13f07a5f7b781a9a8.js} +1 -1
- package/assets/esri/core/workers/chunks/{d849bdaf5bdfdc37531a.js → f6f7d885b4d6080e3f58.js} +1 -1
- package/assets/esri/core/workers/chunks/f8b8d3d2710c83acccf3.js +1 -0
- package/assets/esri/core/workers/chunks/f95870bb4d8e4e13e69e.js +1 -0
- package/assets/esri/core/workers/chunks/fa59f10ed0f182a2a7f3.js +1 -0
- package/assets/esri/core/workers/chunks/faa55265020591fd2224.js +1 -0
- package/assets/esri/core/workers/chunks/fc827f58db3194922056.js +1 -0
- package/chunks/_commonjsHelpers.js +1 -1
- package/chunks/aiServices.js +1 -1
- package/chunks/array.js +1 -1
- package/chunks/languageUtils.js +1 -1
- package/config.js +1 -1
- package/form/ExpressionInfo.d.ts +1 -1
- package/form/ExpressionInfo.js +1 -1
- package/form/elements/FieldElement.d.ts +3 -2
- package/form/elements/inputs/ComboBoxInput.d.ts +4 -15
- package/form/elements/inputs/ComboBoxInput.js +1 -1
- package/form/elements/inputs/DynamicChoiceInput.d.ts +31 -0
- package/form/elements/inputs/DynamicChoiceInput.js +2 -0
- package/form/elements/inputs/Input.d.ts +1 -1
- package/form/elements/inputs/RadioButtonsInput.d.ts +4 -15
- package/form/elements/inputs/RadioButtonsInput.js +1 -1
- package/form/elements/inputs/SingleChoiceInput.d.ts +18 -0
- package/form/elements/inputs/SingleChoiceInput.js +2 -0
- package/form/elements/inputs.d.ts +11 -2
- package/form/elements/inputs.js +1 -1
- package/geometry/support/normalizeUtils.d.ts +1 -1
- package/kernel.js +1 -1
- package/layers/ImageryTileLayer.d.ts +1 -1
- package/layers/RouteLayer.d.ts +1 -1
- package/layers/mixins/ArcGISImageService.d.ts +24 -24
- package/layers/mixins/TiledImagery.d.ts +1 -1
- package/layers/orientedImagery/transformations/rectifyMapPoint.js +1 -1
- package/layers/video/VideoController.js +1 -1
- package/networks/support/CircuitExportJobInfo.d.ts +1 -1
- package/networks/support/CircuitVerifyJobInfo.d.ts +1 -1
- package/networks/support/TopologyValidationJobInfo.d.ts +1 -1
- package/networks/support/TraceJobInfo.d.ts +1 -1
- package/package.json +2 -2
- package/portal/jsonTypes.d.ts +1 -1
- package/rest/closestFacility.d.ts +1 -1
- package/rest/find.d.ts +1 -1
- package/rest/geometryService.d.ts +21 -21
- package/rest/geoprocessor.d.ts +2 -2
- package/rest/identify.d.ts +1 -1
- package/rest/imageService.d.ts +19 -19
- package/rest/lastMileDelivery.d.ts +8 -8
- package/rest/locator.d.ts +4 -4
- package/rest/networkService.d.ts +1 -1
- package/rest/networks/queryAssociations.d.ts +1 -1
- package/rest/networks/synthesizeAssociationGeometries.d.ts +1 -1
- package/rest/networks/trace.d.ts +1 -1
- package/rest/networks/traverseAssociations.d.ts +1 -1
- package/rest/places.d.ts +3 -3
- package/rest/print.d.ts +1 -1
- package/rest/query.d.ts +11 -11
- package/rest/route.d.ts +1 -1
- package/rest/serviceArea.d.ts +1 -1
- package/rest/support/JobInfo.d.ts +5 -5
- package/rest/symbolService.d.ts +1 -1
- package/support/revision.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightReshapeTool3D.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayerConstants.js +1 -1
- package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathEvaluate.glsl.js +49 -32
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexInfo.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +23 -23
- package/views/3d/webgl-engine/lib/GaussianSplatRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/PathBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathEvaluator.js +1 -1
- package/views/3d/webgl-engine/lib/PathExtruder.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
- package/views/draw/support/InteractiveHandle.js +1 -1
- package/views/draw/support/managers/SurfaceManager.js +1 -1
- package/views/interactive/Tooltip.d.ts +3 -3
- package/views/interactive/Tooltip.js +1 -1
- package/views/interactive/options/ElevationOptions.d.ts +20 -0
- package/views/interactive/options/ElevationOptions.js +2 -0
- package/views/interactive/options/LabelOptions.d.ts +74 -0
- package/views/interactive/options/LabelOptions.js +2 -0
- package/views/interactive/options/SnappingOptions.d.ts +157 -0
- package/views/interactive/options/SnappingOptions.js +2 -0
- package/views/interactive/options/TooltipOptions.d.ts +152 -0
- package/views/interactive/options/TooltipOptions.js +2 -0
- package/views/interactive/options/TooltipVisibleElements.d.ts +105 -0
- package/views/interactive/options/TooltipVisibleElements.js +2 -0
- package/views/interactive/options/ValueOptions.d.ts +63 -0
- package/views/interactive/options/ValueOptions.js +2 -0
- package/views/interactive/sketch/SketchLabelOptions.d.ts +7 -9
- package/views/interactive/sketch/SketchLabelOptions.js +1 -1
- package/views/interactive/sketch/SketchTooltipElevationOptions.js +1 -1
- package/views/interactive/sketch/SketchTooltipOptions.d.ts +8 -50
- package/views/interactive/sketch/SketchTooltipOptions.js +1 -1
- package/views/interactive/sketch/SketchTooltipVisibleElements.d.ts +10 -95
- package/views/interactive/sketch/SketchTooltipVisibleElements.js +1 -1
- package/views/interactive/sketch/SketchValueOptions.d.ts +7 -45
- package/views/interactive/sketch/SketchValueOptions.js +1 -1
- package/views/interactive/sketch/Units.d.ts +10 -29
- package/views/interactive/sketch/Units.js +1 -1
- package/views/interactive/snapping/SnappingOptions.d.ts +7 -78
- package/views/interactive/snapping/SnappingOptions.js +1 -1
- package/views/interactive/support/Units.d.ts +33 -0
- package/views/interactive/support/Units.js +2 -0
- package/views/interactive/support/types.d.ts +33 -0
- package/views/interactive/tooltip/types.d.ts +6 -2
- package/assets/esri/core/workers/chunks/02dd79beb13eff6be85e.js +0 -1
- package/assets/esri/core/workers/chunks/0623acb2bd14a61b65c9.js +0 -29
- package/assets/esri/core/workers/chunks/069b6d8bdb34ee88d437.js +0 -1
- package/assets/esri/core/workers/chunks/0790bf0eb276cd9166f6.js +0 -1
- package/assets/esri/core/workers/chunks/08c2bf9defcece9e049a.js +0 -1
- package/assets/esri/core/workers/chunks/0ae0483b72f5e8d00d55.js +0 -1
- package/assets/esri/core/workers/chunks/0d1224693a62a26a0e72.js +0 -1
- package/assets/esri/core/workers/chunks/10b367563f894ceb9864.js +0 -1
- package/assets/esri/core/workers/chunks/11e00ca5ac1b004f4ecc.js +0 -1
- package/assets/esri/core/workers/chunks/13033178de9f637a2356.js +0 -1
- package/assets/esri/core/workers/chunks/13c893e448bedc5c1cef.js +0 -1
- package/assets/esri/core/workers/chunks/14cd8bb1ad4da8d1d2ca.js +0 -1
- package/assets/esri/core/workers/chunks/15c2d9bec0455fc363a9.js +0 -1
- package/assets/esri/core/workers/chunks/246cd372d4184233f48e.js +0 -1
- package/assets/esri/core/workers/chunks/268ab65afc3fce775ad2.js +0 -1
- package/assets/esri/core/workers/chunks/279a9a38b04a21cdfd11.js +0 -1
- package/assets/esri/core/workers/chunks/2a1c6df073e6ca6a6365.js +0 -1
- package/assets/esri/core/workers/chunks/3406a01dad6338e3c548.js +0 -1
- package/assets/esri/core/workers/chunks/36781219ca9ba5d7fe52.js +0 -1
- package/assets/esri/core/workers/chunks/36999a2e383c8eb3c398.js +0 -1
- package/assets/esri/core/workers/chunks/36f8a912842181e1f0aa.js +0 -1
- package/assets/esri/core/workers/chunks/3f1a7f8a9ead64bf0b7b.js +0 -1
- package/assets/esri/core/workers/chunks/41e821ce229bc56dc1a1.js +0 -1
- package/assets/esri/core/workers/chunks/456e616f32e7de696d38.js +0 -1
- package/assets/esri/core/workers/chunks/478540265c86436da05e.js +0 -1
- package/assets/esri/core/workers/chunks/479f486ec1797629ec70.js +0 -1
- package/assets/esri/core/workers/chunks/484b3e2a220c440ccbb4.js +0 -1
- package/assets/esri/core/workers/chunks/4a340836ddbc856993f2.js +0 -1
- package/assets/esri/core/workers/chunks/54b9667450d066c6f6ce.js +0 -1
- package/assets/esri/core/workers/chunks/57b07448da06d0302a46.js +0 -1
- package/assets/esri/core/workers/chunks/5a9ff50fdcc99ae28cce.js +0 -1
- package/assets/esri/core/workers/chunks/5dc17b76c6ecc24e7b9a.js +0 -1
- package/assets/esri/core/workers/chunks/5e3d5347223f0111f40f.js +0 -1
- package/assets/esri/core/workers/chunks/5eb6f37c74a217772eca.js +0 -1
- package/assets/esri/core/workers/chunks/6210fb6cd31844f23964.js +0 -1
- package/assets/esri/core/workers/chunks/638ed1297efdb24f4711.js +0 -1
- package/assets/esri/core/workers/chunks/63ede7295938f7010808.js +0 -1
- package/assets/esri/core/workers/chunks/661a59133ae34f172174.js +0 -1
- package/assets/esri/core/workers/chunks/687cf21e027f49b44d22.js +0 -1
- package/assets/esri/core/workers/chunks/6c2b5087a9df65267f4e.js +0 -1
- package/assets/esri/core/workers/chunks/6d247ff53421d27628ce.js +0 -1
- package/assets/esri/core/workers/chunks/700c08dd2e734c15e621.js +0 -1
- package/assets/esri/core/workers/chunks/70452f6d63e9be8d03dd.js +0 -1
- package/assets/esri/core/workers/chunks/733b2e181683d5fc7c95.js +0 -1
- package/assets/esri/core/workers/chunks/7659391f952d134164cf.js +0 -1
- package/assets/esri/core/workers/chunks/7889f4a17cf249f2acc5.js +0 -1
- package/assets/esri/core/workers/chunks/7a2dcd57849048c6e00d.js +0 -1
- package/assets/esri/core/workers/chunks/7a2dfa42610fe8414ed7.js +0 -1
- package/assets/esri/core/workers/chunks/7ce52b850dd785bfa33f.js +0 -1
- package/assets/esri/core/workers/chunks/7fdd6a5fa062778be55d.js +0 -1
- package/assets/esri/core/workers/chunks/81accb1820e2735fa376.js +0 -1
- package/assets/esri/core/workers/chunks/8210fc9e072209e26fa9.js +0 -1
- package/assets/esri/core/workers/chunks/8369edafab7bdc59b95a.js +0 -1
- package/assets/esri/core/workers/chunks/84fa102a93b2144c28fb.js +0 -1
- package/assets/esri/core/workers/chunks/85ce7673d42526a79fd2.js +0 -1
- package/assets/esri/core/workers/chunks/8722e2790272e90a1897.js +0 -1
- package/assets/esri/core/workers/chunks/8a1970e68bc1e833cb7f.js +0 -1
- package/assets/esri/core/workers/chunks/8bb20ef549ec1c86b38e.js +0 -1
- package/assets/esri/core/workers/chunks/8c535c6a39d2be2ed655.js +0 -1
- package/assets/esri/core/workers/chunks/92696cce2b980373f9ad.js +0 -1
- package/assets/esri/core/workers/chunks/98b27cf8acbfa4259758.js +0 -1
- package/assets/esri/core/workers/chunks/9a6208ab670ad74e6f7d.js +0 -1
- package/assets/esri/core/workers/chunks/a09ce34fc7c8abe64ed5.js +0 -1
- package/assets/esri/core/workers/chunks/a10f63a08d976be058be.js +0 -1
- package/assets/esri/core/workers/chunks/a5f058567419ea70dff6.js +0 -1
- package/assets/esri/core/workers/chunks/a965d151515b76dd7566.js +0 -1
- package/assets/esri/core/workers/chunks/afeeb11b39e140303b5a.js +0 -1
- package/assets/esri/core/workers/chunks/b5c7813495657f844171.js +0 -1
- package/assets/esri/core/workers/chunks/b7170816736769d3b7b0.js +0 -1
- package/assets/esri/core/workers/chunks/b8e5d7aefddddbd0a10c.js +0 -1
- package/assets/esri/core/workers/chunks/b958f87f23f984131d09.js +0 -1
- package/assets/esri/core/workers/chunks/b9f40681af1fa00b5bbe.js +0 -1
- package/assets/esri/core/workers/chunks/c4c25db769a78e677e33.js +0 -1
- package/assets/esri/core/workers/chunks/c85ba0700eafdc8d6f9e.js +0 -1
- package/assets/esri/core/workers/chunks/ca118c42c0f609ca7912.js +0 -1
- package/assets/esri/core/workers/chunks/cb17cd8aaf77238c0236.js +0 -1
- package/assets/esri/core/workers/chunks/d03f427442bb0c287d05.js +0 -1
- package/assets/esri/core/workers/chunks/d08d3c6f21e6ba8268ca.js +0 -1
- package/assets/esri/core/workers/chunks/d37a72111dffc4c4db70.js +0 -1
- package/assets/esri/core/workers/chunks/d41ab2abcfacc87809b5.js +0 -1
- package/assets/esri/core/workers/chunks/d4ed094962a41d756c95.js +0 -1
- package/assets/esri/core/workers/chunks/d51c41c1944df0cbab3e.js +0 -1
- package/assets/esri/core/workers/chunks/d83ea3e4e9ab45334068.js +0 -1
- package/assets/esri/core/workers/chunks/d9b83d7dd7d1f7729a91.js +0 -1
- package/assets/esri/core/workers/chunks/dbcec48c4ba104a6d0b5.js +0 -1
- package/assets/esri/core/workers/chunks/dc24e80d061f7b063608.js +0 -1
- package/assets/esri/core/workers/chunks/df30053a10d4930924d5.js +0 -1
- package/assets/esri/core/workers/chunks/e5bb7ee670a3ba5ba3fe.js +0 -1
- package/assets/esri/core/workers/chunks/e5c75459de85a6dd2f14.js +0 -1
- package/assets/esri/core/workers/chunks/e798ca23f02a2dd65bd4.js +0 -1
- package/assets/esri/core/workers/chunks/f1299b4fc760ccca1518.js +0 -1
- package/assets/esri/core/workers/chunks/f65adaaa33d9f3b131f6.js +0 -1
- package/assets/esri/core/workers/chunks/f6715b8765cd36d81ec8.js +0 -1
- package/assets/esri/core/workers/chunks/f7fa932ade85cb2847b6.js +0 -1
- package/assets/esri/core/workers/chunks/f9a4f4efd63b8189a4eb.js +0 -1
- package/assets/esri/core/workers/chunks/f9b654f801cb416e9e17.js +0 -1
- package/assets/esri/core/workers/chunks/fa1c58e5b582d61a03ab.js +0 -1
- package/assets/esri/core/workers/chunks/fdec3a2e100688c42e41.js +0 -1
- package/assets/esri/core/workers/chunks/fefbde2c2e527bb716ee.js +0 -1
- /package/assets/esri/core/workers/chunks/{a12803108c3b12808698.js.LICENSE.txt → 242cad472fbc38b24dbc.js.LICENSE.txt} +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{freeze as e}from"../../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{pathNumRoundCapExtrusionSubdivisions as
|
|
2
|
+
import{freeze as e}from"../../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{pathNumJoinSubdivisions as t,pathNumRoundCapExtrusionSubdivisions as r}from"../../../../layers/graphics/Graphics3DPathSymbolLayerConstants.js";import{PathVertexInfo as o}from"./PathVertexInfo.glsl.js";import{PiUtils as a}from"../shading/PiUtils.glsl.js";import{Float2sPassUniform as i}from"../../shaderModules/Float2sPassUniform.js";import{Float4sPassUniform as s}from"../../shaderModules/Float4sPassUniform.js";import{FloatPassUniform as n}from"../../shaderModules/FloatPassUniform.js";import{glsl as l,If as p}from"../../shaderModules/glsl.js";import{IntegersPassUniform as f}from"../../shaderModules/IntegersPassUniform.js";import{pathProfileUniformLayout as c}from"../../../lib/PathProfile.js";function d(e,d){const{vertex:x}=e;e.include(o,d);const u=1===d.upVectorAlignment;x.uniforms.add(new n("angleCutoff",e=>e.cutoffAngle)),x.code.add(l`float reciprocalClamped(float value) {
|
|
3
3
|
float signValue = value < 0.0 ? -1.0 : 1.0;
|
|
4
4
|
return signValue / max(abs(value), 1e-6);
|
|
5
|
-
}`),u?
|
|
5
|
+
}`),u?x.code.add(l`vec2 applyMiterStretch(vec2 vertex, float rotationAngle, vec2 rotationRight) {
|
|
6
6
|
if (rotationAngle == 0.0) {
|
|
7
7
|
return vertex;
|
|
8
8
|
}
|
|
@@ -14,13 +14,13 @@ mat2 miterStretch = mat2(
|
|
|
14
14
|
1. + (k - 1.) * rotationRight.y * rotationRight.y
|
|
15
15
|
);
|
|
16
16
|
return miterStretch * vertex;
|
|
17
|
-
}`):
|
|
17
|
+
}`):x.code.add(l`vec2 applyMiterStretch(vec2 vertex, float rotationAngle) {
|
|
18
18
|
if (rotationAngle == 0.0) {
|
|
19
19
|
return vertex;
|
|
20
20
|
}
|
|
21
21
|
float k = reciprocalClamped(cos(0.5 * rotationAngle));
|
|
22
22
|
return vec2(k, 1.) * vertex;
|
|
23
|
-
}`);const{vertexCount:v,indexCount:h,poleCount:g}=c[d.pathProfileType];switch(
|
|
23
|
+
}`);const{vertexCount:v,indexCount:h,poleCount:g}=c[d.pathProfileType];switch(x.uniforms.add(new i("pathProfileVertices",v,e=>e.profile.vertices.flat()),new i("pathProfileNormals",v,e=>e.profile.normals.flat())),x.code.add(l`mat3 mat3FromRotation(float angle, vec3 axis) {
|
|
24
24
|
float x = axis.x;
|
|
25
25
|
float y = axis.y;
|
|
26
26
|
float z = axis.z;
|
|
@@ -32,12 +32,13 @@ x * x * t + c, y * x * t + z * s, z * x * t - y * s,
|
|
|
32
32
|
x * y * t - z * s, y * y * t + c, z * y * t + x * s,
|
|
33
33
|
x * z * t + y * s, y * z * t - x * s, z * z * t + c
|
|
34
34
|
);
|
|
35
|
-
}`),
|
|
35
|
+
}`),x.code.add(l`struct ExtrusionFrame {
|
|
36
36
|
vec3 up;
|
|
37
37
|
vec3 right;
|
|
38
38
|
};
|
|
39
39
|
struct ExtrudedVertex {
|
|
40
|
-
ExtrusionFrame
|
|
40
|
+
ExtrusionFrame positionFrame;
|
|
41
|
+
ExtrusionFrame normalFrame;
|
|
41
42
|
vec2 profileVertex;
|
|
42
43
|
vec2 profileNormal;
|
|
43
44
|
vec2 rotationRight;
|
|
@@ -45,20 +46,22 @@ float maxDistance;
|
|
|
45
46
|
float capPositionOffset;
|
|
46
47
|
float capNormalOffset;
|
|
47
48
|
bool isCap;
|
|
48
|
-
};`),u?
|
|
49
|
+
};`),u?x.code.add(l`vec2 getPathRotationRight(ExtrusionFrame frame) {
|
|
49
50
|
vec3 rotationUp = getFrameRotationUp();
|
|
50
51
|
float a = dot(rotationUp, frame.up);
|
|
51
52
|
float b = dot(rotationUp, frame.right);
|
|
52
53
|
vec3 vertex = normalize(frame.up * -b + frame.right * a);
|
|
53
54
|
return vec2(dot(vertex, frame.right), dot(vertex, frame.up));
|
|
54
|
-
}`):
|
|
55
|
+
}`):x.code.add(l`vec2 getPathRotationRight() {
|
|
55
56
|
return vec2(1., 0.);
|
|
56
|
-
}`),
|
|
57
|
+
}`),2===d.pathJoinType&&x.constants.add("numJoinSubdivisions","float",t),x.code.add(l`
|
|
57
58
|
ExtrudedVertex evaluateJoinVertex(PathVertexDescriptor vertexDescriptor, ExtrusionFrame frame) {
|
|
59
|
+
ExtrusionFrame positionFrame = frame;
|
|
60
|
+
ExtrusionFrame subdivisionFrame = frame;
|
|
58
61
|
vec2 profileVertex = pathProfileVertices[vertexDescriptor.sourceIndex];
|
|
59
62
|
vec2 profileNormal = pathProfileNormals[vertexDescriptor.sourceIndex];
|
|
60
63
|
float profileRotation = getProfileRotation();
|
|
61
|
-
vec2 rotationRight = getPathRotationRight(${
|
|
64
|
+
vec2 rotationRight = getPathRotationRight(${p(u,l`frame`)});
|
|
62
65
|
bool isBevel = abs(profileRotation) >= angleCutoff;
|
|
63
66
|
|
|
64
67
|
// determine if the current profile vertex is on the inside or outside of the rotationAxis
|
|
@@ -68,32 +71,41 @@ return vec2(1., 0.);
|
|
|
68
71
|
|
|
69
72
|
bool isBevelBend = isBevel && isBend;
|
|
70
73
|
|
|
74
|
+
float subdivisionRotation = ${p(2===d.pathJoinType,l`(-0.5 + float(vertexDescriptor.subdivision) / numJoinSubdivisions) * profileRotation`,l`(-0.5 + float(vertexDescriptor.subdivision / 2u)) * profileRotation`)};
|
|
75
|
+
if (subdivisionRotation != 0.) {
|
|
76
|
+
mat3 subdivisionTransform = mat3FromRotation(subdivisionRotation, getFrameRotationUp());
|
|
77
|
+
${p(u,l`subdivisionFrame.up = normalize(subdivisionTransform * subdivisionFrame.up);`)}
|
|
78
|
+
subdivisionFrame.right = normalize(subdivisionTransform * subdivisionFrame.right);
|
|
79
|
+
}
|
|
80
|
+
|
|
71
81
|
if (isBevelBend) {
|
|
72
|
-
|
|
73
|
-
// rotate half rotation angle backwards to where the rotation starts
|
|
74
|
-
// and then rotate a couple of times depending on the current subdivision segment
|
|
75
|
-
float bendRotation = -profileRotation * 0.5 + (k * profileRotation) / float(numJoinSubdivisions);
|
|
76
|
-
if (bendRotation != 0.) {
|
|
77
|
-
vec3 rotationUp = getFrameRotationUp();
|
|
78
|
-
mat3 transform = mat3FromRotation(bendRotation, rotationUp);
|
|
79
|
-
${s(u,n`frame.up = normalize(transform * frame.up);`)}
|
|
80
|
-
frame.right = normalize(transform * frame.right);
|
|
81
|
-
}
|
|
82
|
+
positionFrame = subdivisionFrame;
|
|
82
83
|
} else {
|
|
83
84
|
profileVertex = applyMiterStretch(
|
|
84
85
|
profileVertex,
|
|
85
|
-
profileRotation${
|
|
86
|
+
profileRotation${p(u,l`,
|
|
86
87
|
rotationRight`)}
|
|
87
88
|
);
|
|
88
89
|
}
|
|
89
90
|
|
|
91
|
+
${p(2===d.pathJoinType,l`
|
|
92
|
+
ExtrusionFrame normalFrame = subdivisionFrame;
|
|
93
|
+
`,l`
|
|
94
|
+
ExtrusionFrame normalFrame;
|
|
95
|
+
if (isBevelBend && (vertexDescriptor.subdivision == 1u || vertexDescriptor.subdivision == 2u)) {
|
|
96
|
+
normalFrame = frame;
|
|
97
|
+
} else {
|
|
98
|
+
normalFrame = subdivisionFrame;
|
|
99
|
+
}`)};
|
|
100
|
+
|
|
90
101
|
rotationRight = isBend ? vec2(0.) : rotationRight;
|
|
91
102
|
float maxDistance = isBend
|
|
92
103
|
? 0.
|
|
93
104
|
: getMaxStretchDistance();
|
|
94
105
|
|
|
95
106
|
return ExtrudedVertex(
|
|
96
|
-
|
|
107
|
+
positionFrame,
|
|
108
|
+
normalFrame,
|
|
97
109
|
profileVertex,
|
|
98
110
|
profileNormal,
|
|
99
111
|
rotationRight,
|
|
@@ -103,14 +115,15 @@ return vec2(1., 0.);
|
|
|
103
115
|
false
|
|
104
116
|
);
|
|
105
117
|
}
|
|
106
|
-
`),
|
|
118
|
+
`),x.code.add(l`
|
|
107
119
|
ExtrudedVertex evaluateConnectingVertex(PathVertexDescriptor vertexDescriptor, ExtrusionFrame frame) {
|
|
108
120
|
vec2 profileVertex = pathProfileVertices[vertexDescriptor.sourceIndex];
|
|
109
121
|
vec2 profileNormal = pathProfileNormals[vertexDescriptor.sourceIndex];
|
|
110
122
|
|
|
111
|
-
float profilePlaneVertexOffset = ${
|
|
123
|
+
float profilePlaneVertexOffset = ${p(2===d.pathCapType,l`vertexDescriptor.isEnd ? 0.5 : -0.5`,l`0.`)};
|
|
112
124
|
|
|
113
125
|
return ExtrudedVertex(
|
|
126
|
+
frame,
|
|
114
127
|
frame,
|
|
115
128
|
profileVertex,
|
|
116
129
|
profileNormal,
|
|
@@ -121,15 +134,16 @@ return vec2(1., 0.);
|
|
|
121
134
|
true
|
|
122
135
|
);
|
|
123
136
|
}
|
|
124
|
-
`),d.pathCapType){case 1:case 2:
|
|
137
|
+
`),d.pathCapType){case 1:case 2:x.code.add(l`
|
|
125
138
|
ExtrudedVertex evaluateFlatCapVertex(PathVertexDescriptor vertexDescriptor, ExtrusionFrame frame) {
|
|
126
139
|
vec2 profileVertex = pathProfileVertices[vertexDescriptor.sourceIndex];
|
|
127
140
|
bool isEnd = vertexDescriptor.isEnd;
|
|
128
141
|
float normalOffset = isEnd ? 1. : -1.;
|
|
129
|
-
float profilePlaneOffset = ${
|
|
142
|
+
float profilePlaneOffset = ${p(2===d.pathCapType,l`isEnd ? 0.5 : -0.5`,l`0.0`)};
|
|
130
143
|
vec2 normal = vec2(0.);
|
|
131
144
|
|
|
132
145
|
return ExtrudedVertex(
|
|
146
|
+
frame,
|
|
133
147
|
frame,
|
|
134
148
|
profileVertex,
|
|
135
149
|
normal,
|
|
@@ -140,7 +154,7 @@ return vec2(1., 0.);
|
|
|
140
154
|
true
|
|
141
155
|
);
|
|
142
156
|
}
|
|
143
|
-
`);break;case 3:
|
|
157
|
+
`);break;case 3:x.uniforms.add(new s("pathProfilePoles",g,e=>e.profile.poles.flatMap(({position:e,normal:t})=>[...e,...t??m]),{supportsNaN:!0}),new f("pathProfilePoleIndices",h,e=>e.profile.poleIndices)),x.include(a),x.constants.add("pathNumRoundCapExtrusionSubdivisions","float",r),x.code.add(l`ExtrudedVertex evaluateRoundCapPoleVertex(PathVertexDescriptor vertexDescriptor, ExtrusionFrame frame) {
|
|
144
158
|
bool isEnd = vertexDescriptor.isEnd;
|
|
145
159
|
float capSign = isEnd ? 1. : -1.;
|
|
146
160
|
float offsetScale = capSign * 0.5;
|
|
@@ -151,6 +165,7 @@ vec2 poleNormal = hasPoleNormal ? pole.zw : vec2(0.);
|
|
|
151
165
|
float normalOffset = hasPoleNormal ? 0. : capSign;
|
|
152
166
|
return ExtrudedVertex(
|
|
153
167
|
frame,
|
|
168
|
+
frame,
|
|
154
169
|
polePosition,
|
|
155
170
|
poleNormal,
|
|
156
171
|
vec2(0.),
|
|
@@ -164,7 +179,7 @@ ExtrudedVertex evaluateRoundCapInnerVertex(PathVertexDescriptor vertexDescriptor
|
|
|
164
179
|
bool isEnd = vertexDescriptor.isEnd;
|
|
165
180
|
float capSign = isEnd ? 1. : -1.;
|
|
166
181
|
float offsetScale = capSign * 0.5;
|
|
167
|
-
float subdivision = vertexDescriptor.subdivision;
|
|
182
|
+
float subdivision = float(vertexDescriptor.subdivision);
|
|
168
183
|
float t = 1. - (subdivision + 1.) / pathNumRoundCapExtrusionSubdivisions;
|
|
169
184
|
float theta = t * HALF_PI;
|
|
170
185
|
float t1 = sin(theta);
|
|
@@ -182,6 +197,7 @@ vec2 profileNormal = hasPoleNormal
|
|
|
182
197
|
float normalOffset = hasPoleNormal ? 0. : capSign * t2;
|
|
183
198
|
return ExtrudedVertex(
|
|
184
199
|
frame,
|
|
200
|
+
frame,
|
|
185
201
|
poleVertex,
|
|
186
202
|
profileNormal,
|
|
187
203
|
vec2(0.),
|
|
@@ -190,7 +206,7 @@ offsetScale * t2,
|
|
|
190
206
|
normalOffset,
|
|
191
207
|
true
|
|
192
208
|
);
|
|
193
|
-
}`)}
|
|
209
|
+
}`)}x.code.add(l`
|
|
194
210
|
ExtrudedVertex evaluateVertex() {
|
|
195
211
|
PathVertexDescriptor vertexDescriptor = getDescriptor();
|
|
196
212
|
ExtrusionFrame frame = ExtrusionFrame(
|
|
@@ -205,12 +221,12 @@ true
|
|
|
205
221
|
case pathVertexTypeCapConnectingProfile:
|
|
206
222
|
return evaluateConnectingVertex(vertexDescriptor, frame);
|
|
207
223
|
|
|
208
|
-
${
|
|
224
|
+
${p(1===d.pathCapType||2===d.pathCapType,l`
|
|
209
225
|
case pathVertexTypeCapProfile:
|
|
210
226
|
return evaluateFlatCapVertex(vertexDescriptor, frame);
|
|
211
227
|
`)}
|
|
212
228
|
|
|
213
|
-
${
|
|
229
|
+
${p(3===d.pathCapType,l`
|
|
214
230
|
case pathVertexTypeCapProfile:
|
|
215
231
|
return evaluateRoundCapPoleVertex(vertexDescriptor, frame);
|
|
216
232
|
case pathVertexTypeRoundCapInnerProfile:
|
|
@@ -219,6 +235,7 @@ true
|
|
|
219
235
|
|
|
220
236
|
default:
|
|
221
237
|
return ExtrudedVertex(
|
|
238
|
+
frame,
|
|
222
239
|
frame,
|
|
223
240
|
vec2(0.),
|
|
224
241
|
vec2(0.),
|
|
@@ -230,4 +247,4 @@ true
|
|
|
230
247
|
);
|
|
231
248
|
}
|
|
232
249
|
}
|
|
233
|
-
`)}const
|
|
250
|
+
`)}const m=e(NaN,NaN);export{d as PathEvaluate};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{If as t,glsl as e}from"../../shaderModules/glsl.js";import{sourceIndexMask as
|
|
2
|
+
import{If as t,glsl as e}from"../../shaderModules/glsl.js";import{sourceIndexMask as r,descriptorDataShift as a,descriptorDataMask as i,descriptorTypeShift as n,descriptorCapSideShift as p,descriptorCapSubdivisionMask as s,descriptorShift as o,frameIndexMask as d}from"../../../lib/PathVertexInfo.js";function c(c,h){const{attributes:u,vertex:x}=c;u.add("pathVertexInfo","uint"),x.constants.add("pathVertexDescriptorSourceIndexMask","uint",r),x.constants.add("pathVertexDescriptorDataShift","uint",a),x.constants.add("pathVertexDescriptorDataMask","uint",i),x.constants.add("pathVertexDescriptorTypeShift","uint",n),x.constants.add("pathVertexDescriptorCapSideShift","uint",p),x.constants.add("pathVertexDescriptorCapSubdivisionMask","uint",s),x.constants.add("pathVertexInfoDescriptorShift","uint",o),x.constants.add("pathVertexInfoFrameIndexMask","uint",d),x.constants.add("pathVertexCapSideEnd","uint",1),x.constants.add("pathVertexTypeJoin","uint",0),x.constants.add("pathVertexTypeCapConnectingProfile","uint",1),x.constants.add("pathVertexTypeCapProfile","uint",2),3===h.pathCapType&&x.constants.add("pathVertexTypeRoundCapInnerProfile","uint",3),x.code.add(e`
|
|
3
3
|
struct PathVertexDescriptor {
|
|
4
4
|
uint sourceIndex;
|
|
5
|
-
|
|
5
|
+
uint subdivision;
|
|
6
6
|
uint type;
|
|
7
7
|
bool isEnd;
|
|
8
8
|
};
|
|
@@ -16,17 +16,17 @@ import{If as t,glsl as e}from"../../shaderModules/glsl.js";import{sourceIndexMas
|
|
|
16
16
|
uint sourceIndex = descriptor & pathVertexDescriptorSourceIndexMask;
|
|
17
17
|
uint descriptorData = (descriptor >> pathVertexDescriptorDataShift) & pathVertexDescriptorDataMask;
|
|
18
18
|
uint type = descriptor >> pathVertexDescriptorTypeShift;
|
|
19
|
-
|
|
19
|
+
uint subdivision = 0u;
|
|
20
20
|
bool isEnd = false;
|
|
21
21
|
|
|
22
22
|
switch (type) {
|
|
23
23
|
case pathVertexTypeJoin:
|
|
24
|
-
subdivision =
|
|
24
|
+
subdivision = descriptorData;
|
|
25
25
|
break;
|
|
26
26
|
|
|
27
27
|
${t(3===h.pathCapType,e`
|
|
28
28
|
case pathVertexTypeRoundCapInnerProfile:
|
|
29
|
-
subdivision =
|
|
29
|
+
subdivision = descriptorData & pathVertexDescriptorCapSubdivisionMask;
|
|
30
30
|
`)}
|
|
31
31
|
case pathVertexTypeCapConnectingProfile:
|
|
32
32
|
${t(0!==h.pathCapType,e`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{fromValues as e}from"../../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{TextureBackedBufferModule as t}from"../TextureBackedBuffer.glsl.js";import{PathEvaluate as r}from"./PathEvaluate.glsl.js";import{PiUtils as o}from"../shading/PiUtils.glsl.js";import{Float2PassUniform as i}from"../../shaderModules/Float2PassUniform.js";import{Float3PassUniform as a}from"../../shaderModules/Float3PassUniform.js";import{Float4PassUniform as l}from"../../shaderModules/Float4PassUniform.js";import{Float4sPassUniform as s}from"../../shaderModules/Float4sPassUniform.js";import{FloatPassUniform as c}from"../../shaderModules/FloatPassUniform.js";import{FloatsPassUniform as v}from"../../shaderModules/FloatsPassUniform.js";import{glsl as u,If as n}from"../../shaderModules/glsl.js";import{Texture2DUintDrawUniform as d}from"../../shaderModules/Texture2DUintDrawUniform.js";import{circleProfiles as
|
|
2
|
+
import{fromValues as e}from"../../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{TextureBackedBufferModule as t}from"../TextureBackedBuffer.glsl.js";import{PathEvaluate as r}from"./PathEvaluate.glsl.js";import{PiUtils as o}from"../shading/PiUtils.glsl.js";import{Float2PassUniform as i}from"../../shaderModules/Float2PassUniform.js";import{Float3PassUniform as a}from"../../shaderModules/Float3PassUniform.js";import{Float4PassUniform as l}from"../../shaderModules/Float4PassUniform.js";import{Float4sPassUniform as s}from"../../shaderModules/Float4sPassUniform.js";import{FloatPassUniform as c}from"../../shaderModules/FloatPassUniform.js";import{FloatsPassUniform as v}from"../../shaderModules/FloatsPassUniform.js";import{glsl as u,If as n}from"../../shaderModules/glsl.js";import{Texture2DUintDrawUniform as d}from"../../shaderModules/Texture2DUintDrawUniform.js";import{circleProfiles as p}from"../../../lib/PathProfile.js";import{getTextureLayout as f}from"../../../materials/PathLayouts.js";import{VisualVariablePassParameters as m,vvColorNumber as x}from"../../../materials/VisualVariablePassParameters.js";const g=8;function h(e,p){const{vertex:m}=e,h=new d("componentTextureBuffer",e=>e.textureBuffer),y=new t({layout:f(p),itemIndexExpression:"getFrameIndex()",bufferUniform:h}).createBuilder(e,p);m.uniforms.add(new i("size",e=>e.size));const{hasVVSize:V,hasVVColor:b,hasVVOpacity:z,hasPathSize:O,hasPathColor:C,hasPathOpacity:S}=p;V?(m.uniforms.add(new a("vvSizeMinSize",e=>e.vvSize.minSize),new a("vvSizeMaxSize",e=>e.vvSize.maxSize),new a("vvSizeOffset",e=>e.vvSize.offset),new a("vvSizeFactor",e=>e.vvSize.factor),new a("vvSizeFallback",e=>e.vvSize.fallback)),m.code.add(u`
|
|
3
3
|
vec2 getSize() {
|
|
4
4
|
float value = ${y.getTextureAttribute("sizeFeatureAttribute")};
|
|
5
5
|
if (isnan(value)) {
|
|
@@ -7,13 +7,13 @@ import{fromValues as e}from"../../../../../../core/libs/gl-matrix-2/factories/ve
|
|
|
7
7
|
}
|
|
8
8
|
return size * clamp(vvSizeOffset + value * vvSizeFactor, vvSizeMinSize, vvSizeMaxSize).xz;
|
|
9
9
|
}
|
|
10
|
-
`)):O?
|
|
10
|
+
`)):O?m.code.add(u`
|
|
11
11
|
vec2 getSize(){
|
|
12
12
|
return ${y.getTextureAttribute("size")};
|
|
13
13
|
}
|
|
14
|
-
`):
|
|
14
|
+
`):m.code.add(u`vec2 getSize(){
|
|
15
15
|
return size;
|
|
16
|
-
}`),z?(
|
|
16
|
+
}`),z?(m.constants.add("vvOpacityNumber","int",g),m.uniforms.add(new v("vvOpacityValues",g,e=>e.vvOpacity.values),new v("vvOpacityOpacities",g,e=>e.vvOpacity.opacityValues),new c("vvOpacityFallback",e=>e.vvOpacity.fallback,{supportsNaN:!0})),m.code.add(u`
|
|
17
17
|
vec4 applyOpacity(vec4 color) {
|
|
18
18
|
// if we encounter NaN in the color it means the color is in the fallback case where the symbol color
|
|
19
19
|
// is not defined and there is no valid color visual variable override. In this case just return a fully
|
|
@@ -26,7 +26,7 @@ return size;
|
|
|
26
26
|
|
|
27
27
|
if (isnan(value)) {
|
|
28
28
|
// If there is a color vv then it will already have taken care of applying the fallback
|
|
29
|
-
return ${n(
|
|
29
|
+
return ${n(b,"color","vec4(color.rgb, vvOpacityFallback)")};
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
if (value <= vvOpacityValues[0]) {
|
|
@@ -42,13 +42,13 @@ return size;
|
|
|
42
42
|
|
|
43
43
|
return vec4(color.rgb, vvOpacityOpacities[vvOpacityNumber - 1]);
|
|
44
44
|
}
|
|
45
|
-
`)):S?
|
|
45
|
+
`)):S?m.code.add(u`
|
|
46
46
|
vec4 applyOpacity(vec4 color){
|
|
47
47
|
return vec4(color.rgb, ${y.getTextureAttribute("opacity")});
|
|
48
48
|
}
|
|
49
|
-
`):
|
|
49
|
+
`):m.code.add(u`vec4 applyOpacity(vec4 color){
|
|
50
50
|
return color;
|
|
51
|
-
}`),
|
|
51
|
+
}`),b?(m.constants.add("vvColorNumber","int",x),m.uniforms.add(new v("vvColorValues",x,e=>e.vvColor.values),new s("vvColorColors",x,e=>e.vvColor.colors),new l("vvColorFallback",e=>e.vvColor.fallback)),m.code.add(u`
|
|
52
52
|
vec4 getColor() {
|
|
53
53
|
float value = ${y.getTextureAttribute("colorFeatureAttribute")};
|
|
54
54
|
if (isnan(value)) {
|
|
@@ -68,13 +68,13 @@ return color;
|
|
|
68
68
|
|
|
69
69
|
return applyOpacity(vvColorColors[vvColorNumber - 1]);
|
|
70
70
|
}
|
|
71
|
-
`)):C?
|
|
71
|
+
`)):C?m.code.add(u`
|
|
72
72
|
vec4 getColor(){
|
|
73
73
|
return applyOpacity(${y.getTextureAttribute("color")});
|
|
74
74
|
}
|
|
75
|
-
`):
|
|
75
|
+
`):m.code.add(u`vec4 getColor(){
|
|
76
76
|
return applyOpacity(vec4(1, 1, 1, 1));
|
|
77
|
-
}`),
|
|
77
|
+
}`),m.include(o),m.code.add(u`
|
|
78
78
|
vec3 decompressAxis(vec2 axis) {
|
|
79
79
|
float z = 1.0 - abs(axis.x) - abs(axis.y);
|
|
80
80
|
return normalize(vec3(axis + sign(axis) * min(z, 0.0), z));
|
|
@@ -95,29 +95,29 @@ return applyOpacity(vec4(1, 1, 1, 1));
|
|
|
95
95
|
vec3 getFrameRight() {
|
|
96
96
|
return decompressAxis(${y.getTextureAttribute("profileRight")});
|
|
97
97
|
}
|
|
98
|
-
`),11===
|
|
98
|
+
`),11===p.output&&m.code.add(u`
|
|
99
99
|
vec4 getOlidColor() {
|
|
100
100
|
return ${y.getTextureAttribute("olidColor")};
|
|
101
101
|
}
|
|
102
|
-
`),
|
|
102
|
+
`),m.code.add(u`
|
|
103
103
|
vec3 getFrameRotationUp() {
|
|
104
|
-
return ${1===
|
|
104
|
+
return ${1===p.upVectorAlignment?u`decompressAxis(${y.getTextureAttribute("pathRotationUp")})`:u`getFrameUp()`};
|
|
105
105
|
}
|
|
106
|
-
`),e.include(r,
|
|
106
|
+
`),e.include(r,p),m.code.add(u`
|
|
107
107
|
vec3 calculateVPos(ExtrudedVertex extrudedVertex) {
|
|
108
108
|
vec2 size = getSize();
|
|
109
109
|
vec3 origin = ${y.getTextureAttribute("position")};
|
|
110
|
-
vec3 right = extrudedVertex.
|
|
111
|
-
vec3 up = extrudedVertex.
|
|
110
|
+
vec3 right = extrudedVertex.positionFrame.right;
|
|
111
|
+
vec3 up = extrudedVertex.positionFrame.up;
|
|
112
112
|
vec2 profileVertex = extrudedVertex.profileVertex * size;
|
|
113
|
-
`),
|
|
113
|
+
`),m.code.add(u`if(extrudedVertex.isCap) {
|
|
114
114
|
float positionOffsetAlongProfilePlaneNormal = extrudedVertex.capPositionOffset * size[0];
|
|
115
115
|
vec3 forward = cross(up, right);
|
|
116
116
|
vec3 offset = right * profileVertex.x + up * profileVertex.y + forward * positionOffsetAlongProfilePlaneNormal;
|
|
117
117
|
return origin + offset;
|
|
118
118
|
}
|
|
119
119
|
vec2 rotationRight = extrudedVertex.rotationRight;
|
|
120
|
-
float maxDistance = extrudedVertex.maxDistance;`),
|
|
120
|
+
float maxDistance = extrudedVertex.maxDistance;`),m.code.add(u`rotationRight *= size;
|
|
121
121
|
rotationRight = length(rotationRight) > 0.0 ? normalize(rotationRight) : vec2(0, 0);
|
|
122
122
|
float rx = dot(profileVertex, rotationRight);
|
|
123
123
|
if (abs(rx) > maxDistance) {
|
|
@@ -127,9 +127,9 @@ profileVertex = rotationRight * maxDistance * sign(rx) + rotationUp * ry;
|
|
|
127
127
|
}
|
|
128
128
|
vec3 offset = right * profileVertex.x + up * profileVertex.y;
|
|
129
129
|
return origin + offset;
|
|
130
|
-
}`),
|
|
131
|
-
vec3 right = extrudedVertex.
|
|
132
|
-
vec3 up = extrudedVertex.
|
|
130
|
+
}`),m.code.add(u`vec3 localNormal(ExtrudedVertex extrudedVertex) {
|
|
131
|
+
vec3 right = extrudedVertex.normalFrame.right;
|
|
132
|
+
vec3 up = extrudedVertex.normalFrame.up;
|
|
133
133
|
vec2 profileNormal = extrudedVertex.profileNormal;
|
|
134
134
|
vec3 normal = right * profileNormal.x + up * profileNormal.y;
|
|
135
135
|
if(extrudedVertex.isCap) {
|
|
@@ -137,4 +137,4 @@ vec3 forward = cross(up, right);
|
|
|
137
137
|
normal += forward * extrudedVertex.capNormalOffset;
|
|
138
138
|
}
|
|
139
139
|
return normal;
|
|
140
|
-
}`)}class y extends
|
|
140
|
+
}`)}class y extends m{constructor(){super(...arguments),this.size=e(1,1),this.cutoffAngle=0,this.profile=p.center,this.hasPathSize=!1,this.hasPathColor=!1,this.hasPathOpacity=!1}}export{h as PathVertexPosition,y as PathVertexPositionPassParameters};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import{watch as t}from"../../../../core/reactiveUtils.js";import{property as
|
|
2
|
+
import{__decorate as e}from"tslib";import{watch as t}from"../../../../core/reactiveUtils.js";import{Milliseconds as i}from"../../../../core/time.js";import{property as s,subclass as a}from"../../../../core/accessorSupport/decorators.js";import{set as r}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{copy as o,set as n,scale as h,floor as l,subtract as u}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as p}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{create as m,set as c,positiveInfinity as d,equals as _}from"../../../../geometry/support/aaBoundingBox.js";import{InternalRenderCategory as g}from"../../webgl.js";import{addWraparound as f}from"../../layers/i3s/I3SUtil.js";import P from"../../webgl/RenderNode.js";import{G as C}from"../../../../chunks/GaussianSplat.glsl.js";import{G as b}from"../../../../chunks/GaussianSplatComposition.glsl.js";import{GaussianSplatCompositionTechnique as S}from"../shaders/GaussianSplatCompositionTechnique.js";import{GaussianSplatCompositionTechniqueConfiguration as v}from"../shaders/GaussianSplatCompositionTechniqueConfiguration.js";import{G as x}from"../../../../chunks/GaussianSplatDepthComposition.glsl.js";import{GaussianSplatDepthCompositionTechnique as q}from"../shaders/GaussianSplatDepthCompositionTechnique.js";import{GaussianSplatTechnique as R}from"../shaders/GaussianSplatTechnique.js";import{GaussianSplatTechniqueConfiguration as w}from"../shaders/GaussianSplatTechniqueConfiguration.js";import{ColorAttachment1 as E,DepthStencilAttachment as T,PrimitiveType as D}from"../../../webgl/enums.js";var y;let G=class extends P{static{y=this}constructor(e){super(e),this.consumes={required:[g.GAUSSIAN_SPLAT]},this.produces=g.GAUSSIAN_SPLAT,this._slicePlaneEnabled=!1,this.layerView=null,this._passParameters=new C,this._compositionPassParameters=new b,this._depthCompositionPassParameters=new x,this._compositionConfiguration=new v,this._clipBox=m(),this._previousCameraDirection=p(),this._previousSortRequestCameraDirection=p(),this._tileCullingRevision=0,this._sortRequestDirectionEpsilon=.01,this._directionChangeEpsilon=.001,this._configuration=new w(e.view.state.isGlobal),c(this._clipBox,d)}async initialize(){this.addHandles([t(()=>this.view.state.camera,()=>this._onCameraChange()),t(()=>2===this.view.state.mode,()=>this.requestRender(1))])}precompile(){this._canRender&&(this._updateConfigurations(),this._compositionConfiguration.useFloatBlend=this.bindParameters.useFloatBlend.value,this._compositionConfiguration.hasEmission=this.bindParameters.hasOpaqueEmission,this.techniques.precompile(R,this._configuration),this.techniques.precompile(S,this._compositionConfiguration),this.techniques.precompile(q))}render(){const e=this.input;if(this._updateConfigurations(),this._handleFading(),!this._canRender)return e;const t=e.getAttachment(E);this._compositionConfiguration.useFloatBlend=this.bindParameters.useFloatBlend.value,this._compositionConfiguration.hasEmission=null!=t;const{fullWidth:i,fullHeight:s}=this.bindParameters.camera;this._prepareParameters(s,i);const a=this.renderingContext,r=this.fboCache,o=r.acquire(i,s,"gaussian color output"),n=e.getAttachment(T);o.attachDepth(n);const h=this.techniques.get(R,this._configuration);this._renderGaussianColorAndDepth(o,h);const l=r.acquire(i,s,this.produces);this._depthCompositionPassParameters.splatDepth=o.getTexture(E),l.attachDepth(e.getAttachment(T)),a.bindFramebuffer(l.fbo);const u=this.techniques.get(q);a.bindTechnique(u,this.bindParameters,this._depthCompositionPassParameters),a.screen.draw(),this._compositionPassParameters.color=e.getTexture(),this._compositionPassParameters.splatColor=o.getTexture(),t?(l.acquireColor(E,8,"emissive"),this._compositionPassParameters.emission=e.getTexture(E)):this._compositionPassParameters.emission=null,a.bindFramebuffer(l.fbo);const p=this.techniques.get(S,this._compositionConfiguration);return a.bindTechnique(p,this.bindParameters,this._compositionPassParameters),a.screen.draw(),o.release(),l}get slicePlaneEnabled(){return this._slicePlaneEnabled}set slicePlaneEnabled(e){this._slicePlaneEnabled!==e&&(this._slicePlaneEnabled=e,this.requestRender(1))}set clippingBox(e){const t=e||d;this._hasSameClipBox(t)||(c(this._clipBox,t),this._tileCullingRevision=f(this._tileCullingRevision,1),this._data.requestSort(),this.requestRender(1))}get clippingBox(){return this._clippingEnabled?this._clipBox:null}get tileCullingRevision(){return this._tileCullingRevision}get _clippingEnabled(){return!_(this._clipBox,d,(e,t)=>e===t)}get _isIdle(){return 2===this.view.state.mode}get _data(){return this.layerView.data}get _canRender(){return this._data.visibleGaussians>0&&null!=this._data.orderTexture.texture&&null!=this._data.textureAtlas.texture&&null!=this._data.headerTexture.texture}get _fadeHelper(){return this.layerView.fadeHelper}_updateConfigurations(){const{idleMinimumOpacity:e,nonIdleMinimumOpacity:t}=this.view.qualitySettings.gaussianSplat;this._configuration.alphaCutoff=this._isIdle?e:t,this._configuration.fadingEnabled=this._fadeHelper.fadingEnabled,this._configuration.receiveShadows=this.bindParameters.shadowMap.ready,this._configuration.hasShadowHighlights=this._configuration.receiveShadows&&this.bindParameters.hasShadowHighlights,this._configuration.clippingEnabled=this._clippingEnabled,this._configuration.hasSlicePlane=this._slicePlaneEnabled&&null!=this.bindParameters.slicePlane}_onCameraChange(){this._tileCullingRevision=f(this._tileCullingRevision,1);const e=this.view.state.camera.ray.direction;if(!this._directionChanged(e))return;if(o(this._previousCameraDirection,e),!this._shouldRequestSort(e))return;this._data.requestSort()&&o(this._previousSortRequestCameraDirection,e)}_directionChanged(e){return Math.abs(e[0]-this._previousCameraDirection[0])>this._directionChangeEpsilon||Math.abs(e[1]-this._previousCameraDirection[1])>this._directionChangeEpsilon||Math.abs(e[2]-this._previousCameraDirection[2])>this._directionChangeEpsilon}_shouldRequestSort(e){return Math.abs(e[0]-this._previousSortRequestCameraDirection[0])>this._sortRequestDirectionEpsilon||Math.abs(e[1]-this._previousSortRequestCameraDirection[1])>this._sortRequestDirectionEpsilon||Math.abs(e[2]-this._previousSortRequestCameraDirection[2])>this._sortRequestDirectionEpsilon}_prepareParameters(e,t){this._passParameters.splatOrder=this._data.orderTexture.texture,this._passParameters.splatFading=this._data.fadingTexture.texture,this._passParameters.splatAtlas=this._data.textureAtlas.texture,this._passParameters.splatHeader=this._data.headerTexture.texture;const i=Math.tan(.5*this.camera.fovY),s=i/e*t;r(this._passParameters.tanFov,s,i),this._passParameters.focalLength=e/(2*i);const a=this.view.qualitySettings.gaussianSplat,n=this._isIdle?a.idleMinimumSplatPixelRadius:a.nonIdleMinimumSplatPixelRadius;this._passParameters.minSplatRadius=n*Math.sqrt(t*e)/Math.sqrt(2073600),o(this._passParameters.origin,this.bindParameters.camera.eye),this._prepareHighPrecisionCameraPosition(),this._updateSlicePlaneLocalOrigin(),this._updateClipUniforms()}_updateClipUniforms(){const e=this.clippingBox||d,[t,i,s,a,r,o]=e,[h,l,u]=this.camera.eye,{clipMinCameraRelative:p,clipMaxCameraRelative:m}=this._passParameters;n(p,t-h,i-l,s-u),n(m,a-h,r-l,o-u)}_updateSlicePlaneLocalOrigin(){this._passParameters.slicePlaneLocalOrigin=this.camera.eye}_hasSameClipBox(e){return _(this._clipBox,e,(e,t)=>e===t)}_renderGaussianColorAndDepth(e,t){const i=this.renderingContext;e.acquireColor(E,5,"gaussian depth output"),i.bindFramebuffer(e.fbo),i.setClearColor(0,0,0,0),i.clear(16384),this.renderingContext.bindTechnique(t,this.bindParameters,this._passParameters),this.renderingContext.drawArraysInstanced(D.TRIANGLE_STRIP,0,4,this._data.visibleGaussians)}_prepareHighPrecisionCameraPosition(){h(this._passParameters.tileCameraPosition,this.camera.eye,1/y.tileSize),l(this._passParameters.tileCameraPosition,this._passParameters.tileCameraPosition),h(this._passParameters.cameraDelta,this._passParameters.tileCameraPosition,y.tileSize),u(this._passParameters.cameraDelta,this.camera.eye,this._passParameters.cameraDelta)}_handleFading(){if(0===this._fadeHelper.numFadingTiles)this._previousFrameStart=null;else{const e=this.view.stage?.renderer.renderContext.time,t=i(null==e||null==this._previousFrameStart?0:e-this._previousFrameStart);this._fadeHelper.updateAllTileFading(t),this._previousFrameStart=e}this._data.fadingTexture.updateTexture(this._data.textureAtlas.pageAllocator.pageCount)}static{this.tileSize=2.048}};e([s()],G.prototype,"consumes",void 0),e([s()],G.prototype,"produces",void 0),e([s({constructOnly:!0})],G.prototype,"layerView",void 0),G=y=e([a("esri.views.3d.webgl-engine.lib.GaussianSplatRenderer")],G);export{G as GaussianSplatRenderer};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{floatSubArray as t}from"../../../../geometry/support/FloatArray.js";import{newHalfFloatArray as e}from"../../../../geometry/support/HalfFloatArray.js";import{newIndexArray as i,compactIndices as s}from"../../../../geometry/support/Indices.js";import{newShortArray as r}from"../../../../geometry/support/ShortArray.js";import{compressNormal as
|
|
2
|
+
import{floatSubArray as t}from"../../../../geometry/support/FloatArray.js";import{newHalfFloatArray as e}from"../../../../geometry/support/HalfFloatArray.js";import{newIndexArray as i,compactIndices as s}from"../../../../geometry/support/Indices.js";import{newShortArray as r}from"../../../../geometry/support/ShortArray.js";import{pathNumProfilesPerJoin as o}from"../../layers/graphics/Graphics3DPathSymbolLayerConstants.js";import{compressNormal as n,encodeInt16 as h}from"./Normals.js";import{PathEvaluator as a}from"./PathEvaluator.js";import{encodePathVertexInfo as p}from"./PathVertexInfo.js";class u{constructor(s,n,h,p,u){this.path=s,this.profile=n,this.extruder=h,this.cap=p,this._extrusionVertexCount=0,this._extrusionFrameCount=0;const m=this.path.vertices.length-2;this.numExtrusionProfiles=o*m+2,this.numVerticesTotal=n.vertices.length*this.numExtrusionProfiles,this.numExtrusionFrames=this.path.vertices.length;const l=this.cap.numVertices;this.startCapVertexBufferStart=this.numVerticesTotal,this.numVerticesTotal+=l,this.endCapVertexBufferStart=this.numVerticesTotal,this.numVerticesTotal+=l,this.profileRightAxes=r(2*this.numExtrusionFrames),this.profileUpAxes=r(2*this.numExtrusionFrames);const c=1===u;this.profileRotationFrameUpAxes=c?r(2*this.numExtrusionFrames):null,this.pathMaxStretchDistances=e(this.numExtrusionFrames),this.profileRotations=r(this.numExtrusionFrames),this.framePositionIndices=i(this.numExtrusionFrames),this.pathVertexInfos=new Uint32Array(this.numVerticesTotal),this.positions=t(s.positions,s.offset,3*s.vertices.length),this._rebuildGeometry(),this._buildTopology(),this.evaluator=new a(this,n,h,p.type,u)}emitVertexDescriptor(t){const e=this._extrusionVertexCount;this.pathVertexInfos[e]=p(t),++this._extrusionVertexCount}emitExtrusionFrame(t,e){const{frame:i,rotationFrameUp:s,rotationAngle:r,maxStretchDistance:o}=t,a=this._extrusionFrameCount;return n(this.profileRightAxes,a,i.right[0],i.right[1],i.right[2]),n(this.profileUpAxes,a,i.up[0],i.up[1],i.up[2]),this.profileRotations[a]=h(r/Math.PI),this.profileRotationFrameUpAxes&&n(this.profileRotationFrameUpAxes,a,s[0],s[1],s[2]),this.pathMaxStretchDistances[a]=o,this.framePositionIndices[a]=e,this._extrusionFrameCount++}_rebuildGeometry(){this._extrusionVertexCount=0,this._extrusionFrameCount=0;const{vertices:t}=this.path,{profile:e}=this;this._updatePositions();for(let r=0;r<t.length;++r)this.emitExtrusionFrame(t[r],r);for(let r=0;r<e.vertices.length;++r)this.emitVertexDescriptor({frameIndex:0,sourceIndex:r,subdivision:0,type:1,capSide:0});const i=(t,e,i)=>{this.emitVertexDescriptor({frameIndex:t,sourceIndex:e,subdivision:i,type:0,capSide:0})};for(let r=1;r<t.length-1;++r)this.extruder.extrude(r,this.profile,i);const s=t.length-1;for(let r=0;r<e.vertices.length;++r)this.emitVertexDescriptor({frameIndex:s,sourceIndex:r,subdivision:0,type:1,capSide:1});this.cap.rebuildCapGeometry((t,e,i)=>this.emitVertexDescriptor({frameIndex:0,sourceIndex:t,subdivision:e,type:i,capSide:0})),this.cap.rebuildCapGeometry((t,e,i)=>this.emitVertexDescriptor({frameIndex:s,sourceIndex:t,subdivision:e,type:i,capSide:1}))}_updatePositions(){const{positions:t,offset:e,vertices:i}=this.path;if(!Array.isArray(t))return;const s=3*i.length,r=this.positions;for(let o=0;o<s;++o)r[o]=t[e+o]}_buildTopology(){const t=this.profile.vertices.length,e=this.profile.numSegments,i=this.numExtrusionProfiles-1,r=0,o=t*(this.numExtrusionProfiles-1),n=new Array,h=(t,e,i)=>{n.push(t),n.push(e),n.push(i)};for(let s=0;s<e;++s){const e=this.profile.indices[2*s],r=this.profile.indices[2*s+1];for(let s=0;s<i;++s){const i=s*t+e,o=(s+1)*t+r,n=s*t+r;h(i,(s+1)*t+e,o),h(i,o,n)}}this.cap.buildTopology(h,0,this.startCapVertexBufferStart,r),this.cap.buildTopology(h,1,this.endCapVertexBufferStart,o),this.vertexIndices=s(n)}onPathChanged(){this._rebuildGeometry()}}export{u as PathBuilder};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{reciprocalClamped as
|
|
2
|
+
import{reciprocalClamped as e}from"../../../../core/mathUtils.js";import{set as t}from"../../../../core/libs/gl-matrix-2/math/mat2.js";import{create as s}from"../../../../core/libs/gl-matrix-2/factories/mat2f64.js";import{setAxisAngle as r}from"../../../../core/libs/gl-matrix-2/math/quat.js";import{create as i}from"../../../../core/libs/gl-matrix-2/factories/quatf64.js";import{multiply as o,copy as a,length as c,scale as n,set as f,dot as p,add as m,subtract as l,normalize as h,transformMat2 as u}from"../../../../core/libs/gl-matrix-2/math/vec2.js";import{UNIT_X as x,ZEROS as d,create as b}from"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{cross as g,set as V,transformQuat as I,dot as P,scale as j,add as v,normalize as M}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as y}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{pathNumJoinSubdivisions as O,pathNumRoundCapExtrusionSubdivisions as k}from"../../layers/graphics/Graphics3DPathSymbolLayerConstants.js";import{decodeInt16 as A,decompressNormal as C}from"./Normals.js";import{PathFrame2D as D}from"./PathFrame2D.js";import{decodePathVertexInfo as R}from"./PathVertexInfo.js";class w{constructor(e,t,s,r,i){this.builder=e,this.profile=t,this.extruder=s,this.capType=r,this.upVectorAlignment=i}evaluateVertexPosition(e,t,s,r){const{framePositionIndices:i,positions:l}=this.builder,h=W;this._evaluateExtrudedVertex(h,s);const u=N;let x=0;const d=h.frameIndex,b=h.frame.right,I=h.frame.up,P=3*i[d],j=o(B,h.profileVertex,t);if(h.isCap)g(u,I,b),x=h.capPositionOffset*t[0];else{const e=H,s=J;a(e,h.rotationRight);const r=h.maxDistance;o(e,e,t);const i=c(e);i>0?n(e,e,1/i):f(e,0,0);const l=p(j,e);if(Math.abs(l)>r){f(s,-e[1],e[0]);const t=p(j,s);n(e,e,r*Math.sign(l)),n(s,s,t),m(j,e,s)}V(u,0,0,0)}const v=b[0]*j[0]+I[0]*j[1],M=b[1]*j[0]+I[1]*j[1],y=b[2]*j[0]+I[2]*j[1],O=3*r;e[O]=l[P]+v+u[0]*x,e[O+1]=l[P+1]+M+u[1]*x,e[O+2]=l[P+2]+y+u[2]*x}_evaluateExtrudedVertex(e,t){const{profileRotations:s,profileUpAxes:i,profileRightAxes:o,profileRotationFrameUpAxes:c,pathMaxStretchDistances:f,pathVertexInfos:u}=this.builder,{extruder:b,profile:g,upVectorAlignment:V}=this,{cutoffAngle:P,join:j}=b,v=T[V],M=1===this.upVectorAlignment,y=R(u[t]),D=y.frameIndex;e.frameIndex=D;const w=A(s[D])*Math.PI,q=f[D];switch(C(e.frame.right,o,D),C(e.frame.up,i,D),e.maxDistance=0,y.type){case 0:{e.isCap=!1;const t=g.vertices[y.sourceIndex],s=Math.abs(w)>=P,i=M?C(K,c,D):e.frame.up,o=null!=c?U(z,e.frame,i):x,n=p(t,o)*w>=0;if(s&&n){a(e.profileVertex,t);const s=2===j?(y.subdivision/O-.5)*w:(-.5+Math.floor(y.subdivision/2))*w;0!==s&&(r(Q,i,s),M&&I(e.frame.up,e.frame.up,Q),I(e.frame.right,e.frame.right,Q))}else{const s=v(F,t,w,o);a(e.profileVertex,s)}a(e.rotationRight,n?d:o),e.maxDistance=n?0:q;break}case 1:{e.isCap=!0;const t=g.vertices[y.sourceIndex];switch(a(e.profileVertex,t),this.capType){case 0:case 1:case 3:e.capPositionOffset=0;break;case 2:e.capPositionOffset=S(y)?.5:-.5}break}case 2:{e.isCap=!0;const t=S(y)?1:-1;switch(this.capType){case 1:case 2:{const s=g.vertices[y.sourceIndex],r=2===this.capType?.5*t:0;a(e.profileVertex,s),e.capPositionOffset=r;break}case 3:{const s=.5*t,r=g.poles[y.sourceIndex],i=r.position;r.normal;a(e.profileVertex,i),e.capPositionOffset=s;break}}break}case 3:{e.isCap=!0;const t=.5*(S(y)?1:-1),s=(1-(y.subdivision+1)/k)*Math.PI*.5,r=Math.sin(s),i=Math.cos(s),o=g.poleIndices[y.sourceIndex],c=g.poles[o],f=c.position,p=c.normal,u=g.vertices[y.sourceIndex];l(F,u,f),n(F,F,r),p?(m(F,F,f),a(e.profileVertex,F),e.capPositionOffset=t*i):(h(E,F),n(E,E,r),m(F,F,f),a(e.profileVertex,F),e.capPositionOffset=t*i);break}default:y.type}}}const T={0:(t,s,r)=>{if(Math.abs(r)<=0)return s;const i=e(Math.cos(.5*r));return f(t,(i-1+1)*s[0],s[1])},1:(s,r,i,o)=>{if(0===Math.abs(i))return r;const a=e(Math.cos(.5*i)),c=t(_,1+(a-1)*o[0]*o[0],(a-1)*o[0]*o[1],(a-1)*o[0]*o[1],1+(a-1)*o[1]*o[1]);return u(s,r,c)}};function S(e){return 1===e.capSide}function U(e,t,s){const r=P(s,t.up),i=P(s,t.right);return j(G,t.up,-i),j(L,t.right,r),v(G,G,L),M(G,G),q(e,t,G),e}function q(e,t,s){f(e,P(s,t.right),P(s,t.up))}const E=b(),F=b(),_=s(),z=b(),G=y(),L=y(),N=y(),B=b(),H=b(),J=b(),K=y(),Q=i(),W={profileVertex:b(),rotationRight:b(),maxDistance:0,capPositionOffset:0,isCap:!1,frame:new D,frameIndex:0};export{w as PathEvaluator};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
class
|
|
2
|
+
import{pathNumProfilesPerJoin as t}from"../../layers/graphics/Graphics3DPathSymbolLayerConstants.js";class r{constructor(t){this.join=t,this.cutoffAngle=0===this.join?.8*Math.PI:0}extrude(r,s,o){for(let e=0;e<t;++e)for(let t=0;t<s.vertices.length;++t)o(r,t,e)}}export{r as PathExtruder};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{BufferViewUint32 as t,BufferViewVec3f as e,BufferViewVec2Snorm16 as i,BufferViewSnorm16 as r,BufferViewFloat16 as s,BufferViewFloat as o,BufferViewVec2f as a,BufferViewVec4Unorm8 as n,BufferViewUnorm8 as h}from"../../../../geometry/support/buffer/BufferView.js";import{maxPathFrameIndex as c}from"../../layers/graphics/Graphics3DPathSymbolLayerConstants.js";import{isShadowLike as u,is3DGeometry as f,isColor as p}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as l}from"../effects/geometry/olidUtils.js";import g from"../lib/GLMaterial.js";import{offsetPathVertexInfoFrameIndex as m}from"../lib/PathVertexInfo.js";import{intersectTriangleGeometry as d}from"../lib/RayIntersections.js";import{intersectTriangleGeometryScreenPolygon as
|
|
2
|
+
import{BufferViewUint32 as t,BufferViewVec3f as e,BufferViewVec2Snorm16 as i,BufferViewSnorm16 as r,BufferViewFloat16 as s,BufferViewFloat as o,BufferViewVec2f as a,BufferViewVec4Unorm8 as n,BufferViewUnorm8 as h}from"../../../../geometry/support/buffer/BufferView.js";import{maxPathFrameIndex as c}from"../../layers/graphics/Graphics3DPathSymbolLayerConstants.js";import{isShadowLike as u,is3DGeometry as f,isColor as p}from"../core/shaderLibrary/ShaderOutput.js";import{olidEnabled as l}from"../effects/geometry/olidUtils.js";import g from"../lib/GLMaterial.js";import{offsetPathVertexInfoFrameIndex as m}from"../lib/PathVertexInfo.js";import{intersectTriangleGeometry as d}from"../lib/RayIntersections.js";import{intersectTriangleGeometryScreenPolygon as y}from"../lib/screenPolygonTriangleIntersections.js";import{assert as b}from"../lib/Util.js";import{applyPolygonOffsetToHit as _}from"./intersectWithPolygonOffset.js";import{getLayout as S,getTextureLayout as F}from"./PathLayouts.js";import{PathPassParameters as w,PathTechnique as P}from"./PathTechnique.js";import{PathTechniqueConfiguration as V}from"./PathTechniqueConfiguration.js";import{TriangleMaterial as x}from"./TriangleMaterial.js";import{writeAttributes as C,writePosition as j,writeBufferVec2 as z,writeBufferInt16 as T,writeBufferFloat16 as O,writeBufferFloat as B,writeColor as R,writeBufferUint8 as A,writeOlidColor as v}from"./internal/bufferWriterUtils.js";import{hasShadowHighlights as I}from"../shaders/ReceiveShadowsConfiguration.js";import{alphaCutoff as M}from"../../../../webscene/support/AlphaCutoff.js";class U extends x{constructor(t,e){super(t,D),this.supportsEdges=!0,this.produces=new Map([[2,t=>(this.parameters.castShadows&&u(t)||f(t))&&!this.transparent],[4,t=>(this.parameters.castShadows&&u(t)||f(t))&&this.transparent]]),this._configuration=new V(e.spherical)}get emissions(){return this.parameters.emissiveStrength>0?this.transparent?2:1:0}updateConfiguration(t){super.updateConfiguration(t),this._configuration.hasVVSize=this.parameters.hasVVSize,this._configuration.hasVVColor=this.parameters.hasVVColor,this._configuration.hasVVOpacity=this.parameters.hasVVOpacity,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.transparent=this.transparent,this._configuration.hasOccludees=t.hasOccludees,this._configuration.cullFace=this.parameters.hasSlicePlane?0:this.parameters.cullFace,this._configuration.pathJoinType=this.parameters.pathJoinType,this._configuration.offsetBackfaces=this.transparent,p(t.output)?(this._configuration.receiveShadows=t.shadowMap.enabled,this._configuration.hasShadowHighlights=I(this._configuration,t),this._configuration.receiveAmbientOcclusion=null!=t.ssao):this._configuration.receiveShadows=this._configuration.hasShadowHighlights=this._configuration.receiveAmbientOcclusion=!1,this._configuration.pbrMode=this.parameters.usePBR?2:0,this._configuration.emissionSource=this.parameters.usePBR?1:0,this._configuration.snowCover=t.snowCover>0,this._configuration.upVectorAlignment=this.parameters.upVectorAlignment,this._configuration.pathCapType=this.parameters.pathCapType,this._configuration.pathProfileType=this.parameters.profile.type,this._configuration.hasPathSize=this.parameters.hasPathSize,this._configuration.hasPathColor=this.parameters.hasPathColor,this._configuration.hasPathOpacity=this.parameters.hasPathOpacity}isVisibleForOutput(t){return 5!==t&&7!==t&&6!==t||this.parameters.castShadows}get visible(){return this.parameters.opacity>=M}intersectRay(t,e,i,r,s,o){d(t,i,r,s,null,o)}intersectRayDraped(){}intersectScreenPolygonDraped(){return null}intersectScreenPolygon(t,e,i,r){return _(y(t,i,e,r,null),this._configuration,i.camera.eye)}createBufferWriter(){return new q(S(),F(this.parameters))}createGLMaterial(t){return new L(t)}get transparent(){const{parameters:t}=this;return t.drivenOpacity||t.opacity<1}}class L extends g{beginSlot(t){return this.getTechnique(P,t)}}class D extends w{constructor(){super(...arguments),this.polygonOffset=0,this.castShadows=!0,this.hasSlicePlane=!1,this.drivenOpacity=!1,this.usePBR=!1,this.upVectorAlignment=0,this.pathCapType=1,this.cullFace=2,this.pathJoinType=1}}class q{constructor(t,e){this.layout=t,this.textureBufferLayout=e,this.maxTextureBufferItemIndex=c}elementCount(t){return t.get("pathVertexInfo")?.indices.length??0}elementCountTextureBuffer(t){return t.get("position")?.indices.length??0}write(t,e,i,r,s,o,a){null!=s&&this._writeVertexBuffer(t,e,i,s,o),null!=a&&this._writeTextureBuffer(t,i,r,a)}_writeVertexBuffer(e,i,r,s,o){C(r,null,this.layout,e,i,s);const a=o?.from??0,n=s.buffer.getField("pathVertexInfo",t),h=r.get("pathVertexInfo");if(n&&h){b(1===h.size);const{data:t,stride:e,indices:i}=h;for(let r=0;r<i.length;++r){const o=t[e*i[r]];n.set(s.offset+r,m(o,a))}}}_writeTextureBuffer(t,c,u,f){const p=f.offset,g=f.buffer.getField("position",e),m=c.get("position");g&&m&&(b(3===m.size),j(m,t,g,p));const d=f.buffer.getField("profileRight",i),y=c.get("profileRight");d&&y&&(b(2===y.size),z(y,d,p));const _=f.buffer.getField("profileUp",i),S=c.get("profileUp");_&&S&&(b(2===S.size),z(S,_,p));const F=f.buffer.getField("profileRotation",r),w=c.get("profileRotation");F&&w&&(b(1===w.size),T(w,F,p));const P=f.buffer.getField("pathRotationUp",i),V=c.get("pathRotationUp");P&&V&&(b(2===V.size),z(V,P,p));const x=f.buffer.getField("pathMaxStretchDistance",s),C=c.get("pathMaxStretchDistance");x&&C&&(b(1===C.size),O(C,x,p));const I=f.buffer.getField("sizeFeatureAttribute",o),M=c.get("sizeFeatureAttribute");I&&M&&B(M,I,p);const U=f.buffer.getField("size",a),L=c.get("size");U&&L&&(b(2===L.size),z(L,U,p));const D=f.buffer.getField("colorFeatureAttribute",o),q=c.get("colorFeatureAttribute");D&&q&&B(q,D,p);const G=f.buffer.getField("color",n),J=c.get("color");G&&J&&R(J,4,G,p);const W=f.buffer.getField("opacityFeatureAttribute",o),H=c.get("opacityFeatureAttribute");W&&H&&B(H,W,p);const k=f.buffer.getField("opacity",h),E=c.get("opacity");if(k&&E&&(b(1===E.size),A(E,k,p)),l()){const t=f.buffer.getField("olidColor",n),e=m?.indices.length??0;u&&t&&e&&v(u,t,e,p)}}}export{D as Parameters,q as PathBufferWriter,U as PathMaterial};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import{parameter as o}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{TriangleTechniqueConfiguration as e}from"./TriangleTechniqueConfiguration.js";class i extends e{constructor(t){super(),this.spherical=t,this.offsetBackfaces=!1,this.cullFace=0,this.pbrMode=0,this.emissionSource=0,this.upVectorAlignment=0,this.pathCapType=3,this.pathProfileType=0,this.receiveShadows=!1,this.hasShadowHighlights=!1,this.receiveAmbientOcclusion=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.hasVVOpacity=!1,this.hasPathSize=!1,this.hasPathColor=!1,this.hasPathOpacity=!1,this.hasOccludees=!1,this.snowCover=!1,this.receiveGlobalIllumination=!1,this.supportNaN=!0,this.textureCoordinateType=0,this.hasVVInstancing=!1,this.useCustomDTRExponentForWater=!1,this.useFillLights=!0,this.hasColorTexture=!1,this.hasMetallicRoughnessTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.draped=!1,this.overlayEnabled=!1,this.doubleSidedMode=0,this.renderOccluded=!1}}t([o()],i.prototype,"offsetBackfaces",void 0),t([o({count:3})],i.prototype,"cullFace",void 0),t([o({count:8})],i.prototype,"pbrMode",void 0),t([o({count:8})],i.prototype,"emissionSource",void 0),t([o({count:2})],i.prototype,"upVectorAlignment",void 0),t([o({count:4})],i.prototype,"pathCapType",void 0),t([o({count:2})],i.prototype,"pathProfileType",void 0),t([o()],i.prototype,"receiveShadows",void 0),t([o()],i.prototype,"hasShadowHighlights",void 0),t([o()],i.prototype,"receiveAmbientOcclusion",void 0),t([o()],i.prototype,"hasVVSize",void 0),t([o()],i.prototype,"hasVVColor",void 0),t([o()],i.prototype,"hasVVOpacity",void 0),t([o()],i.prototype,"hasPathSize",void 0),t([o()],i.prototype,"hasPathColor",void 0),t([o()],i.prototype,"hasPathOpacity",void 0),t([o()],i.prototype,"hasOccludees",void 0),t([o()],i.prototype,"snowCover",void 0),t([o()],i.prototype,"receiveGlobalIllumination",void 0);export{i as PathTechniqueConfiguration};
|
|
2
|
+
import{__decorate as t}from"tslib";import{parameter as o}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{TriangleTechniqueConfiguration as e}from"./TriangleTechniqueConfiguration.js";class i extends e{constructor(t){super(),this.spherical=t,this.offsetBackfaces=!1,this.cullFace=0,this.pbrMode=0,this.emissionSource=0,this.upVectorAlignment=0,this.pathCapType=3,this.pathProfileType=0,this.pathJoinType=1,this.receiveShadows=!1,this.hasShadowHighlights=!1,this.receiveAmbientOcclusion=!1,this.hasVVSize=!1,this.hasVVColor=!1,this.hasVVOpacity=!1,this.hasPathSize=!1,this.hasPathColor=!1,this.hasPathOpacity=!1,this.hasOccludees=!1,this.snowCover=!1,this.receiveGlobalIllumination=!1,this.supportNaN=!0,this.textureCoordinateType=0,this.hasVVInstancing=!1,this.useCustomDTRExponentForWater=!1,this.useFillLights=!0,this.hasColorTexture=!1,this.hasMetallicRoughnessTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.draped=!1,this.overlayEnabled=!1,this.doubleSidedMode=0,this.renderOccluded=!1}}t([o()],i.prototype,"offsetBackfaces",void 0),t([o({count:3})],i.prototype,"cullFace",void 0),t([o({count:8})],i.prototype,"pbrMode",void 0),t([o({count:8})],i.prototype,"emissionSource",void 0),t([o({count:2})],i.prototype,"upVectorAlignment",void 0),t([o({count:4})],i.prototype,"pathCapType",void 0),t([o({count:2})],i.prototype,"pathProfileType",void 0),t([o({count:3})],i.prototype,"pathJoinType",void 0),t([o()],i.prototype,"receiveShadows",void 0),t([o()],i.prototype,"hasShadowHighlights",void 0),t([o()],i.prototype,"receiveAmbientOcclusion",void 0),t([o()],i.prototype,"hasVVSize",void 0),t([o()],i.prototype,"hasVVColor",void 0),t([o()],i.prototype,"hasVVOpacity",void 0),t([o()],i.prototype,"hasPathSize",void 0),t([o()],i.prototype,"hasPathColor",void 0),t([o()],i.prototype,"hasPathOpacity",void 0),t([o()],i.prototype,"hasOccludees",void 0),t([o()],i.prototype,"snowCover",void 0),t([o()],i.prototype,"receiveGlobalIllumination",void 0);export{i as PathTechniqueConfiguration};
|