@arcgis/core 4.25.0-next.20221018 → 4.25.0-next.20221021
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.d.ts +1 -1
- package/Camera.d.ts +1 -1
- package/Color.d.ts +1 -1
- package/Graphic.d.ts +1 -1
- package/Ground.d.ts +1 -1
- package/Map.d.ts +1 -1
- package/PopupTemplate.d.ts +1 -1
- package/README.md +158 -158
- package/TimeExtent.d.ts +1 -1
- package/TimeInterval.d.ts +1 -1
- package/Viewpoint.d.ts +1 -1
- package/WebMap.d.ts +1 -1
- package/WebMap.js +1 -1
- package/WebScene.d.ts +1 -1
- package/analysis/AreaMeasurementAnalysis.d.ts +1 -1
- package/analysis/DimensionAnalysis.d.ts +1 -1
- package/analysis/DimensionSimpleStyle.d.ts +1 -1
- package/analysis/DirectLineMeasurementAnalysis.d.ts +1 -1
- package/analysis/LengthDimension.d.ts +1 -1
- package/analysis/LineOfSightAnalysis.d.ts +1 -1
- package/analysis/LineOfSightAnalysisObserver.d.ts +1 -1
- package/analysis/LineOfSightAnalysisTarget.d.ts +1 -1
- package/analysis/SliceAnalysis.d.ts +1 -1
- package/analysis/SlicePlane.d.ts +1 -1
- package/applications/SceneViewer/colorUtils.d.ts +1 -1
- package/applications/SceneViewer/sceneViewerUtils.d.ts +1 -1
- package/arcade.d.ts +1 -1
- package/assets/esri/core/libs/libtess/libtess.wasm +0 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{fc521bcd4fce711edb7e.js → 038dc3f9ef06ef3c960c.js} +1 -1
- package/assets/esri/core/workers/chunks/073fdfd01d940c7b1da1.js +1 -0
- package/assets/esri/core/workers/chunks/0b0f3e93f658a012d5f0.js +1 -0
- package/assets/esri/core/workers/chunks/{5e3686b68e1b5dfa0169.js → 110587dd66c52d0284a9.js} +4 -4
- package/assets/esri/core/workers/chunks/{7b7b6f0b1a6215ee7a60.js → 12efe67be9414262591f.js} +1 -1
- package/assets/esri/core/workers/chunks/{9383dab07abf7e29139e.js → 16a6b4d8c4928c97ef56.js} +1 -1
- package/assets/esri/core/workers/chunks/{cd11fcc3d9678ab4e115.js → 19c208150b7f9cf0b6ea.js} +1 -1
- package/assets/esri/core/workers/chunks/{6f19761acd9ab875a600.js → 2b0952bd7dbeb1a79fbc.js} +1 -1
- package/assets/esri/core/workers/chunks/{7fab18074b130b71a648.js → 2c4938512dd726a177dd.js} +1 -1
- package/assets/esri/core/workers/chunks/2d8201f0f33ba66bb96b.js +1 -0
- package/assets/esri/core/workers/chunks/2ebba71cbbfa62ddf46a.js +1 -0
- package/assets/esri/core/workers/chunks/{de6a1d1cfdc147455d57.js → 2f22105099a3ece58d1d.js} +1 -1
- package/assets/esri/core/workers/chunks/{8ee3da8677255b8c8709.js → 31de71018575457155e5.js} +1 -1
- package/assets/esri/core/workers/chunks/{64a0f93c6a0fd4e14601.js → 3376fbcbd92261d45169.js} +1 -1
- package/assets/esri/core/workers/chunks/4450f17444947fe2f27f.js +1 -0
- package/assets/esri/core/workers/chunks/5de864843c0d3f4d291d.js +1 -0
- package/assets/esri/core/workers/chunks/6dfb2ddfd72009564a34.js +1 -0
- package/assets/esri/core/workers/chunks/{d18b191e158c1aff853c.js → 71bc42d18a9e5c356c2a.js} +1 -1
- package/assets/esri/core/workers/chunks/{179b9a7aa796dac3eb83.js → 7ba0cfe4d1c214f44fc7.js} +1 -1
- package/assets/esri/core/workers/chunks/81139c01e8016cbbe324.js +1 -0
- package/assets/esri/core/workers/chunks/883cfe319b15ebabf71e.js +1 -0
- package/assets/esri/core/workers/chunks/{c2a6ac7046134f725cf3.js → 8ba83fee56dd4f306d87.js} +1 -1
- package/assets/esri/core/workers/chunks/925f53f4ef097c5ce204.js +1 -0
- package/assets/esri/core/workers/chunks/{eff5593e534d2a617ca7.js → 942da417257f8fd8e4cf.js} +1 -1
- package/assets/esri/core/workers/chunks/97450791de57796f842c.js +1 -0
- package/assets/esri/core/workers/chunks/{c9c0dd4d9aaa9b794bd5.js → 9d1faf9358df056be8e7.js} +1 -1
- package/assets/esri/core/workers/chunks/9d410721f42259efe666.js +1 -0
- package/assets/esri/core/workers/chunks/{b98074a98ebc11ed1e09.js → aa3909ffe65b42c61b52.js} +1 -1
- package/assets/esri/core/workers/chunks/af3f30f968363bb3930c.js +1 -0
- package/assets/esri/core/workers/chunks/{93e7d34f52bfafa015e1.js → b58badb11e610024ce4c.js} +1 -1
- package/assets/esri/core/workers/chunks/b5e6a868256c5aae6d5e.js +1 -0
- package/assets/esri/core/workers/chunks/{2307eea4f3b9c0c987f1.js → b9e93d9ea80361716f1d.js} +1 -1
- package/assets/esri/core/workers/chunks/{1f31a507c989b2976660.js → c26a24c89ddf5bdad343.js} +1 -1
- package/assets/esri/core/workers/chunks/{a9b77bea0b8d7a2e5f65.js → c8c0f091aab41e4effa5.js} +1 -1
- package/assets/esri/core/workers/chunks/d573ec98401fbae26383.js +1 -0
- package/assets/esri/core/workers/chunks/{4641e10e0e8e9d257521.js → f436c86f86236ea7ea04.js} +1 -1
- package/assets/esri/core/workers/chunks/{b88c012fa0b0e229a5e3.js → f5b4a8b2bad9b0899954.js} +1 -1
- package/assets/esri/core/workers/chunks/{3bcf3bed475f7c49eb7e.js → f787036fa1ed4f53bb00.js} +1 -1
- package/assets/esri/core/workers/chunks/{ceb38e7e1aa08e1b141f.js → fa3117bb2e11daac000e.js} +1 -1
- package/assets/esri/core/workers/chunks/{77425f33515eb7f0551a.js → fb340c93c114ef090941.js} +1 -1
- package/assets/esri/css/main.scss +1 -1
- package/assets/esri/css/view.scss +1 -1
- package/assets/esri/images/support/loading-throb.gif +0 -0
- package/assets/esri/themes/base/_Overlay.scss +14 -14
- package/assets/esri/themes/base/_OverlayItem.scss +52 -52
- package/assets/esri/themes/base/_Ui.scss +149 -149
- package/assets/esri/themes/base/_View.scss +194 -194
- package/assets/esri/themes/base/_animation.scss +128 -128
- package/assets/esri/themes/base/_color.scss +57 -57
- package/assets/esri/themes/base/_colorVariables.scss +1 -1
- package/assets/esri/themes/base/_core.scss +172 -172
- package/assets/esri/themes/base/_functions.scss +23 -23
- package/assets/esri/themes/base/_layout.scss +11 -11
- package/assets/esri/themes/base/_mixins.scss +665 -665
- package/assets/esri/themes/base/_sizes.scss +130 -130
- package/assets/esri/themes/base/_type.scss +27 -27
- package/assets/esri/themes/base/colors/css/scss/brand_colors.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_core_colors.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_core_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_gray_colors.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_gray_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_highlight_colors.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_highlight_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_vibrant_colors.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/calcite_vibrant_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/css/scss/complete.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/brand_colors.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_core_colors.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_core_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_gray_colors.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_gray_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_highlight_colors.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_highlight_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_vibrant_colors.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/calcite_vibrant_colors_dark.scss +0 -0
- package/assets/esri/themes/base/colors/patterns_json/scss/complete.scss +0 -0
- package/assets/esri/themes/base/fonts/fonts/014f2daa-c310-4a36-b9fd-79a8e0c48d44-ext.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/014f2daa-c310-4a36-b9fd-79a8e0c48d44-greek.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/014f2daa-c310-4a36-b9fd-79a8e0c48d44.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/0763eab1-d6ed-4c73-afb0-895f930df099.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/121524c1-8d82-4155-bfb3-fd2f15f09e93.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/12b00842-ec20-4c7f-aa72-802fb00f6cc4-ext.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/12b00842-ec20-4c7f-aa72-802fb00f6cc4-greek.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/12b00842-ec20-4c7f-aa72-802fb00f6cc4.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/13faf0ae-dcab-4d1c-9c08-f9ca339b6023-greek.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/13faf0ae-dcab-4d1c-9c08-f9ca339b6023.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/15e2e15a-2f36-4a01-b529-677d575bf76d.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/174d458a-81e0-4174-9473-35e3bf0a613c.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/18629a56-2ec3-4470-a65f-f82d7ec4d41b.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/1b3078ef-2971-4c95-b6ca-13ab528758cb.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/1fed34fa-250a-4d32-9f1d-42f978a2e0b2.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/2200dfff-da50-40b0-bc12-5e4b872a1998.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/281f890c-8412-4ee3-84ed-8b5d062d2ab8.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/2a1ae9a5-b6b5-405c-b660-bbdf1b356952.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/31da4b04-f98a-4b5f-b545-a31d26da99e5.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/31e0c094-e345-4a54-a797-d5f1a5885572.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/32a2c5cf-6736-44a6-a276-49ba7e030944.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/341bcc5e-7ac0-44ff-819d-5887892eab1b.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/390cea11-2b11-47ac-b3e8-43ded6ae89ee.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/394a711e-3459-44f3-85c7-e99c01e4b55c.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/3ae1e25e-3aa6-4061-a016-a079159f9d65.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/3d5260a1-e4cd-4567-80ed-69d23c40355f-ext.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/3d5260a1-e4cd-4567-80ed-69d23c40355f-greek.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/3d5260a1-e4cd-4567-80ed-69d23c40355f.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/40d36b4a-60c6-460a-bf43-4c948c23563e.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/41331c3c-3759-4462-8695-33c9a21b6a5b.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/439a2ded-d7a4-42d4-8660-ef8765fa7486.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/45b78f45-e639-4836-8612-e0892e120f14.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/46947883-147e-48dd-97c2-5a8ca675b998.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/4ab86b35-c0c2-42b5-98ad-4b6eba66b197.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/4d1d0d0d-9ea6-4117-901f-8b32ca1ab936.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/4daa2125-53c6-4da8-9614-8a1049eaccc2.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/4e4befe6-3f94-41d8-886c-1a6831818c6a.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/5729f02e-f6b0-4f35-8ee5-c2cffa65fa76.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/57a79aa3-9b06-4ba7-a9a4-2b766d826ecf.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/61f13f40-3829-413c-b6f5-b11abb272edc.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/6ea5fa46-5311-450b-8744-288a30c55348.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/75e2f3b1-1402-4916-8392-4db9ababea7b.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/77156710-6a58-4606-b189-b4185e75967b-ext.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/77156710-6a58-4606-b189-b4185e75967b-greek.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/77156710-6a58-4606-b189-b4185e75967b.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/77caabd3-1877-4634-85c8-8e398a093b99-ext.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/77caabd3-1877-4634-85c8-8e398a093b99-greek.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/77caabd3-1877-4634-85c8-8e398a093b99.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/7db1f672-3a8f-4d19-9c49-7f61aed450b5.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/89370128-6a74-471d-ba04-fa0b59bc8ed3.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/8a65abc7-6463-4895-b3e6-5e203b80b7e2.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/8b01637a-f445-4f10-92ea-b84a355f7690.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/94aa531e-7746-4df0-bb6e-349891f2eda5.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/97694c53-4e94-4f9e-969b-a148adfcdcfd.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/97b330aa-d7fa-4f85-830f-b11a5041b157.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/9851da0a-2481-4687-bbeb-ed4ab170dc38-ext.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/9851da0a-2481-4687-bbeb-ed4ab170dc38.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/9c1ab088-0cb0-402f-9cea-170f0fea14a8.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/a1049d00-54ad-4589-95b8-d353f7ab52f0-greek.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/a1049d00-54ad-4589-95b8-d353f7ab52f0.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/a8aeea1b-1a9d-45b7-8ad9-7c71824599e2.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/a9eaf4d3-6427-42df-9306-3ea1270f7b1a.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/ae454969-59fb-4d42-aecb-dea30459bc7e.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/b0b84e4d-2164-45c7-a674-1662f19f3ba6-basic.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/b0b84e4d-2164-45c7-a674-1662f19f3ba6-ext.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/b0b84e4d-2164-45c7-a674-1662f19f3ba6.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/b17468ea-cf53-4635-984b-4d930a68ed4d.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/bb93c563-55f6-494f-8e1e-448538d95df1.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/c1905e2e-a1cb-49de-9bb0-ce3c5ffc85ae.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/c4cc9032-7eee-4a6e-ae8b-f384b1349bcf.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/c744f2a2-d6a9-4c18-b0ec-f17376acde3e.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/cebce072-9561-4c6d-8c89-f0cefec63289-ext.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/cebce072-9561-4c6d-8c89-f0cefec63289.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/d4ffabb3-dd7c-472a-bdfb-6700383c6354-ext.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/d4ffabb3-dd7c-472a-bdfb-6700383c6354-greek.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/d4ffabb3-dd7c-472a-bdfb-6700383c6354.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/d824d78b-aab0-44e3-8c56-6c3dcf551952.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/d98fb015-7ef6-404f-a58a-5c9242d79770.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/d9e4040d-32ff-4a1c-ac04-927a781da1f5.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/dc10b3bd-5076-4df5-a5f5-e5961f4a6938.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/dd7b7d4e-21ab-4ac0-b26a-d032c992f3c5.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/e388ac99-8c6a-4451-8690-1d15b4d45adb-ext.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/e388ac99-8c6a-4451-8690-1d15b4d45adb-greek.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/e388ac99-8c6a-4451-8690-1d15b4d45adb.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/e57662ff-b1ef-4122-88c1-61bbdabeb365.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/e78b17bb-11fb-4860-8d66-4ee0d0c1e117-ext.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/e78b17bb-11fb-4860-8d66-4ee0d0c1e117-greek.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/e78b17bb-11fb-4860-8d66-4ee0d0c1e117.woff2 +0 -0
- package/assets/esri/themes/base/fonts/fonts/e91d1bbf-3fea-45e2-b003-a22b12ce6e5f-basic.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/e91d1bbf-3fea-45e2-b003-a22b12ce6e5f-ext.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/e91d1bbf-3fea-45e2-b003-a22b12ce6e5f.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/f1799750-0952-403f-8108-b2402eed0f62.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/f4a085c3-1c64-4fc0-a598-26f3e658c2b0.woff +0 -0
- package/assets/esri/themes/base/fonts/fonts/fa71df11-7b19-4baf-8ff7-3537dea718f0.woff +0 -0
- package/assets/esri/themes/base/icons/style.css +0 -0
- package/assets/esri/themes/base/icons/style.scss +0 -0
- package/assets/esri/themes/base/icons/variables.scss +0 -0
- package/assets/esri/themes/base/images/files/archive-32.svg +0 -0
- package/assets/esri/themes/base/images/files/cad-32.svg +0 -0
- package/assets/esri/themes/base/images/files/code-32.svg +0 -0
- package/assets/esri/themes/base/images/files/csv-32.svg +0 -0
- package/assets/esri/themes/base/images/files/excel-32.svg +0 -0
- package/assets/esri/themes/base/images/files/generic-32.svg +0 -0
- package/assets/esri/themes/base/images/files/gpx-32.svg +0 -0
- package/assets/esri/themes/base/images/files/image-32.svg +0 -0
- package/assets/esri/themes/base/images/files/pdf-32.svg +0 -0
- package/assets/esri/themes/base/images/files/report-32.svg +0 -0
- package/assets/esri/themes/base/images/files/sound-32.svg +0 -0
- package/assets/esri/themes/base/images/files/text-32.svg +0 -0
- package/assets/esri/themes/base/images/files/video-32.svg +0 -0
- package/assets/esri/themes/base/images/files/word-32.svg +0 -0
- package/assets/esri/themes/base/images/files/zip-32.svg +0 -0
- package/assets/esri/themes/base/images/loading-throb.gif +0 -0
- package/assets/esri/themes/base/widgets/_AreaMeasurement2D.scss +14 -14
- package/assets/esri/themes/base/widgets/_AreaMeasurement3D.scss +14 -14
- package/assets/esri/themes/base/widgets/_Attachments.scss +286 -286
- package/assets/esri/themes/base/widgets/_Attribution.scss +57 -57
- package/assets/esri/themes/base/widgets/_BasemapGallery.scss +173 -173
- package/assets/esri/themes/base/widgets/_BasemapLayerList.scss +490 -490
- package/assets/esri/themes/base/widgets/_BasemapToggle.scss +123 -123
- package/assets/esri/themes/base/widgets/_BinaryColorSizeSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_Bookmarks.scss +349 -349
- package/assets/esri/themes/base/widgets/_BuildingDisciplinesTree.scss +151 -151
- package/assets/esri/themes/base/widgets/_BuildingExplorer.scss +51 -51
- package/assets/esri/themes/base/widgets/_BuildingLevelPicker.scss +253 -253
- package/assets/esri/themes/base/widgets/_BuildingPhasePicker.scss +92 -92
- package/assets/esri/themes/base/widgets/_ButtonMenu.scss +129 -129
- package/assets/esri/themes/base/widgets/_ClassedColorSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_ClassedSizeSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_ColorPicker.scss +70 -70
- package/assets/esri/themes/base/widgets/_ColorSizeSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_ColorSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_Compass.scss +16 -16
- package/assets/esri/themes/base/widgets/_CoordinateConversion.scss +236 -238
- package/assets/esri/themes/base/widgets/_DatePicker.scss +169 -169
- package/assets/esri/themes/base/widgets/_Daylight.scss +270 -270
- package/assets/esri/themes/base/widgets/_DirectLineMeasurement3D.scss +7 -7
- package/assets/esri/themes/base/widgets/_Directions.scss +471 -471
- package/assets/esri/themes/base/widgets/_DistanceMeasurement2D.scss +7 -7
- package/assets/esri/themes/base/widgets/_Editor.scss +260 -255
- package/assets/esri/themes/base/widgets/_ElevationProfile.scss +439 -439
- package/assets/esri/themes/base/widgets/_Expand.scss +264 -264
- package/assets/esri/themes/base/widgets/_Feature.scss +93 -92
- package/assets/esri/themes/base/widgets/_FeatureContent.scss +97 -97
- package/assets/esri/themes/base/widgets/_FeatureForm.scss +236 -216
- package/assets/esri/themes/base/widgets/_FeatureMedia.scss +86 -86
- package/assets/esri/themes/base/widgets/_FeatureTable.scss +247 -247
- package/assets/esri/themes/base/widgets/_FeatureTemplates.scss +44 -44
- package/assets/esri/themes/base/widgets/_FloorFilter.scss +480 -480
- package/assets/esri/themes/base/widgets/_Grid.scss +71 -71
- package/assets/esri/themes/base/widgets/_HeatmapSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_Histogram.scss +56 -56
- package/assets/esri/themes/base/widgets/_HistogramRangeSlider.scss +105 -105
- package/assets/esri/themes/base/widgets/_IdentityForm.scss +22 -22
- package/assets/esri/themes/base/widgets/_IdentityModal.scss +105 -105
- package/assets/esri/themes/base/widgets/_ItemList.scss +143 -143
- package/assets/esri/themes/base/widgets/_LayerList.scss +413 -413
- package/assets/esri/themes/base/widgets/_Legend.scss +551 -551
- package/assets/esri/themes/base/widgets/_LineOfSight.scss +41 -41
- package/assets/esri/themes/base/widgets/_Measurement.scss +6 -6
- package/assets/esri/themes/base/widgets/_NavigationToggle.scss +99 -99
- package/assets/esri/themes/base/widgets/_OpacitySlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_Popup.scss +748 -745
- package/assets/esri/themes/base/widgets/_Print.scss +269 -269
- package/assets/esri/themes/base/widgets/_SaveLayer.scss +40 -40
- package/assets/esri/themes/base/widgets/_ScaleBar.scss +160 -160
- package/assets/esri/themes/base/widgets/_ScaleRangeSlider.scss +211 -211
- package/assets/esri/themes/base/widgets/_Search.scss +193 -193
- package/assets/esri/themes/base/widgets/_SearchResultRenderer.scss +34 -34
- package/assets/esri/themes/base/widgets/_SelectionToolbar.scss +18 -18
- package/assets/esri/themes/base/widgets/_ShadowCast.scss +202 -202
- package/assets/esri/themes/base/widgets/_SizeSlider.scss +7 -7
- package/assets/esri/themes/base/widgets/_Sketch.scss +151 -151
- package/assets/esri/themes/base/widgets/_Slice.scss +80 -80
- package/assets/esri/themes/base/widgets/_Slider.scss +367 -367
- package/assets/esri/themes/base/widgets/_SnappingControls.scss +143 -143
- package/assets/esri/themes/base/widgets/_Spinner.scss +76 -76
- package/assets/esri/themes/base/widgets/_Swipe.scss +105 -105
- package/assets/esri/themes/base/widgets/_TableList.scss +299 -299
- package/assets/esri/themes/base/widgets/_TimePicker.scss +15 -15
- package/assets/esri/themes/base/widgets/_TimeSlider.scss +404 -404
- package/assets/esri/themes/base/widgets/_Tooltip.scss +61 -61
- package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +47 -47
- package/assets/esri/themes/base/widgets/_Weather.scss +59 -59
- package/assets/esri/themes/base/widgets/_Widget.scss +688 -688
- package/assets/esri/themes/base/widgets/_Zoom.scss +45 -45
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/dark/main.scss +34 -34
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/main.scss +9 -9
- package/assets/esri/themes/light/view.css +1 -1
- package/assets/esri/themes/light/view.scss +9 -9
- package/assets/esri/views/3d/analysis/Slice/images/heading-rotate.svg +4 -4
- package/assets/esri/views/3d/analysis/Slice/images/tilt-rotate.svg +80 -80
- package/assets/esri/views/3d/webgl-engine/lib/intersectorUtils.svg +117 -117
- package/assets/esri/views/magnifier/mask.ts.svg +5 -5
- package/assets/esri/views/magnifier/overlay.ts.svg +36 -36
- package/chunks/Laserlines.glsl.js +5 -5
- package/chunks/LineMarker.glsl.js +32 -38
- package/chunks/Precipitation.glsl.js +1 -1
- package/chunks/RibbonLine.glsl.js +53 -53
- package/chunks/ShadowHighlight.glsl.js +1 -1
- package/chunks/boundedPlane.js +1 -1
- package/chunks/cameraUtilsPlanar.js +1 -1
- package/chunks/cameraUtilsSpherical.js +1 -1
- package/chunks/mat3.js +1 -1
- package/chunks/quat.js +1 -1
- package/chunks/quat2.js +1 -1
- package/chunks/quatf64.js +1 -1
- package/chunks/sphere.js +1 -1
- package/chunks/vec3.js +1 -1
- package/chunks/vec3f32.js +1 -1
- package/chunks/vec4f64.js +1 -1
- package/config.d.ts +1 -1
- package/copyright.txt +1278 -1278
- package/core/Accessor.d.ts +1 -1
- package/core/Accessor.js +1 -1
- package/core/Collection.d.ts +1 -1
- package/core/Error.d.ts +1 -1
- package/core/Evented.d.ts +1 -1
- package/core/HandleOwner.d.ts +1 -1
- package/core/Handles.d.ts +1 -1
- package/core/Identifiable.d.ts +1 -1
- package/core/JSONSupport.d.ts +1 -1
- package/core/Loadable.d.ts +1 -1
- package/core/Promise.d.ts +1 -1
- package/core/VectorStack.js +1 -1
- package/core/accessorSupport/decorators.d.ts +1 -1
- package/core/lang.d.ts +1 -1
- package/core/libs/gl-matrix-2/factories/quatf64.js +1 -1
- package/core/libs/gl-matrix-2/factories/vec3f32.js +1 -1
- package/core/libs/gl-matrix-2/factories/vec4f64.js +1 -1
- package/core/libs/gl-matrix-2/math/mat3.js +1 -1
- package/core/libs/gl-matrix-2/math/quat.js +1 -1
- package/core/libs/gl-matrix-2/math/vec3.js +1 -1
- package/core/perspectiveUtils.js +1 -1
- package/core/promiseUtils.d.ts +1 -1
- package/core/quantity.d.ts +1 -1
- package/core/reactiveUtils.d.ts +1 -1
- package/core/scheduling.d.ts +1 -1
- package/core/sql/WhereClause.d.ts +1 -1
- package/core/sql.d.ts +1 -1
- package/core/units.d.ts +1 -1
- package/core/urlUtils.d.ts +1 -1
- package/core/watchUtils.d.ts +1 -1
- package/core/workers/Connection.d.ts +1 -1
- package/core/workers.d.ts +1 -1
- package/form/ExpressionInfo.d.ts +1 -1
- package/form/FormTemplate.d.ts +1 -1
- package/form/elements/Element.d.ts +1 -1
- package/form/elements/FieldElement.d.ts +1 -1
- package/form/elements/GroupElement.d.ts +1 -1
- package/form/elements/inputs/BarcodeScannerInput.d.ts +1 -1
- package/form/elements/inputs/ComboBoxInput.d.ts +1 -1
- package/form/elements/inputs/DateTimePickerInput.d.ts +1 -1
- package/form/elements/inputs/RadioButtonsInput.d.ts +1 -1
- package/form/elements/inputs/SwitchInput.d.ts +1 -1
- package/form/elements/inputs/TextAreaInput.d.ts +1 -1
- package/form/elements/inputs/TextBoxInput.d.ts +1 -1
- package/form/elements/inputs/TextInput.d.ts +1 -1
- package/form/elements/support/inputs.d.ts +1 -1
- package/form/support/elements.d.ts +1 -1
- package/geohash/GeohashTree.js +1 -1
- package/geometry/Circle.d.ts +1 -1
- package/geometry/Extent.d.ts +1 -1
- package/geometry/Geometry.d.ts +1 -1
- package/geometry/HeightModelInfo.d.ts +1 -1
- package/geometry/Mesh.d.ts +1 -1
- package/geometry/Multipoint.d.ts +1 -1
- package/geometry/Point.d.ts +1 -1
- package/geometry/Polygon.d.ts +1 -1
- package/geometry/Polyline.d.ts +1 -1
- package/geometry/SpatialReference.d.ts +1 -1
- package/geometry/coordinateFormatter.d.ts +1 -1
- package/geometry/geometryEngine.d.ts +1 -1
- package/geometry/geometryEngineAsync.d.ts +1 -1
- package/geometry/projection.d.ts +1 -1
- package/geometry/support/GeographicTransformation.d.ts +1 -1
- package/geometry/support/GeographicTransformationStep.d.ts +1 -1
- package/geometry/support/MeshComponent.d.ts +1 -1
- package/geometry/support/MeshMaterial.d.ts +1 -1
- package/geometry/support/MeshMaterialMetallicRoughness.d.ts +1 -1
- package/geometry/support/MeshTexture.d.ts +1 -1
- package/geometry/support/MeshTransform.js +1 -1
- package/geometry/support/axisAngle.js +1 -1
- package/geometry/support/axisAngleDegrees.js +1 -1
- package/geometry/support/geodesicUtils.d.ts +1 -1
- package/geometry/support/jsonUtils.d.ts +1 -1
- package/geometry/support/lineSegment.js +1 -1
- package/geometry/support/meshUtils/exporters/gltf/gltf.js +1 -1
- package/geometry/support/meshUtils/exporters/gltf/node.js +1 -1
- package/geometry/support/meshUtils/georeference.js +1 -1
- package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
- package/geometry/support/meshUtils/projection.js +1 -1
- package/geometry/support/meshUtils/rotate.js +1 -1
- package/geometry/support/meshUtils.d.ts +1 -1
- package/geometry/support/normalizeUtils.d.ts +1 -1
- package/geometry/support/plane.js +1 -1
- package/geometry/support/webMercatorUtils.d.ts +1 -1
- package/geometry.d.ts +1 -1
- package/identity/Credential.d.ts +1 -1
- package/identity/IdentityManager.d.ts +1 -1
- package/identity/OAuthInfo.d.ts +1 -1
- package/identity/ServerInfo.d.ts +1 -1
- package/interfaces.d.ts +768 -706
- package/intl.d.ts +1 -1
- package/kernel.d.ts +1 -1
- package/layers/BaseDynamicLayer.d.ts +1 -1
- package/layers/BaseElevationLayer.d.ts +1 -1
- package/layers/BaseTileLayer.d.ts +1 -1
- package/layers/BingMapsLayer.d.ts +1 -1
- package/layers/BuildingSceneLayer.d.ts +1 -1
- package/layers/CSVLayer.d.ts +1 -1
- package/layers/DimensionLayer.d.ts +1 -1
- package/layers/ElevationLayer.d.ts +1 -1
- package/layers/FeatureLayer.d.ts +1 -1
- package/layers/GeoJSONLayer.d.ts +1 -1
- package/layers/GeoRSSLayer.d.ts +1 -1
- package/layers/GraphicsLayer.d.ts +1 -1
- package/layers/GroupLayer.d.ts +1 -1
- package/layers/ImageryLayer.d.ts +1 -1
- package/layers/ImageryTileLayer.d.ts +1 -1
- package/layers/IntegratedMeshLayer.d.ts +1 -1
- package/layers/KMLLayer.d.ts +1 -1
- package/layers/Layer.d.ts +1 -1
- package/layers/LineOfSightLayer.d.ts +1 -1
- package/layers/MapImageLayer.d.ts +1 -1
- package/layers/MapNotesLayer.d.ts +1 -1
- package/layers/MapNotesLayer.js +1 -1
- package/layers/MediaLayer.d.ts +1 -1
- package/layers/OGCFeatureLayer.d.ts +1 -1
- package/layers/OpenStreetMapLayer.d.ts +1 -1
- package/layers/PointCloudLayer.d.ts +1 -1
- package/layers/RouteLayer.d.ts +1 -1
- package/layers/SceneLayer.d.ts +1 -1
- package/layers/StreamLayer.d.ts +1 -1
- package/layers/SubtypeGroupLayer.d.ts +1 -1
- package/layers/TileLayer.d.ts +1 -1
- package/layers/UnknownLayer.d.ts +1 -1
- package/layers/UnsupportedLayer.d.ts +1 -1
- package/layers/VectorTileLayer.d.ts +1 -1
- package/layers/VoxelLayer.d.ts +1 -1
- package/layers/WCSLayer.d.ts +1 -1
- package/layers/WFSLayer.d.ts +1 -1
- package/layers/WMSLayer.d.ts +1 -1
- package/layers/WMTSLayer.d.ts +1 -1
- package/layers/WebTileLayer.d.ts +1 -1
- package/layers/buildingSublayers/BuildingComponentSublayer.d.ts +1 -1
- package/layers/buildingSublayers/BuildingGroupSublayer.d.ts +1 -1
- package/layers/buildingSublayers/BuildingSublayer.d.ts +1 -1
- package/layers/graphics/data/SnappingCandidate.js +1 -1
- package/layers/mixins/APIKeyMixin.d.ts +1 -1
- package/layers/mixins/ArcGISCachedService.d.ts +1 -1
- package/layers/mixins/ArcGISImageService.d.ts +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/ArcGISMapService.d.ts +1 -1
- package/layers/mixins/BlendLayer.d.ts +1 -1
- package/layers/mixins/CustomParametersMixin.d.ts +1 -1
- package/layers/mixins/FeatureEffectLayer.d.ts +1 -1
- package/layers/mixins/FeatureLayerBase.d.ts +4 -0
- package/layers/mixins/FeatureReductionLayer.d.ts +1 -1
- package/layers/mixins/ImageryTileMixin.d.ts +1 -1
- package/layers/mixins/ImageryTileMixin.js +1 -1
- package/layers/mixins/OrderedLayer.d.ts +1 -1
- package/layers/mixins/PortalLayer.d.ts +1 -1
- package/layers/mixins/PublishableLayer.d.ts +1 -1
- package/layers/mixins/RefreshableLayer.d.ts +1 -1
- package/layers/mixins/ScaleRangeLayer.d.ts +1 -1
- package/layers/mixins/SceneService.d.ts +1 -1
- package/layers/mixins/SublayersOwner.d.ts +1 -1
- package/layers/mixins/TemporalLayer.d.ts +1 -1
- package/layers/ogc/wfsUtils.d.ts +1 -1
- package/layers/pointCloudFilters/PointCloudFilter.d.ts +1 -1
- package/layers/pointCloudFilters/PointCloudReturnFilter.d.ts +1 -1
- package/layers/pointCloudFilters/PointCloudValueFilter.d.ts +1 -1
- package/layers/support/AggregateField.d.ts +1 -1
- package/layers/support/BuildingFilter.d.ts +1 -1
- package/layers/support/BuildingSummaryStatistics.d.ts +1 -1
- package/layers/support/CodedValueDomain.d.ts +1 -1
- package/layers/support/ControlPointsGeoreference.d.ts +1 -1
- package/layers/support/CornersGeoreference.d.ts +1 -1
- package/layers/support/DimensionalDefinition.d.ts +1 -1
- package/layers/support/Domain.d.ts +1 -1
- package/layers/support/ElevationSampler.d.ts +1 -1
- package/layers/support/ExpressionInfo.d.ts +1 -1
- package/layers/support/ExtentAndRotationGeoreference.d.ts +1 -1
- package/layers/support/FacilityLayerInfo.d.ts +1 -1
- package/layers/support/FeatureEffect.d.ts +1 -1
- package/layers/support/FeatureFilter.d.ts +1 -1
- package/layers/support/FeatureReductionBinning.d.ts +1 -1
- package/layers/support/FeatureReductionCluster.d.ts +1 -1
- package/layers/support/FeatureReductionSelection.d.ts +1 -1
- package/layers/support/FeatureTemplate.d.ts +1 -1
- package/layers/support/FeatureType.d.ts +1 -1
- package/layers/support/Field.d.ts +1 -1
- package/layers/support/FieldsIndex.d.ts +1 -1
- package/layers/support/GeometryFieldsInfo.d.ts +1 -1
- package/layers/support/ImageElement.d.ts +1 -1
- package/layers/support/ImageParameters.d.ts +1 -1
- package/layers/support/InheritedDomain.d.ts +1 -1
- package/layers/support/KMLSublayer.d.ts +1 -1
- package/layers/support/LOD.d.ts +1 -1
- package/layers/support/LabelClass.d.ts +1 -1
- package/layers/support/LayerFloorInfo.d.ts +1 -1
- package/layers/support/LevelLayerInfo.d.ts +1 -1
- package/layers/support/LocalMediaElementSource.d.ts +1 -1
- package/layers/support/MapImage.d.ts +1 -1
- package/layers/support/MediaElementBase.d.ts +1 -1
- package/layers/support/MosaicRule.d.ts +1 -1
- package/layers/support/MultidimensionalSubset.d.ts +4 -0
- package/layers/support/MultidimensionalSubset.js +1 -1
- package/layers/support/PixelBlock.d.ts +1 -1
- package/layers/support/PublishingInfo.d.ts +1 -1
- package/layers/support/RangeDomain.d.ts +1 -1
- package/layers/support/RasterFunction.d.ts +1 -1
- package/layers/support/RasterInfo.d.ts +1 -1
- package/layers/support/Relationship.d.ts +1 -1
- package/layers/support/RouteStopSymbols.d.ts +1 -1
- package/layers/support/RouteSymbols.d.ts +1 -1
- package/layers/support/SceneFilter.d.ts +1 -1
- package/layers/support/SceneModification.d.ts +1 -1
- package/layers/support/SceneModifications.d.ts +1 -1
- package/layers/support/SiteLayerInfo.d.ts +1 -1
- package/layers/support/StreamConnection.d.ts +1 -1
- package/layers/support/Sublayer.d.ts +1 -1
- package/layers/support/SubtypeSublayer.d.ts +1 -1
- package/layers/support/TileInfo.d.ts +1 -1
- package/layers/support/TileMatrixSet.d.ts +1 -1
- package/layers/support/TimeInfo.d.ts +1 -1
- package/layers/support/TimeReference.d.ts +1 -1
- package/layers/support/VideoElement.d.ts +1 -1
- package/layers/support/VoxelVariable.d.ts +1 -1
- package/layers/support/VoxelVolumeStyle.d.ts +1 -1
- package/layers/support/WMSSublayer.d.ts +1 -1
- package/layers/support/WMTSStyle.d.ts +1 -1
- package/layers/support/WMTSSublayer.d.ts +1 -1
- package/layers/support/arcadeUtils.d.ts +1 -1
- package/layers/support/fieldUtils.d.ts +1 -1
- package/layers/support/rasterDatasets/BaseRaster.js +1 -1
- package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
- package/layers/support/rasterFunctions/vectorFieldUtils.js +1 -1
- package/layers/support/wmtsUtils.js +1 -1
- package/layers/voxel/VoxelDynamicSection.d.ts +1 -1
- package/layers/voxel/VoxelSlice.d.ts +1 -1
- package/layers/voxel/VoxelTransferFunctionStyle.d.ts +1 -1
- package/layers/voxel/VoxelVariable.d.ts +1 -1
- package/layers/voxel/VoxelVariableStyle.d.ts +1 -1
- package/layers/voxel/VoxelVolume.d.ts +1 -1
- package/layers/voxel/VoxelVolume.js +1 -1
- package/layers/voxel/VoxelVolumeStyle.d.ts +1 -1
- package/layers/voxel/voxelPlaneUtils.js +1 -1
- package/networks/Network.d.ts +1 -1
- package/networks/Network.js +1 -1
- package/networks/UtilityNetwork.d.ts +1 -1
- package/networks/support/NamedTraceConfiguration.d.ts +1 -1
- package/networks/support/NetworkSystemLayers.d.ts +1 -1
- package/networks/support/Terminal.d.ts +1 -1
- package/networks/support/TerminalConfiguration.d.ts +1 -1
- package/networks/support/TraceConfiguration.d.ts +1 -1
- package/networks/support/UNTraceConfiguration.d.ts +1 -1
- package/networks/support/utils.js +1 -1
- package/package.json +1 -1
- package/pointCloudRenderers.d.ts +1 -1
- package/popup/ElementExpressionInfo.d.ts +1 -1
- package/popup/ExpressionInfo.d.ts +1 -1
- package/popup/FieldInfo.d.ts +1 -1
- package/popup/LayerOptions.d.ts +1 -1
- package/popup/RelatedRecordsInfo.d.ts +1 -1
- package/popup/content/AttachmentsContent.d.ts +1 -1
- package/popup/content/BarChartMediaInfo.d.ts +1 -1
- package/popup/content/ColumnChartMediaInfo.d.ts +1 -1
- package/popup/content/Content.d.ts +1 -1
- package/popup/content/CustomContent.d.ts +1 -1
- package/popup/content/ExpressionContent.d.ts +1 -1
- package/popup/content/FieldsContent.d.ts +1 -1
- package/popup/content/ImageMediaInfo.d.ts +1 -1
- package/popup/content/LineChartMediaInfo.d.ts +1 -1
- package/popup/content/MediaContent.d.ts +1 -1
- package/popup/content/PieChartMediaInfo.d.ts +1 -1
- package/popup/content/RelationshipContent.d.ts +1 -1
- package/popup/content/TextContent.d.ts +1 -1
- package/popup/content/mixins/ChartMediaInfo.d.ts +1 -1
- package/popup/content/mixins/MediaInfo.d.ts +1 -1
- package/popup/content/support/ChartMediaInfoValue.d.ts +1 -1
- package/popup/content/support/ChartMediaInfoValueSeries.d.ts +1 -1
- package/popup/content/support/ImageMediaInfoValue.d.ts +1 -1
- package/popup/content.d.ts +1 -1
- package/popup/support/FieldInfoFormat.d.ts +1 -1
- package/popup/support/RelatedRecordsInfoFieldOrder.d.ts +1 -1
- package/portal/Portal.d.ts +1 -1
- package/portal/PortalFolder.d.ts +1 -1
- package/portal/PortalGroup.d.ts +1 -1
- package/portal/PortalItem.d.ts +1 -1
- package/portal/PortalItemResource.d.ts +1 -1
- package/portal/PortalQueryParams.d.ts +1 -1
- package/portal/PortalQueryResult.d.ts +1 -1
- package/portal/PortalRating.d.ts +1 -1
- package/portal/PortalUser.d.ts +1 -1
- package/portal/schemas/definitions.js +1 -1
- package/rasterRenderers.d.ts +1 -1
- package/renderers/ClassBreaksRenderer.d.ts +1 -1
- package/renderers/DictionaryRenderer.d.ts +1 -1
- package/renderers/DotDensityRenderer.d.ts +1 -1
- package/renderers/FlowRenderer.d.ts +1 -1
- package/renderers/HeatmapRenderer.d.ts +1 -1
- package/renderers/PieChartRenderer.d.ts +1 -1
- package/renderers/PointCloudClassBreaksRenderer.d.ts +1 -1
- package/renderers/PointCloudRGBRenderer.d.ts +1 -1
- package/renderers/PointCloudRenderer.d.ts +1 -1
- package/renderers/PointCloudStretchRenderer.d.ts +1 -1
- package/renderers/PointCloudUniqueValueRenderer.d.ts +1 -1
- package/renderers/RasterColormapRenderer.d.ts +1 -1
- package/renderers/RasterShadedReliefRenderer.d.ts +1 -1
- package/renderers/RasterStretchRenderer.d.ts +1 -1
- package/renderers/Renderer.d.ts +1 -1
- package/renderers/SimpleRenderer.d.ts +1 -1
- package/renderers/UniqueValueRenderer.d.ts +1 -1
- package/renderers/UniqueValueRenderer.js +1 -1
- package/renderers/VectorFieldRenderer.d.ts +1 -1
- package/renderers/mixins/VisualVariablesMixin.d.ts +1 -1
- package/renderers/support/AttributeColorInfo.d.ts +1 -1
- package/renderers/support/AuthoringInfo.d.ts +1 -1
- package/renderers/support/AuthoringInfoVisualVariable.d.ts +1 -1
- package/renderers/support/ClassBreakInfo.d.ts +1 -1
- package/renderers/support/ColormapInfo.d.ts +1 -1
- package/renderers/support/HeatmapColorStop.d.ts +1 -1
- package/renderers/support/UniqueValue.d.ts +1 -1
- package/renderers/support/UniqueValueClass.d.ts +1 -1
- package/renderers/support/UniqueValueClass.js +1 -1
- package/renderers/support/UniqueValueGroup.d.ts +1 -1
- package/renderers/support/UniqueValueInfo.d.ts +1 -1
- package/renderers/support/jsonUtils.d.ts +1 -1
- package/renderers/visualVariables/ColorVariable.d.ts +1 -1
- package/renderers/visualVariables/OpacityVariable.d.ts +1 -1
- package/renderers/visualVariables/RotationVariable.d.ts +1 -1
- package/renderers/visualVariables/SizeVariable.d.ts +1 -1
- package/renderers/visualVariables/VisualVariable.d.ts +1 -1
- package/renderers/visualVariables/support/ColorSizeStop.d.ts +1 -1
- package/renderers/visualVariables/support/ColorStop.d.ts +1 -1
- package/renderers/visualVariables/support/OpacityStop.d.ts +1 -1
- package/renderers/visualVariables/support/SizeStop.d.ts +1 -1
- package/renderers.d.ts +1 -1
- package/request.d.ts +1 -1
- package/rest/closestFacility.d.ts +1 -1
- package/rest/find.d.ts +1 -1
- package/rest/geometryService.d.ts +1 -1
- package/rest/geoprocessor/GPOptions.d.ts +1 -1
- package/rest/geoprocessor.d.ts +1 -1
- package/rest/identify.d.ts +1 -1
- package/rest/imageService.d.ts +1 -1
- package/rest/knowledgeGraph/DataModel.d.ts +1 -1
- package/rest/knowledgeGraph/Entity.d.ts +1 -1
- package/rest/knowledgeGraph/EntityType.d.ts +1 -1
- package/rest/knowledgeGraph/FieldIndex.d.ts +1 -1
- package/rest/knowledgeGraph/GraphApplyEdits.d.ts +1 -1
- package/rest/knowledgeGraph/GraphApplyEditsResult.d.ts +1 -1
- package/rest/knowledgeGraph/GraphNamedObject.d.ts +1 -1
- package/rest/knowledgeGraph/GraphObject.d.ts +1 -1
- package/rest/knowledgeGraph/GraphObjectType.d.ts +1 -1
- package/rest/knowledgeGraph/GraphProperty.d.ts +1 -1
- package/rest/knowledgeGraph/GraphQuery.d.ts +1 -1
- package/rest/knowledgeGraph/GraphQueryResult.d.ts +1 -1
- package/rest/knowledgeGraph/GraphQueryStreaming.d.ts +1 -1
- package/rest/knowledgeGraph/GraphQueryStreamingResult.d.ts +1 -1
- package/rest/knowledgeGraph/GraphSearch.d.ts +1 -1
- package/rest/knowledgeGraph/GraphSearchStreaming.d.ts +1 -1
- package/rest/knowledgeGraph/InputQuantizationParameters.d.ts +1 -1
- package/rest/knowledgeGraph/KnowledgeGraph.d.ts +1 -1
- package/rest/knowledgeGraph/OutputQuantizationParameters.d.ts +1 -1
- package/rest/knowledgeGraph/Path.d.ts +1 -1
- package/rest/knowledgeGraph/Relationship.d.ts +1 -1
- package/rest/knowledgeGraph/RelationshipType.d.ts +1 -1
- package/rest/knowledgeGraphService.d.ts +1 -1
- package/rest/locator.d.ts +1 -1
- package/rest/networkService.d.ts +1 -1
- package/rest/networks/support/AggregatedGeometry.d.ts +1 -1
- package/rest/networks/support/Association.d.ts +1 -1
- package/rest/networks/support/AssociationGeometriesResult.d.ts +1 -1
- package/rest/networks/support/FunctionResult.d.ts +1 -1
- package/rest/networks/support/NetworkElement.d.ts +1 -1
- package/rest/networks/support/SynthesizeAssociationGeometriesParameters.d.ts +1 -1
- package/rest/networks/support/TraceLocation.d.ts +1 -1
- package/rest/networks/support/TraceParameters.d.ts +1 -1
- package/rest/networks/support/TraceResult.d.ts +1 -1
- package/rest/networks/synthesizeAssociationGeometries.d.ts +1 -1
- package/rest/networks/trace.d.ts +1 -1
- package/rest/print.d.ts +1 -1
- package/rest/print.js +1 -1
- package/rest/query/support/AttachmentInfo.d.ts +1 -1
- package/rest/query.d.ts +1 -1
- package/rest/route.d.ts +1 -1
- package/rest/serviceArea.d.ts +1 -1
- package/rest/support/AddressCandidate.d.ts +1 -1
- package/rest/support/AlgorithmicColorRamp.d.ts +1 -1
- package/rest/support/AreasAndLengthsParameters.d.ts +1 -1
- package/rest/support/AttachmentQuery.d.ts +1 -1
- package/rest/support/BufferParameters.d.ts +1 -1
- package/rest/support/ClosestFacilityParameters.d.ts +1 -1
- package/rest/support/ClosestFacilitySolveResult.d.ts +1 -1
- package/rest/support/ColorRamp.d.ts +1 -1
- package/rest/support/DataFile.d.ts +1 -1
- package/rest/support/DataLayer.d.ts +1 -1
- package/rest/support/DensifyParameters.d.ts +1 -1
- package/rest/support/DirectionLine.d.ts +1 -1
- package/rest/support/DirectionLine.js +1 -1
- package/rest/support/DirectionPoint.d.ts +1 -1
- package/rest/support/DirectionPoint.js +1 -1
- package/rest/support/DirectionsEvent.d.ts +1 -1
- package/rest/support/DirectionsFeature.d.ts +1 -1
- package/rest/support/DirectionsFeatureSet.d.ts +1 -1
- package/rest/support/DistanceParameters.d.ts +1 -1
- package/rest/support/FeatureSet.d.ts +1 -1
- package/rest/support/FindParameters.d.ts +1 -1
- package/rest/support/FindResult.d.ts +1 -1
- package/rest/support/GPMessage.d.ts +1 -1
- package/rest/support/GeneralizeParameters.d.ts +1 -1
- package/rest/support/IdentifyParameters.d.ts +1 -1
- package/rest/support/IdentifyResult.d.ts +1 -1
- package/rest/support/ImageAngleParameters.d.ts +1 -1
- package/rest/support/ImageAngleResult.d.ts +1 -1
- package/rest/support/ImageHistogramParameters.d.ts +1 -1
- package/rest/support/ImageIdentifyParameters.d.ts +1 -1
- package/rest/support/ImageIdentifyResult.d.ts +1 -1
- package/rest/support/ImageParameters.d.ts +1 -1
- package/rest/support/ImagePixelLocationParameters.d.ts +1 -1
- package/rest/support/ImagePixelLocationResult.d.ts +1 -1
- package/rest/support/ImageSample.d.ts +1 -1
- package/rest/support/ImageSampleParameters.d.ts +1 -1
- package/rest/support/ImageSampleResult.d.ts +1 -1
- package/rest/support/JobInfo.d.ts +1 -1
- package/rest/support/LegendLayer.d.ts +1 -1
- package/rest/support/LengthsParameters.d.ts +1 -1
- package/rest/support/LinearUnit.d.ts +1 -1
- package/rest/support/MultipartColorRamp.d.ts +1 -1
- package/rest/support/NAMessage.d.ts +1 -1
- package/rest/support/NetworkFeatureSet.d.ts +1 -1
- package/rest/support/NetworkUrl.d.ts +1 -1
- package/rest/support/OffsetParameters.d.ts +1 -1
- package/rest/support/ParameterValue.d.ts +1 -1
- package/rest/support/PointBarrier.d.ts +1 -1
- package/rest/support/PointBarrier.js +1 -1
- package/rest/support/PolygonBarrier.d.ts +1 -1
- package/rest/support/PolygonBarrier.js +1 -1
- package/rest/support/PolylineBarrier.d.ts +1 -1
- package/rest/support/PolylineBarrier.js +1 -1
- package/rest/support/PrintParameters.d.ts +1 -1
- package/rest/support/PrintTemplate.d.ts +1 -1
- package/rest/support/ProjectParameters.d.ts +1 -1
- package/rest/support/Query.d.ts +1 -1
- package/rest/support/RasterData.d.ts +1 -1
- package/rest/support/RelationParameters.d.ts +1 -1
- package/rest/support/RelationshipQuery.d.ts +1 -1
- package/rest/support/RouteInfo.d.ts +1 -1
- package/rest/support/RouteInfo.js +1 -1
- package/rest/support/RouteParameters.d.ts +1 -1
- package/rest/support/RouteResult.d.ts +1 -1
- package/rest/support/RouteSolveResult.d.ts +1 -1
- package/rest/support/ServiceAreaParameters.d.ts +1 -1
- package/rest/support/ServiceAreaSolveResult.d.ts +1 -1
- package/rest/support/StatisticDefinition.d.ts +1 -1
- package/rest/support/Stop.d.ts +1 -1
- package/rest/support/Stop.js +1 -1
- package/rest/support/TopFeaturesQuery.d.ts +1 -1
- package/rest/support/TopFilter.d.ts +1 -1
- package/rest/support/TravelMode.d.ts +1 -1
- package/rest/support/TrimExtendParameters.d.ts +1 -1
- package/rest/symbolService.d.ts +1 -1
- package/smartMapping/heuristics/outline.js +1 -1
- package/smartMapping/heuristics/scaleRange.d.ts +1 -1
- package/smartMapping/heuristics/scaleRange.js +1 -1
- package/smartMapping/heuristics/sizeRange.d.ts +1 -1
- package/smartMapping/heuristics/sizeRange.js +1 -1
- package/smartMapping/labels/clusters.d.ts +1 -1
- package/smartMapping/popup/clusters.d.ts +1 -1
- package/smartMapping/popup/templates.d.ts +1 -1
- package/smartMapping/raster/renderers/classBreaks.d.ts +1 -1
- package/smartMapping/raster/renderers/colormap.d.ts +1 -1
- package/smartMapping/raster/renderers/flow.d.ts +1 -1
- package/smartMapping/raster/renderers/rgb.d.ts +1 -1
- package/smartMapping/raster/renderers/shadedRelief.d.ts +1 -1
- package/smartMapping/raster/renderers/stretch.d.ts +1 -1
- package/smartMapping/raster/renderers/uniqueValue.d.ts +1 -1
- package/smartMapping/raster/renderers/vectorField.d.ts +1 -1
- package/smartMapping/raster/support/utils.d.ts +1 -1
- package/smartMapping/renderers/color.d.ts +1 -1
- package/smartMapping/renderers/color.js +1 -1
- package/smartMapping/renderers/dotDensity.d.ts +1 -1
- package/smartMapping/renderers/dotDensity.js +1 -1
- package/smartMapping/renderers/heatmap.d.ts +1 -1
- package/smartMapping/renderers/location.d.ts +1 -1
- package/smartMapping/renderers/location.js +1 -1
- package/smartMapping/renderers/opacity.d.ts +1 -1
- package/smartMapping/renderers/opacity.js +1 -1
- package/smartMapping/renderers/pieChart.d.ts +1 -1
- package/smartMapping/renderers/pieChart.js +1 -1
- package/smartMapping/renderers/predominance.d.ts +1 -1
- package/smartMapping/renderers/predominance.js +1 -1
- package/smartMapping/renderers/relationship.d.ts +1 -1
- package/smartMapping/renderers/relationship.js +1 -1
- package/smartMapping/renderers/size.d.ts +1 -1
- package/smartMapping/renderers/size.js +1 -1
- package/smartMapping/renderers/support/utils.js +1 -1
- package/smartMapping/renderers/type.d.ts +1 -1
- package/smartMapping/renderers/type.js +1 -1
- package/smartMapping/renderers/univariateColorSize.d.ts +1 -1
- package/smartMapping/renderers/univariateColorSize.js +1 -1
- package/smartMapping/statistics/classBreaks.d.ts +1 -1
- package/smartMapping/statistics/classBreaks.js +1 -1
- package/smartMapping/statistics/heatmapStatistics.d.ts +1 -1
- package/smartMapping/statistics/histogram.d.ts +1 -1
- package/smartMapping/statistics/histogram.js +1 -1
- package/smartMapping/statistics/predominantCategories.d.ts +1 -1
- package/smartMapping/statistics/predominantCategories.js +1 -1
- package/smartMapping/statistics/summaryStatistics.d.ts +1 -1
- package/smartMapping/statistics/summaryStatistics.js +1 -1
- package/smartMapping/statistics/summaryStatisticsForAge.d.ts +1 -1
- package/smartMapping/statistics/summaryStatisticsForAttributes.js +1 -1
- package/smartMapping/statistics/support/ageUtils.d.ts +1 -1
- package/smartMapping/statistics/support/predominanceUtils.d.ts +1 -1
- package/smartMapping/statistics/uniqueValues.d.ts +1 -1
- package/smartMapping/statistics/uniqueValues.js +1 -1
- package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +5 -0
- package/smartMapping/support/adapters/SceneLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/support/layerUtils.js +1 -1
- package/smartMapping/support/adapters/support/utils.js +1 -1
- package/smartMapping/support/binningUtils.js +1 -1
- package/smartMapping/symbology/color.d.ts +1 -1
- package/smartMapping/symbology/dotDensity.d.ts +1 -1
- package/smartMapping/symbology/flow.d.ts +1 -1
- package/smartMapping/symbology/heatmap.d.ts +1 -1
- package/smartMapping/symbology/location.d.ts +1 -1
- package/smartMapping/symbology/pieChart.d.ts +1 -1
- package/smartMapping/symbology/predominance.d.ts +1 -1
- package/smartMapping/symbology/relationship.d.ts +1 -1
- package/smartMapping/symbology/size.d.ts +1 -1
- package/smartMapping/symbology/support/colorRamps.d.ts +1 -1
- package/smartMapping/symbology/type.d.ts +1 -1
- package/support/LayersMixin.d.ts +1 -1
- package/support/MapFloorInfo.d.ts +1 -1
- package/support/TablesMixin.d.ts +1 -1
- package/support/actions/ActionBase.d.ts +1 -1
- package/support/actions/ActionButton.d.ts +1 -1
- package/support/actions/ActionToggle.d.ts +1 -1
- package/support/popupUtils.d.ts +1 -1
- package/support/revision.js +1 -1
- package/support/timeUtils.d.ts +1 -1
- package/symbols/CIMSymbol.d.ts +1 -1
- package/symbols/ExtrudeSymbol3DLayer.d.ts +1 -1
- package/symbols/FillSymbol.d.ts +1 -1
- package/symbols/FillSymbol3DLayer.d.ts +1 -1
- package/symbols/Font.d.ts +1 -1
- package/symbols/IconSymbol3DLayer.d.ts +1 -1
- package/symbols/LabelSymbol3D.d.ts +1 -1
- package/symbols/LineStyleMarker3D.d.ts +1 -1
- package/symbols/LineSymbol.d.ts +1 -1
- package/symbols/LineSymbol3D.d.ts +1 -1
- package/symbols/LineSymbol3DLayer.d.ts +1 -1
- package/symbols/LineSymbolMarker.d.ts +1 -1
- package/symbols/MarkerSymbol.d.ts +1 -1
- package/symbols/MeshSymbol3D.d.ts +1 -1
- package/symbols/ObjectSymbol3DLayer.d.ts +1 -1
- package/symbols/PathSymbol3DLayer.d.ts +1 -1
- package/symbols/PictureFillSymbol.d.ts +1 -1
- package/symbols/PictureMarkerSymbol.d.ts +1 -1
- package/symbols/PointSymbol3D.d.ts +1 -1
- package/symbols/PolygonSymbol3D.d.ts +1 -1
- package/symbols/SimpleFillSymbol.d.ts +1 -1
- package/symbols/SimpleLineSymbol.d.ts +1 -1
- package/symbols/SimpleMarkerSymbol.d.ts +1 -1
- package/symbols/Symbol.d.ts +1 -1
- package/symbols/Symbol3D.d.ts +1 -1
- package/symbols/Symbol3DLayer.d.ts +1 -1
- package/symbols/TextSymbol.d.ts +1 -1
- package/symbols/TextSymbol3DLayer.d.ts +1 -1
- package/symbols/WaterSymbol3DLayer.d.ts +1 -1
- package/symbols/WebStyleSymbol.d.ts +1 -1
- package/symbols/callouts/Callout3D.d.ts +1 -1
- package/symbols/callouts/LineCallout3D.d.ts +1 -1
- package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
- package/symbols/edges/Edges3D.d.ts +1 -1
- package/symbols/edges/SketchEdges3D.d.ts +1 -1
- package/symbols/edges/SolidEdges3D.d.ts +1 -1
- package/symbols/patterns/LineStylePattern3D.d.ts +1 -1
- package/symbols/patterns/StylePattern3D.d.ts +1 -1
- package/symbols/support/StyleOrigin.d.ts +1 -1
- package/symbols/support/Symbol3DVerticalOffset.d.ts +1 -1
- package/symbols/support/cimSymbolUtils.d.ts +1 -1
- package/symbols/support/jsonUtils.d.ts +1 -1
- package/symbols/support/previewCIMSymbol.js +1 -1
- package/symbols/support/previewSymbol2D.js +1 -1
- package/symbols/support/symbolUtils.d.ts +1 -1
- package/symbols/support/symbolUtils.js +1 -1
- package/symbols.d.ts +1 -1
- package/views/2d/LabelManager.js +1 -1
- package/views/2d/ViewState.d.ts +1 -1
- package/views/2d/ViewState.js +1 -1
- package/views/2d/engine/flow/FlowDisplayObject.js +1 -1
- package/views/2d/engine/imagery/RasterVFTile.js +1 -1
- package/views/2d/engine/vectorTiles/TileHandler.js +1 -1
- package/views/2d/engine/vectorTiles/VectorTile.js +1 -1
- package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
- package/views/2d/engine/webgl/OverlayContainer.js +1 -1
- package/views/2d/engine/webgl/Painter.js +1 -1
- package/views/2d/engine/webgl/TextureUploadManager.js +1 -1
- package/views/2d/engine/webgl/TiledDisplayObject.js +1 -1
- package/views/2d/engine/webgl/WGLTile.js +1 -1
- package/views/2d/engine/webgl/WorldExtentClipRenderer.js +1 -1
- package/views/2d/engine/webgl/collisions/CollisionEngine.js +1 -1
- package/views/2d/layers/BaseLayerView2D.d.ts +1 -1
- package/views/2d/layers/BaseLayerViewGL2D.d.ts +1 -1
- package/views/2d/layers/FeatureLayerView2D.js +1 -1
- package/views/2d/layers/features/controllers/FeatureController2D.js +1 -1
- package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
- package/views/2d/layers/support/DebugOverlay.js +1 -1
- package/views/2d/layers/support/FeatureLayerProxy.js +1 -1
- package/views/3d/analysis/AreaMeasurement/support/MeasurementData.js +1 -1
- package/views/3d/analysis/AreaMeasurementAnalysisView3D.d.ts +1 -1
- package/views/3d/analysis/Dimension/DimensionTool.js +1 -1
- package/views/3d/analysis/Dimension/DimensionVisualization.js +1 -1
- package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
- package/views/3d/analysis/Dimension/lengthDimensionConstraintUtils.js +1 -1
- package/views/3d/analysis/Dimension/lengthDimensionManipulatorUtils.js +1 -1
- package/views/3d/analysis/Dimension/lengthDimensionUtils.js +1 -1
- package/views/3d/analysis/Dimension/settings.js +1 -1
- package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.d.ts +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
- package/views/3d/analysis/LineOfSightAnalysisResult.d.ts +1 -1
- package/views/3d/analysis/LineOfSightAnalysisView3D.d.ts +1 -1
- package/views/3d/analysis/Slice/SliceTool.js +1 -1
- package/views/3d/analysis/Slice/SliceVisualization.js +1 -1
- package/views/3d/analysis/Slice/sliceToolConfig.js +1 -1
- package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
- package/views/3d/analysis/SliceAnalysisView3D.d.ts +1 -1
- package/views/3d/camera/constraintUtils/distance.js +1 -1
- package/views/3d/camera/constraintUtils/tilt.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.js +1 -1
- package/views/3d/environment/CloudsCompositionParameters.js +1 -1
- package/views/3d/environment/CloudyWeather.d.ts +1 -1
- package/views/3d/environment/EnvironmentRenderer.js +1 -1
- package/views/3d/environment/FoggyWeather.d.ts +1 -1
- package/views/3d/environment/RainyWeather.d.ts +1 -1
- package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.js +1 -1
- package/views/3d/environment/SnowyWeather.d.ts +1 -1
- package/views/3d/environment/SunLighting.d.ts +1 -1
- package/views/3d/environment/SunnyWeather.d.ts +1 -1
- package/views/3d/environment/VirtualLighting.d.ts +1 -1
- package/views/3d/externalRenderers.d.ts +1 -1
- package/views/3d/glTF/internal/Resource.js +1 -1
- package/views/3d/interactive/Manipulator3D.js +1 -1
- package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
- package/views/3d/interactive/editingTools/reshapeGraphic/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/reshapeGraphic/edgeOffsetUtils.js +1 -1
- package/views/3d/interactive/editingTools/settings.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/ExtentTransformTool.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
- package/views/3d/interactive/manipulatorUtils.js +1 -1
- package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/PointCloudLayerView3D.js +1 -1
- package/views/3d/layers/PointCloudWorker.js +1 -1
- package/views/3d/layers/graphics/Deconflictor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLodInstanceGraphicLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/elevationAlignPointsInFeatures.js +1 -1
- package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
- package/views/3d/layers/i3s/I3SElevationProvider.js +1 -1
- package/views/3d/layers/i3s/I3SIndex.js +1 -1
- package/views/3d/layers/i3s/I3SMeshViewFilter.js +1 -1
- package/views/3d/layers/i3s/I3SUtil.js +1 -1
- package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
- package/views/3d/layers/i3s/PointRenderer.js +1 -1
- package/views/3d/layers/support/FeatureTileVisibility3D.js +1 -1
- package/views/3d/layers/support/I3STreeDebugger.js +1 -1
- package/views/3d/layers/support/edgeUtils.js +1 -1
- package/views/3d/layers/support/uvUtils.js +1 -1
- package/views/3d/state/Frustum.js +1 -1
- package/views/3d/state/ViewStateManager.js +1 -1
- package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
- package/views/3d/state/controllers/RotateController.js +1 -1
- package/views/3d/state/controllers/global/PinchAndPanController.js +1 -1
- package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
- package/views/3d/state/controllers/local/ZoomController.js +1 -1
- package/views/3d/state/controllers/momentum/ZoomPlanarMomentumController.js +1 -1
- package/views/3d/state/utils/navigationUtils.js +1 -1
- package/views/3d/support/FrustumExtentIntersection.js +1 -1
- package/views/3d/support/LayerPerformanceInfo.d.ts +1 -1
- package/views/3d/support/SceneViewPerformanceInfo.d.ts +1 -1
- package/views/3d/support/orientedBoundingBox.js +1 -1
- package/views/3d/support/pointsOfInterest/CameraOnSurface.js +1 -1
- package/views/3d/support/pointsOfInterest/CenterOnSurface.js +1 -1
- package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
- package/views/3d/support/sunUtils.js +1 -1
- package/views/3d/terrain/PatchRenderData.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/Tile.js +1 -1
- package/views/3d/terrain/TileRenderer.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/DepthRange.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +22 -0
- package/views/3d/webgl-engine/core/util/TwoVectorPosition.js +1 -1
- package/views/3d/webgl-engine/lib/Camera.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryRecord.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
- package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
- package/views/3d/webgl-engine/lib/Intersector.js +1 -1
- package/views/3d/webgl-engine/lib/Object3D.js +1 -1
- package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
- package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/edgePreprocessing.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/InstanceOctree.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
- package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
- package/views/3d/webgl-engine/lighting/SphericalHarmonics.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/parts/Model.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
- package/views/BasemapView.d.ts +1 -1
- package/views/BreakpointsOwner.d.ts +1 -1
- package/views/DOMContainer.d.ts +1 -1
- package/views/GroundView.d.ts +1 -1
- package/views/Magnifier.d.ts +1 -1
- package/views/MapView.d.ts +1 -1
- package/views/MapView.js +1 -1
- package/views/SceneView.d.ts +1 -1
- package/views/ToolViewManager.js +1 -1
- package/views/View.d.ts +1 -1
- package/views/ViewAnimation.d.ts +1 -1
- package/views/analysis/DimensionAnalysisView.d.ts +1 -1
- package/views/analysis/LengthDimensionResult.d.ts +1 -1
- package/views/draw/Draw.d.ts +1 -1
- package/views/draw/Draw.js +1 -1
- package/views/draw/DrawAction.d.ts +1 -1
- package/views/draw/DrawGraphicTool.js +1 -1
- package/views/draw/DrawOperation.js +1 -1
- package/views/draw/MultipointDrawAction.d.ts +1 -1
- package/views/draw/MultipointDrawAction.js +1 -1
- package/views/draw/PointDrawAction.d.ts +1 -1
- package/views/draw/PolygonDrawAction.d.ts +1 -1
- package/views/draw/PolylineDrawAction.d.ts +1 -1
- package/views/draw/SegmentDrawAction.d.ts +1 -1
- package/views/draw/drawSurfaces.js +1 -1
- package/views/draw/support/surfaceCoordinateSystems.js +1 -1
- package/views/input/Input.d.ts +1 -1
- package/views/input/gamepad/GamepadInputDevice.d.ts +1 -1
- package/views/input/gamepad/GamepadSettings.d.ts +1 -1
- package/views/interactive/coordinateHelper.js +1 -1
- package/views/interactive/dragEventPipeline.js +1 -1
- package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
- package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
- package/views/interactive/sketch/SketchLabelOptions.d.ts +1 -1
- package/views/interactive/sketch/SketchTooltipOptions.d.ts +1 -1
- package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
- package/views/interactive/snapping/FeatureSnappingLayerSource.d.ts +1 -1
- package/views/interactive/snapping/RightAngleSnapper.js +1 -1
- package/views/interactive/snapping/SnappingConstraint.js +1 -1
- package/views/interactive/snapping/SnappingDragPipelineStep.js +1 -1
- package/views/interactive/snapping/SnappingOperation.js +1 -1
- package/views/interactive/snapping/SnappingOptions.d.ts +1 -1
- package/views/interactive/snapping/candidates/DrapedEdgeSnappingCandidate.js +5 -0
- package/views/interactive/snapping/featureSources/FeatureCollectionSnappingSource.js +1 -1
- package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
- package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
- package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
- package/views/interactive/snapping/featureSources/queryEngineUtils.js +1 -1
- package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +1 -1
- package/views/interactive/snapping/featureSources/snappingCandidateElevationAlignment.js +1 -1
- package/views/interactive/snapping/featureSources/snappingCandidateElevationFilter.js +1 -1
- package/views/interactive/snapping/snappingUtils.js +1 -1
- package/views/interactive/tooltip/DrawTooltipInfos.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentDrawPolygon.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentDrawPolyline.js +1 -1
- package/views/layers/BuildingComponentSublayerView.d.ts +1 -1
- package/views/layers/BuildingSceneLayerView.d.ts +1 -1
- package/views/layers/CSVLayerView.d.ts +1 -1
- package/views/layers/DimensionLayerView.d.ts +1 -1
- package/views/layers/FeatureLayerView.d.ts +1 -1
- package/views/layers/GeoJSONLayerView.d.ts +1 -1
- package/views/layers/GeoRSSLayerView.d.ts +1 -1
- package/views/layers/GraphicsLayerView.d.ts +1 -1
- package/views/layers/ImageryLayerView.d.ts +1 -1
- package/views/layers/KMLLayerView.d.ts +1 -1
- package/views/layers/LayerView.d.ts +1 -1
- package/views/layers/OGCFeatureLayerView.d.ts +1 -1
- package/views/layers/PointCloudLayerView.d.ts +1 -1
- package/views/layers/SceneLayerView.d.ts +1 -1
- package/views/layers/StreamLayerView.d.ts +1 -1
- package/views/layers/WFSLayerView.d.ts +1 -1
- package/views/navigation/Navigation.d.ts +1 -1
- package/views/navigation/PanSphericalMomentumEstimator.js +1 -1
- package/views/navigation/gamepad/GamepadSettings.d.ts +1 -1
- package/views/support/Scheduler.js +1 -1
- package/views/support/colorUtils.d.ts +1 -1
- package/views/support/euclideanAreaMeasurementUtils.js +1 -1
- package/views/support/geometry3dUtils.js +1 -1
- package/views/ui/DefaultUI.d.ts +1 -1
- package/views/ui/UI.d.ts +1 -1
- package/webdoc/GeotriggersInfo.d.ts +1 -1
- package/webdoc/applicationProperties/Search.d.ts +1 -1
- package/webdoc/applicationProperties/SearchLayer.d.ts +1 -1
- package/webdoc/applicationProperties/SearchLayerField.d.ts +1 -1
- package/webdoc/applicationProperties/SearchTable.d.ts +1 -1
- package/webdoc/applicationProperties/SearchTableField.d.ts +1 -1
- package/webdoc/applicationProperties/Viewing.d.ts +1 -1
- package/webdoc/geotriggersInfo/DeviceLocationFeed.d.ts +1 -1
- package/webdoc/geotriggersInfo/ExpressionInfo.d.ts +1 -1
- package/webdoc/geotriggersInfo/FeatureFenceParameters.d.ts +1 -1
- package/webdoc/geotriggersInfo/FeatureFilter.d.ts +1 -1
- package/webdoc/geotriggersInfo/FeatureLayerSource.d.ts +1 -1
- package/webdoc/geotriggersInfo/FenceGeotrigger.d.ts +1 -1
- package/webdoc/geotriggersInfo/Geotrigger.d.ts +1 -1
- package/webdoc/geotriggersInfo/GeotriggerNotificationOptions.d.ts +1 -1
- package/webmap/ApplicationProperties.d.ts +1 -1
- package/webmap/Bookmark.d.ts +1 -1
- package/webmap/InitialViewProperties.d.ts +1 -1
- package/webmap/background/ColorBackground.d.ts +1 -1
- package/webscene/ApplicationProperties.d.ts +1 -1
- package/webscene/Environment.d.ts +1 -1
- package/webscene/InitialViewProperties.d.ts +1 -1
- package/webscene/Lighting.d.ts +1 -1
- package/webscene/Presentation.d.ts +1 -1
- package/webscene/Slide.d.ts +1 -1
- package/webscene/Slide.js +1 -1
- package/webscene/SunLighting.d.ts +1 -1
- package/webscene/VirtualLighting.d.ts +1 -1
- package/webscene/background/Background.d.ts +1 -1
- package/webscene/background/ColorBackground.d.ts +1 -1
- package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.d.ts +1 -1
- package/widgets/AreaMeasurement2D.d.ts +1 -1
- package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.d.ts +1 -1
- package/widgets/AreaMeasurement3D.d.ts +1 -1
- package/widgets/Attachments/AttachmentsViewModel.d.ts +1 -1
- package/widgets/Attachments.d.ts +1 -1
- package/widgets/Attribution/AttributionViewModel.d.ts +1 -1
- package/widgets/Attribution.d.ts +1 -1
- package/widgets/BasemapGallery/BasemapGalleryViewModel.d.ts +1 -1
- package/widgets/BasemapGallery/support/BasemapGalleryItem.d.ts +1 -1
- package/widgets/BasemapGallery/support/LocalBasemapsSource.d.ts +1 -1
- package/widgets/BasemapGallery/support/PortalBasemapsSource.d.ts +1 -1
- package/widgets/BasemapGallery.d.ts +1 -1
- package/widgets/BasemapLayerList/BasemapLayerListViewModel.d.ts +1 -1
- package/widgets/BasemapLayerList.d.ts +1 -1
- package/widgets/BasemapToggle/BasemapToggleViewModel.d.ts +1 -1
- package/widgets/BasemapToggle.d.ts +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.d.ts +1 -1
- package/widgets/Bookmarks.d.ts +1 -1
- package/widgets/BuildingExplorer/BuildingExplorerViewModel.d.ts +1 -1
- package/widgets/BuildingExplorer/BuildingLevel.d.ts +1 -1
- package/widgets/BuildingExplorer/BuildingPhase.d.ts +1 -1
- package/widgets/BuildingExplorer.d.ts +1 -1
- package/widgets/Compass/CompassViewModel.d.ts +1 -1
- package/widgets/Compass.d.ts +1 -1
- package/widgets/CoordinateConversion/CoordinateConversionViewModel.d.ts +1 -1
- package/widgets/CoordinateConversion/support/Conversion.d.ts +1 -1
- package/widgets/CoordinateConversion/support/Format.d.ts +1 -1
- package/widgets/CoordinateConversion.d.ts +1 -1
- package/widgets/Daylight/DaylightViewModel.d.ts +1 -1
- package/widgets/Daylight.d.ts +1 -1
- package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.d.ts +1 -1
- package/widgets/DirectLineMeasurement3D.d.ts +1 -1
- package/widgets/Directions/DirectionsViewModel.d.ts +1 -1
- package/widgets/Directions.d.ts +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.d.ts +1 -1
- package/widgets/DistanceMeasurement2D.d.ts +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.d.ts +1 -1
- package/widgets/Editor/CreateFeaturesWorkflowData.d.ts +1 -1
- package/widgets/Editor/CreateWorkflow.d.ts +1 -1
- package/widgets/Editor/CreateWorkflowData.d.ts +1 -1
- package/widgets/Editor/EditorViewModel.d.ts +1 -1
- package/widgets/Editor/Edits.d.ts +1 -1
- package/widgets/Editor/UpdateWorkflow.d.ts +1 -1
- package/widgets/Editor/UpdateWorkflowData.d.ts +1 -1
- package/widgets/Editor/Workflow.d.ts +1 -1
- package/widgets/Editor.d.ts +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/ElevationProfile/ElevationProfileLine.d.ts +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineGround.d.ts +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineInput.d.ts +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineQuery.d.ts +1 -1
- package/widgets/ElevationProfile/ElevationProfileLineView.d.ts +1 -1
- package/widgets/ElevationProfile/ElevationProfileViewModel.d.ts +1 -1
- package/widgets/ElevationProfile/support/ProfileLines3D.js +1 -1
- package/widgets/ElevationProfile/support/constants.js +1 -1
- package/widgets/ElevationProfile.d.ts +1 -1
- package/widgets/Expand/ExpandViewModel.d.ts +1 -1
- package/widgets/Expand.d.ts +1 -1
- package/widgets/Feature/FeatureMedia.js +1 -1
- package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
- package/widgets/Feature/FeatureViewModel.d.ts +1 -1
- package/widgets/Feature/FeatureViewModel.js +1 -1
- package/widgets/Feature.d.ts +1 -1
- package/widgets/FeatureForm/FeatureFormViewModel.d.ts +1 -1
- package/widgets/FeatureForm/FieldConfig.d.ts +1 -1
- package/widgets/FeatureForm/FieldGroupConfig.d.ts +1 -1
- package/widgets/FeatureForm/FormExpressionArcadeExecutor.js +1 -1
- package/widgets/FeatureForm/InputField.d.ts +1 -1
- package/widgets/FeatureForm/InputField.js +1 -1
- package/widgets/FeatureForm/InputFieldGroup.d.ts +1 -1
- package/widgets/FeatureForm.d.ts +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.d.ts +1 -1
- package/widgets/FeatureTable/FieldColumn.d.ts +1 -1
- package/widgets/FeatureTable/FieldColumnConfig.d.ts +1 -1
- package/widgets/FeatureTable/Grid/Column.d.ts +1 -1
- package/widgets/FeatureTable/Grid/GroupColumn.d.ts +1 -1
- package/widgets/FeatureTable/Grid/support/ButtonMenu.d.ts +1 -1
- package/widgets/FeatureTable/Grid/support/ButtonMenuItem.d.ts +1 -1
- package/widgets/FeatureTable/Grid/support/ButtonMenuViewModel.d.ts +1 -1
- package/widgets/FeatureTable/support/ColumnTemplate.d.ts +1 -1
- package/widgets/FeatureTable/support/ColumnTemplateBase.d.ts +1 -1
- package/widgets/FeatureTable/support/FieldColumnTemplate.d.ts +1 -1
- package/widgets/FeatureTable/support/GroupColumnTemplate.d.ts +1 -1
- package/widgets/FeatureTable/support/TableTemplate.d.ts +1 -1
- package/widgets/FeatureTable.d.ts +1 -1
- package/widgets/FeatureTemplates/FeatureTemplatesViewModel.d.ts +1 -1
- package/widgets/FeatureTemplates/TemplateItem.d.ts +1 -1
- package/widgets/FeatureTemplates/TemplateItemGroup.d.ts +1 -1
- package/widgets/FeatureTemplates.d.ts +1 -1
- package/widgets/FloorFilter/FloorFilterViewModel.d.ts +1 -1
- package/widgets/FloorFilter.d.ts +1 -1
- package/widgets/Fullscreen/FullscreenViewModel.d.ts +1 -1
- package/widgets/Fullscreen.d.ts +1 -1
- package/widgets/Histogram/HistogramViewModel.d.ts +1 -1
- package/widgets/Histogram.d.ts +1 -1
- package/widgets/HistogramRangeSlider/HistogramRangeSliderViewModel.d.ts +1 -1
- package/widgets/HistogramRangeSlider.d.ts +1 -1
- package/widgets/Home/HomeViewModel.d.ts +1 -1
- package/widgets/Home.d.ts +1 -1
- package/widgets/LayerList/LayerListViewModel.d.ts +1 -1
- package/widgets/LayerList/ListItem.d.ts +1 -1
- package/widgets/LayerList/ListItemPanel.d.ts +1 -1
- package/widgets/LayerList.d.ts +1 -1
- package/widgets/Legend/LegendViewModel.d.ts +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.d.ts +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Legend.d.ts +1 -1
- package/widgets/LineOfSight/LineOfSightTarget.d.ts +1 -1
- package/widgets/LineOfSight/LineOfSightViewModel.d.ts +1 -1
- package/widgets/LineOfSight.d.ts +1 -1
- package/widgets/Locate/LocateViewModel.d.ts +1 -1
- package/widgets/Locate.d.ts +1 -1
- package/widgets/Measurement/MeasurementViewModel.d.ts +1 -1
- package/widgets/Measurement.d.ts +1 -1
- package/widgets/NavigationToggle/NavigationToggleViewModel.d.ts +1 -1
- package/widgets/NavigationToggle.d.ts +1 -1
- package/widgets/Popup/PopupViewModel.d.ts +1 -1
- package/widgets/Popup.d.ts +1 -1
- package/widgets/Popup.js +1 -1
- package/widgets/Print/CustomTemplate.d.ts +1 -1
- package/widgets/Print/PrintViewModel.d.ts +1 -1
- package/widgets/Print/TemplateOptions.d.ts +1 -1
- package/widgets/Print.d.ts +1 -1
- package/widgets/ScaleBar/ScaleBarViewModel.d.ts +1 -1
- package/widgets/ScaleBar.d.ts +1 -1
- package/widgets/ScaleRangeSlider/ScaleRangeSliderViewModel.d.ts +1 -1
- package/widgets/ScaleRangeSlider/ScaleRanges.d.ts +1 -1
- package/widgets/ScaleRangeSlider.d.ts +1 -1
- package/widgets/Search/LayerSearchSource.d.ts +1 -1
- package/widgets/Search/LocatorSearchSource.d.ts +1 -1
- package/widgets/Search/SearchResultRenderer.d.ts +1 -1
- package/widgets/Search/SearchSource.d.ts +1 -1
- package/widgets/Search/SearchViewModel.d.ts +1 -1
- package/widgets/Search.d.ts +1 -1
- package/widgets/ShadowCast/ShadowCastViewModel.d.ts +1 -1
- package/widgets/ShadowCast.d.ts +1 -1
- package/widgets/Sketch/SketchViewModel.d.ts +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Sketch/support/OperationHandle.js +1 -1
- package/widgets/Sketch.d.ts +1 -1
- package/widgets/Slice/SlicePlane.d.ts +1 -1
- package/widgets/Slice/SliceViewModel.d.ts +1 -1
- package/widgets/Slice.d.ts +1 -1
- package/widgets/Slider/SliderViewModel.d.ts +1 -1
- package/widgets/Slider.d.ts +1 -1
- package/widgets/Swipe/SwipeViewModel.d.ts +1 -1
- package/widgets/Swipe.d.ts +1 -1
- package/widgets/TableList/ListItem.d.ts +1 -1
- package/widgets/TableList/TableListViewModel.d.ts +1 -1
- package/widgets/TableList.d.ts +1 -1
- package/widgets/TimeSlider/TimeSliderViewModel.d.ts +1 -1
- package/widgets/TimeSlider.d.ts +1 -1
- package/widgets/Track/TrackViewModel.d.ts +1 -1
- package/widgets/Track.d.ts +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.d.ts +1 -1
- package/widgets/UtilityNetworkTrace.d.ts +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/Weather/WeatherViewModel.d.ts +1 -1
- package/widgets/Weather.d.ts +1 -1
- package/widgets/Widget.d.ts +1 -1
- package/widgets/Zoom/ZoomViewModel.d.ts +1 -1
- package/widgets/Zoom.d.ts +1 -1
- package/widgets/smartMapping/ClassedColorSlider/ClassedColorSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/ClassedColorSlider.d.ts +1 -1
- package/widgets/smartMapping/ClassedSizeSlider/ClassedSizeSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/ClassedSizeSlider.d.ts +1 -1
- package/widgets/smartMapping/ColorSizeSlider/ColorSizeSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/ColorSizeSlider.d.ts +1 -1
- package/widgets/smartMapping/ColorSlider/ColorSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/ColorSlider.d.ts +1 -1
- package/widgets/smartMapping/HeatmapSlider/HeatmapSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/HeatmapSlider.d.ts +1 -1
- package/widgets/smartMapping/OpacitySlider/OpacitySliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/OpacitySlider.d.ts +1 -1
- package/widgets/smartMapping/SizeSlider/SizeSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/SizeSlider.d.ts +1 -1
- package/widgets/smartMapping/SmartMappingPrimaryHandleSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/SmartMappingSliderBase.d.ts +1 -1
- package/widgets/smartMapping/SmartMappingSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/support/utils.d.ts +1 -1
- package/widgets/support/DatePicker.d.ts +1 -1
- package/widgets/support/DatePickerViewModel.d.ts +1 -1
- package/widgets/support/DateTimeElementViewModel.d.ts +1 -1
- package/widgets/support/GeolocationPositioning.d.ts +1 -1
- package/widgets/support/GoTo.d.ts +1 -1
- package/widgets/support/SnappingControls/SnappingControlsViewModel.d.ts +1 -1
- package/widgets/support/SnappingControls.d.ts +1 -1
- package/widgets/support/TimePicker.d.ts +1 -1
- package/widgets/support/TimePickerViewModel.d.ts +1 -1
- package/widgets/support/widget.d.ts +1 -1
- package/assets/esri/core/workers/chunks/09255015e57bdfa5337f.js +0 -1
- package/assets/esri/core/workers/chunks/24ffd7180bb947bc8aec.js +0 -1
- package/assets/esri/core/workers/chunks/2d6d089176b6bd490b9f.js +0 -1
- package/assets/esri/core/workers/chunks/325f9eb52610c6c22f46.js +0 -1
- package/assets/esri/core/workers/chunks/6a2358861b3d3007ad26.js +0 -1
- package/assets/esri/core/workers/chunks/7230a7d5fb7106b14024.js +0 -1
- package/assets/esri/core/workers/chunks/90dfa238d78c92fe43b1.js +0 -1
- package/assets/esri/core/workers/chunks/a16109389dce496ab51c.js +0 -1
- package/assets/esri/core/workers/chunks/bf248b08e18a50878f38.js +0 -1
- package/assets/esri/core/workers/chunks/c9399a106dc167368a39.js +0 -1
- package/assets/esri/core/workers/chunks/ceb68e994b82d69c1215.js +0 -1
- package/assets/esri/core/workers/chunks/dbf72099949febfae5a1.js +0 -1
- package/assets/esri/core/workers/chunks/e158ca25c239a5912ea0.js +0 -1
- package/assets/esri/core/workers/chunks/ece3d9989c9ec13cae09.js +0 -1
- package/assets/esri/core/workers/chunks/f6772f57bb1466e50d63.js +0 -1
- package/chunks/MultipointDrawAction.js +0 -5
- package/smartMapping/statistics/summaryStatisticsForBinning.js +0 -5
- package/views/2d/draw/Draw.js +0 -5
- package/views/2d/draw/DrawAction.js +0 -5
- package/views/2d/draw/MultipointDrawAction.js +0 -5
- package/views/2d/draw/PointDrawAction.js +0 -5
- package/views/2d/draw/PolygonDrawAction.js +0 -5
- package/views/2d/draw/PolylineDrawAction.js +0 -5
- package/views/2d/draw/SegmentDrawAction.js +0 -5
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{bidiText as t}from"../../core/BidiText.js";import e from"../../core/Logger.js";import{isNone as s,isSome as i}from"../../core/maybe.js";import r from"../../core/ObjectPool.js";import{px2pt as o,pt2px as n}from"../../core/screenUtils.js";import{create as a,fromValues as l}from"../../geometry/support/aaBoundingRect.js";import{getBoundsXY as h}from"../../geometry/support/boundsUtils.js";import{polygonCentroid as c}from"../../geometry/support/centroid.js";import{isPoint as m,isPolygon as f,isPolyline as u,isExtent as _,isMultipoint as p}from"../../geometry/support/jsonUtils.js";import{SimpleGeometryCursor as d}from"./CIMEffects.js";import g from"./CIMImageColorSubstitutionHelper.js";import{getEffectOperator as y,getPlacementOperator as P}from"./CIMOperators.js";import{Placement as x}from"./CIMPlacements.js";import{LineCapStyle as w,LineJoinStyle as S}from"./enums.js";import{getFirstFrame as b}from"./imageUtils.js";import M from"./Rect.js";import k from"./TextRasterizer.js";import{isSVGImage as C,fromCIMFontDecoration as R,fromCIMFontStyle as T,fromCIMHorizontalAlignment as I,fromCIMVerticalAlignment as v,getFillColor as z,getStrokeColor as L,getFontStyle as F,getFontWeight as U}from"./utils.js";import{HAlign as j,VAlign as A}from"../../views/2d/engine/webgl/alignmentUtils.js";import{GLYPH_SIZE as H,MAGIC_LABEL_LINE_HEIGHT as D}from"../../views/2d/engine/webgl/definitions.js";import{getFontFamily as X}from"../../views/2d/engine/webgl/fontUtils.js";import{shapeGlyphs as G}from"../../views/2d/engine/webgl/mesh/templates/shapingUtils.js";const B=Math.PI/180,E=10,J=e.getLogger("esri.symbols.cim.CIMSymbolDrawHelper");class N{constructor(t){this._t=t}static createIdentity(){return new N([1,0,0,0,1,0])}clone(){const t=this._t;return new N(t.slice())}transform(t){const e=this._t;return[e[0]*t[0]+e[1]*t[1]+e[2],e[3]*t[0]+e[4]*t[1]+e[5]]}static createScale(t,e){return new N([t,0,0,0,e,0])}scale(t,e){const s=this._t;return s[0]*=t,s[1]*=t,s[2]*=t,s[3]*=e,s[4]*=e,s[5]*=e,this}scaleRatio(){return Math.sqrt(this._t[0]*this._t[0]+this._t[1]*this._t[1])}static createTranslate(t,e){return new N([0,0,t,0,0,e])}translate(t,e){const s=this._t;return s[2]+=t,s[5]+=e,this}static createRotate(t){const e=Math.cos(t),s=Math.sin(t);return new N([e,-s,0,s,e,0])}rotate(t){return N.multiply(this,N.createRotate(t),this)}angle(){const t=this._t[0],e=this._t[3],s=Math.sqrt(t*t+e*e);return[t/s,e/s]}static multiply(t,e,s){const i=t._t,r=e._t,o=i[0]*r[0]+i[3]*r[1],n=i[1]*r[0]+i[4]*r[1],a=i[2]*r[0]+i[5]*r[1]+r[2],l=i[0]*r[3]+i[3]*r[4],h=i[1]*r[3]+i[4]*r[4],c=i[2]*r[3]+i[5]*r[4]+r[5],m=s._t;return m[0]=o,m[1]=n,m[2]=a,m[3]=l,m[4]=h,m[5]=c,s}invert(){const t=this._t;let e=t[0]*t[4]-t[1]*t[3];if(0===e)return new N([0,0,0,0,0,0]);e=1/e;const s=(t[1]*t[5]-t[2]*t[4])*e,i=(t[2]*t[3]-t[0]*t[5])*e,r=t[4]*e,o=-t[1]*e,n=-t[3]*e,a=t[0]*e;return new N([r,o,s,n,a,i])}}class Y{constructor(t,e){this._resourceManager=t,this._transfos=[],this._sizeTransfos=[],this._geomUnitsPerPoint=1,this._placementPool=new r(x,void 0,void 0,100),this._earlyReturn=!1,this._mapRotation=0,this._transfos.push(e||N.createIdentity()),this._sizeTransfos.push(e?e.scaleRatio():1)}setTransform(t,e){this._transfos=[t||N.createIdentity()],this._sizeTransfos=[e||(t?t.scaleRatio():1)]}setGeomUnitsPerPoint(t){this._geomUnitsPerPoint=t}transformPt(t){return this._transfos[this._transfos.length-1].transform(t)}transformSize(t){return t*this._sizeTransfos[this._sizeTransfos.length-1]}reverseTransformPt(t){return this._transfos[this._transfos.length-1].invert().transform(t)}reverseTransformSize(t){return t/this._sizeTransfos[this._sizeTransfos.length-1]}getTransformAngle(){return this._transfos[this._transfos.length-1].angle()}geomUnitsPerPoint(){return this.isEmbedded()?1:this._geomUnitsPerPoint}isEmbedded(){return this._transfos.length>1}back(){return this._transfos[this._transfos.length-1]}push(t,e){const s=e?t.scaleRatio():1;N.multiply(t,this.back(),t),this._transfos.push(t),this._sizeTransfos.push(this._sizeTransfos[this._sizeTransfos.length-1]*s)}pop(){this._transfos.splice(-1,1),this._sizeTransfos.splice(-1,1)}drawSymbol(t,e,s){if(t)switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":this.drawMultiLayerSymbol(t,e);break;case"CIMTextSymbol":this.drawTextSymbol(t,e,s)}}drawMultiLayerSymbol(t,e){if(!t)return;const s=t.symbolLayers;if(!s)return;const i=t.effects;if(i&&i.length>0){const t=this.executeEffects(i,e);if(t){let e=t.next();for(;e;)this.drawSymbolLayers(s,e),e=t.next()}}else this.drawSymbolLayers(s,e)}executeEffects(t,e){const s=this._resourceManager.geometryEngine;let i=new d(e);for(const r of t){const t=y(r);t&&(i=t.execute(i,r,this.geomUnitsPerPoint(),s))}return i}drawSymbolLayers(t,e){let s=t.length;for(;s--;){const i=t[s];if(!i||!1===i.enable)continue;const r=i.effects;if(r&&r.length>0){const t=this.executeEffects(r,e);if(t){let e=null;for(;(e=t.next())&&(this.drawSymbolLayer(i,e),!this._earlyReturn););}}else this.drawSymbolLayer(i,e);if(this._earlyReturn)return}}drawSymbolLayer(t,e){switch(t.type){case"CIMSolidFill":this.drawSolidFill(e,t.color);break;case"CIMHatchFill":this.drawHatchFill(e,t);break;case"CIMPictureFill":this.drawPictureFill(e,t);break;case"CIMGradientFill":this.drawGradientFill(e,t);break;case"CIMSolidStroke":this.drawSolidStroke(e,t.color,t.width,t.capStyle,t.joinStyle,t.miterLimit);break;case"CIMPictureStroke":this.drawPictureStroke(e,t);break;case"CIMGradientStroke":this.drawGradientStroke(e,t);break;case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":this.drawMarkerLayer(t,e)}}drawHatchFill(t,e){const s=this._buildHatchPolyline(e,t,this.geomUnitsPerPoint());s&&(this.pushClipPath(t),this.drawMultiLayerSymbol(e.lineSymbol,s),this.popClipPath())}drawPictureFill(t,e){}drawGradientFill(t,e){}drawPictureStroke(t,e){}drawGradientStroke(t,e){}drawMarkerLayer(t,e){const s=t.markerPlacement;if(s){const i=P(s);if(i){const r="CIMMarkerPlacementInsidePolygon"===s.type;r&&this.pushClipPath(e);const o=i.execute(e,s,this.geomUnitsPerPoint(),this._resourceManager.geometryEngine);if(o){let e=null;for(;(e=o.next())&&(this.drawMarker(t,e),!this._earlyReturn););}r&&this.popClipPath()}}else{const s=this._placementPool.acquire();if(m(e))s.tx=e.x,s.ty=e.y,this.drawMarker(t,s);else if(f(e))[s.tx,s.ty]=c(e),this.drawMarker(t,s);else for(const i of e.points)if(s.tx=i[0],s.ty=i[1],this.drawMarker(t,s),this._earlyReturn)break;this._placementPool.release(s)}}drawMarker(t,e){switch(t.type){case"CIMCharacterMarker":case"CIMPictureMarker":this.drawPictureMarker(t,e);break;case"CIMVectorMarker":this.drawVectorMarker(t,e)}}drawPictureMarker(t,e){if(!t)return;const i=this._resourceManager.getResource(t.url),r=t.size??10;if(s(i)||r<=0)return;const o=i.width,n=i.height;if(!o||!n)return;const a=o/n,l=t.scaleX??1,h=N.createIdentity(),c=t.anchorPoint;if(c){let e=c.x,s=c.y;"Absolute"!==t.anchorPointUnits&&(e*=r*a*l,s*=r),h.translate(-e,-s)}let m=t.rotation??0;t.rotateClockwise&&(m=-m),this._mapRotation&&(m+=this._mapRotation),m&&h.rotate(m*B);let f=t.offsetX??0,u=t.offsetY??0;if(f||u){if(this._mapRotation){const t=B*this._mapRotation,e=Math.cos(t),s=Math.sin(t),i=f*s+u*e;f=f*e-u*s,u=i}h.translate(f,u)}const _=this.geomUnitsPerPoint();1!==_&&h.scale(_,_);const p=e.getAngle();p&&h.rotate(p),h.translate(e.tx,e.ty),this.push(h,!1),this.drawImage(t,r),this.pop()}drawVectorMarker(t,e){if(!t)return;const s=t.markerGraphics;if(!s)return;const i=t.size??10,r=t.frame,o=r?r.ymax-r.ymin:0,n=i&&o?i/o:1,a=N.createIdentity();r&&a.translate(.5*-(r.xmax+r.xmin),.5*-(r.ymax+r.ymin));const l=t.anchorPoint;if(l){let e=l.x,s=l.y;"Absolute"!==t.anchorPointUnits?r&&(e*=r.xmax-r.xmin,s*=r.ymax-r.ymin):(e/=n,s/=n),a.translate(-e,-s)}1!==n&&a.scale(n,n);let h=t.rotation??0;t.rotateClockwise&&(h=-h),this._mapRotation&&(h+=this._mapRotation),h&&a.rotate(h*B);let c=t.offsetX??0,m=t.offsetY??0;if(c||m){if(this._mapRotation){const t=B*this._mapRotation,e=Math.cos(t),s=Math.sin(t),i=c*s+m*e;c=c*e-m*s,m=i}a.translate(c,m)}const f=this.geomUnitsPerPoint();1!==f&&a.scale(f,f);const u=e.getAngle();u&&a.rotate(u),a.translate(e.tx,e.ty),this.push(a,t.scaleSymbolsProportionally);for(const _ of s)if(_&&_.symbol&&_.geometry||J.error("Invalid marker graphic",_),this.drawSymbol(_.symbol,_.geometry,_.textString),this._earlyReturn)break;this.pop()}drawTextSymbol(t,e,s){if(!t)return;if(!m(e))return;if((t.height??10)<=0)return;const i=N.createIdentity();let r=t.angle??0;r=-r,r&&i.rotate(r*B);const o=t.offsetX??0,n=t.offsetY??0;(o||n)&&i.translate(o,n);const a=this.geomUnitsPerPoint();1!==a&&i.scale(a,a),i.translate(e.x,e.y),this.push(i,!1),this.drawText(t,s),this.pop()}_buildHatchPolyline(t,e,s){let i=(void 0!==t.separation?t.separation:4)*s,r=void 0!==t.rotation?t.rotation:0;if(0===i)return null;i<0&&(i=-i);let o=0;const n=.5*i;for(;o>n;)o-=i;for(;o<-n;)o+=i;const l=a();h(l,e),l[0]-=n,l[1]-=n,l[2]+=n,l[3]+=n;const c=[[l[0],l[1]],[l[0],l[3]],[l[2],l[3]],[l[2],l[1]]];for(;r>180;)r-=180;for(;r<0;)r+=180;const m=Math.cos(r*B),f=Math.sin(r*B),u=-i*f,_=i*m;let p,d,g,y;o=(void 0!==t.offsetX?t.offsetX*s:0)*f-(void 0!==t.offsetY?t.offsetY*s:0)*m,p=g=Number.MAX_VALUE,d=y=-Number.MAX_VALUE;for(const a of c){const t=a[0],e=a[1],s=m*t+f*e,i=-f*t+m*e;p=Math.min(p,s),g=Math.min(g,i),d=Math.max(d,s),y=Math.max(y,i)}g=Math.floor(g/i)*i;let P=m*p-f*g-u*o/i,x=f*p+m*g-_*o/i,w=m*d-f*g-u*o/i,S=f*d+m*g-_*o/i;const b=1+Math.round((y-g)/i),M=[];for(let a=0;a<b;a++)P+=u,x+=_,w+=u,S+=_,M.push([[P,x],[w,S]]);return{paths:M}}}class q extends Y{constructor(t,e){super(t,e),this.reset()}reset(){this._xmin=this._ymin=1/0,this._xmax=this._ymax=-1/0,this._clipCount=0}envelope(){return new M(this._xmin,this._ymin,this._xmax-this._xmin,this._ymax-this._ymin)}bounds(){return l(this._xmin,this._ymin,this._xmax,this._ymax)}drawSolidFill(t){if(t&&!(this._clipCount>0))if(f(t))this._processPath(t.rings,0);else if(u(t))this._processPath(t.paths,0);else if(_(t)){const e=W(t);e&&this._processPath(e.rings,0)}else console.error("drawSolidFill Unexpected geometry type!")}drawSolidStroke(t,e,s){if(!t||this._clipCount>0)return;const i=.5*this.transformSize(s);if(f(t))this._processPath(t.rings,i);else if(u(t))this._processPath(t.paths,i);else if(_(t)){const e=W(t);e&&this._processPath(e.rings,i)}else console.error("drawSolidStroke unexpected geometry type!")}drawMarkerLayer(t,e){f(e)&&t.markerPlacement&&"CIMMarkerPlacementInsidePolygon"===t.markerPlacement.type?this._processPath(e.rings,0):super.drawMarkerLayer(t,e)}pushClipPath(t){this.drawSolidFill(t),++this._clipCount}popClipPath(){--this._clipCount}drawImage(t,e){const{url:s}=t,r=t.scaleX??1;let o=r*e,n=e;const a=this._resourceManager.getResource(s);!e&&i(a)&&(o=r*a.width,n=a.height),this._merge(this.transformPt([-o/2,-n/2]),0),this._merge(this.transformPt([-o/2,n/2]),0),this._merge(this.transformPt([o/2,-n/2]),0),this._merge(this.transformPt([o/2,n/2]),0)}drawText(t,e){if(!e||0===e.length)return;this._textRasterizer||(this._textRasterizer=new k);const s=$(t),[i,r]=this._textRasterizer.computeTextSize(e,s);let o=0;switch(t.horizontalAlignment){case"Left":o=i/2;break;case"Right":o=-i/2}let n=0;switch(t.verticalAlignment){case"Bottom":n=r/2;break;case"Top":n=-r/2;break;case"Baseline":n=r/6}this._merge(this.transformPt([-i/2+o,-r/2+n]),0),this._merge(this.transformPt([-i/2+o,r/2+n]),0),this._merge(this.transformPt([i/2+o,-r/2+n]),0),this._merge(this.transformPt([i/2+o,r/2+n]),0)}_processPath(t,e){if(t)for(const s of t){const t=s?s.length:0;if(t>1){this._merge(this.transformPt(s[0]),e);for(let i=1;i<t;++i)this._merge(this.transformPt(s[i]),e)}}}_merge(t,e){t[0]-e<this._xmin&&(this._xmin=t[0]-e),t[0]+e>this._xmax&&(this._xmax=t[0]+e),t[1]-e<this._ymin&&(this._ymin=t[1]-e),t[1]+e>this._ymax&&(this._ymax=t[1]+e)}}class O extends Y{constructor(){super(...arguments),this._searchPoint=[0,0],this._searchDistPoint=0}hitTest(t,e,s,i,r,o){const a=o*n(1);this.setTransform(),this.setGeomUnitsPerPoint(a),this._searchPoint=[(t[0]+t[2])/2,(t[1]+t[3])/2],this._searchDistPoint=(t[2]-t[0])/2/a,this._textInfo=i;const l=e&&("CIMPointSymbol"===e.type&&"Map"!==e.angleAlignment||"CIMTextSymbol"===e.type);return this._mapRotation=l?r:0,this._earlyReturn=!1,this.drawSymbol(e,s),this._earlyReturn}drawSolidFill(t,e){this._hitTestFill(t)}drawHatchFill(t,e){this._hitTestFill(t)}drawPictureFill(t,e){this._hitTestFill(t)}drawGradientFill(t,e){this._hitTestFill(t)}drawSolidStroke(t,e,s,i,r,o){this._hitTestStroke(t,s)}drawPictureStroke(t,e){this._hitTestStroke(t,e.width)}drawGradientStroke(t,e){this._hitTestStroke(t,e.width)}drawMarkerLayer(t,e){t.markerPlacement&&"CIMMarkerPlacementInsidePolygon"===t.markerPlacement.type?this._hitTestFill(e):super.drawMarkerLayer(t,e)}pushClipPath(t){}popClipPath(){}drawImage(t,e){const{url:i}=t,r=t.scaleX??1,o=this._resourceManager.getResource(i);if(s(o)||0===o.height||0===e)return;const n=e*this.geomUnitsPerPoint(),a=n*r*(o.width/o.height),l=this.reverseTransformPt(this._searchPoint),h=this._searchDistPoint;Math.abs(l[0])<a/2+h&&Math.abs(l[1])<n/2+h&&(this._earlyReturn=!0)}drawText(e,s){const i=this._textInfo;if(!i)return;const r=i.get(e);if(!r)return;const{text:o,mosaicItem:n}=r;if(!n||0===n.glyphMosaicItems.length)return;const a=e.height??E,l=Z(e.lineGapType,e.lineGap??0,a),h=t(o)[1],c=n.glyphMosaicItems,m=G(c,h,{scale:a/H,angle:0,xOffset:0,yOffset:0,hAlign:K(e.horizontalAlignment),vAlign:Q(e.verticalAlignment),maxLineWidth:512,lineHeight:D*Math.max(.25,Math.min(l||1,4)),decoration:e.font.decoration||"none",isCIM:!0}),f=this.reverseTransformPt(this._searchPoint),u=f[0],_=f[1];for(const t of m.glyphs)if(u>t.xTopLeft&&u<t.xBottomRight&&_>-t.yBottomRight&&_<-t.yTopLeft){this._earlyReturn=!0;break}}_hitTestFill(t){let e=null;if(_(t)){const s=t;e=[[[s.xmin,s.ymin],[s.xmin,s.ymax],[s.xmax,s.ymax],[s.xmax,s.ymin],[s.xmin,s.ymin]]]}else if(f(t))e=t.rings;else{if(!u(t))return;e=t.paths}const s=this.reverseTransformPt(this._searchPoint);if(this._pointInPolygon(s,e)&&(this._earlyReturn=!0),!this._earlyReturn){const t=this.reverseTransformSize(this._searchDistPoint)*this.geomUnitsPerPoint();this._nearLine(s,e,t)&&(this._earlyReturn=!0)}}_hitTestStroke(t,e){let s=null;if(_(t)){const e=t;s=[[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]]}else if(f(t))s=t.rings;else{if(!u(t))return;s=t.paths}const i=this.reverseTransformPt(this._searchPoint),r=e*this.geomUnitsPerPoint(),o=this.reverseTransformSize(this._searchDistPoint)*this.geomUnitsPerPoint();this._nearLine(i,s,r/2+o)&&(this._earlyReturn=!0)}_pointInPolygon(t,e){let s=0;for(const i of e){const e=i.length;for(let r=1;r<e;++r){const e=i[r-1],o=i[r];if(e[1]>t[1]==o[1]>t[1])continue;(o[0]-e[0])*(t[1]-e[1])-(o[1]-e[1])*(t[0]-e[0])>0?s++:s--}}return 0!==s}_nearLine(t,e,s){for(const i of e){const e=i.length;for(let r=1;r<e;++r){const e=i[r-1],o=i[r];let n=(o[0]-e[0])*(o[0]-e[0])+(o[1]-e[1])*(o[1]-e[1]);if(0===n)continue;n=Math.sqrt(n);const a=((o[0]-e[0])*(t[1]-e[1])-(o[1]-e[1])*(t[0]-e[0]))/n;if(Math.abs(a)<s){const i=((o[0]-e[0])*(t[0]-e[0])+(o[1]-e[1])*(t[1]-e[1]))/n;if(i>-s&&i<n+s)return!0}}}return!1}}class V extends Y{constructor(t,e,s,i){super(e,s),this._applyAdditionalRenderProps=i,this._colorSubstitutionHelper=new g,this._ctx=t}drawSolidFill(t,e){if(!t)return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else if(_(t))this._buildPath(W(t).rings,!0);else{if(!p(t))return;console.log("CanvasDrawHelper.drawSolidFill - No implementation!")}const s=this._ctx;s.fillStyle="string"==typeof e?e:"rgba("+Math.round(e[0])+","+Math.round(e[1])+","+Math.round(e[2])+","+e[3]/255+")",s.fill("evenodd")}drawSolidStroke(t,e,s,i,r,o){if(!t||!e||0===s)return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!1);else{if(!_(t))return void console.log("CanvasDrawHelper.drawSolidStroke isn't implemented!");this._buildPath(W(t).rings,!0)}const n=this._ctx;n.strokeStyle="string"==typeof e?e:"rgba("+Math.round(e[0])+","+Math.round(e[1])+","+Math.round(e[2])+","+e[3]/255+")",n.lineWidth=Math.max(this.transformSize(s),.5),this._setCapStyle(i),this._setJoinStyle(r),n.miterLimit=o,n.stroke()}pushClipPath(t){if(this._ctx.save(),f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else{if(!_(t))return;this._buildPath(W(t).rings,!0)}this._ctx.clip("evenodd")}popClipPath(){this._ctx.restore()}drawImage(t,e){const{colorSubstitutions:i,url:r,tintColor:o}=t,n=t.scaleX??1,a=this._resourceManager.getResource(r);if(s(a))return;let l=e*(a.width/a.height),h=e;e||(l=a.width,h=a.height);const c=C(r)||"src"in a&&C(a.src);let m="getFrame"in a?b(a):a;this._applyAdditionalRenderProps&&!c&&(o&&(m=this._colorSubstitutionHelper.tintImageData(m,o)),i&&(m=this._colorSubstitutionHelper.applyColorSubstituition(m,i)));const f=this.transformPt([0,0]),[u,_]=this.getTransformAngle(),p=this.transformSize(1),d=this._ctx;d.save(),d.setTransform({m11:n*p*u,m12:n*p*_,m21:-p*_,m22:p*u,m41:f[0],m42:f[1]}),d.drawImage(m,-l/2,-h/2,l,h),d.restore()}drawText(t,e){if(!e||0===e.length)return;this._textRasterizer||(this._textRasterizer=new k);const s=$(t);s.size*=this.transformSize(o(1));const i=this._textRasterizer.rasterizeText(e,s);if(!i)return;const{size:r,anchorX:n,anchorY:a,canvas:l}=i,h=r[0]*(n+.5),c=r[1]*(a-.5),m=this._ctx,f=this.transformPt([0,0]),[u,_]=this.getTransformAngle(),p=1;m.save(),m.setTransform({m11:p*u,m12:p*_,m21:-p*_,m22:p*u,m41:f[0]-p*h,m42:f[1]+p*c}),m.drawImage(l,0,0),m.restore()}drawPictureFill(t,e){if(!t)return;let{colorSubstitutions:i,height:r,offsetX:o,offsetY:a,rotation:l,scaleX:h,tintColor:c,url:m}=e;const d=this._resourceManager.getResource(m);if(s(d))return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else if(_(t))this._buildPath(W(t).rings,!0);else{if(!p(t))return;console.log("CanvasDrawHelper.drawPictureFill - No implementation!")}const g=this._ctx,y=C(m)||"src"in d&&C(d.src);let P,x="getFrame"in d?b(d):d;if(this._applyAdditionalRenderProps){y||(c&&(x=this._colorSubstitutionHelper.tintImageData(x,c)),i&&(x=this._colorSubstitutionHelper.applyColorSubstituition(x,i))),P=g.createPattern(x,"repeat"),l||(l=0),o=o?n(o):0,a=a?n(a):0,r&&(r=n(r));const t=r?r/d.height:1,e=h&&r?h*r/d.width:1;if(0!==l||1!==t||1!==e||0!==o||0!==a){const s=new DOMMatrix;s.rotateSelf(0,0,-l).translateSelf(o,a).scaleSelf(e,t,1),P.setTransform(s)}}else P=g.createPattern(x,"repeat");g.save(),g.fillStyle=P,g.fill("evenodd"),g.restore()}drawPictureStroke(t,e){if(!t)return;let{colorSubstitutions:i,capStyle:r,joinStyle:o,miterLimit:n,tintColor:a,url:l,width:h}=e;const c=this._resourceManager.getResource(l);if(s(c))return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else if(_(t))this._buildPath(W(t).rings,!0);else{if(!p(t))return;console.log("CanvasDrawHelper.drawPictureStroke - No implementation!")}h||(h=c.width);const m=C(l)||"src"in c&&C(c.src);let d="getFrame"in c?b(c):c;this._applyAdditionalRenderProps&&(m||(a&&(d=this._colorSubstitutionHelper.tintImageData(d,a)),i&&(d=this._colorSubstitutionHelper.applyColorSubstituition(d,i))));const g=this._ctx,y=g.createPattern(d,"repeat");g.save(),this._setCapStyle(r),this._setJoinStyle(o),g.miterLimit=n,g.lineWidth=Math.max(this.transformSize(h),.5),g.strokeStyle=y,g.stroke(),g.restore()}_buildPath(t,e){const s=this._ctx;if(s.beginPath(),t)for(const i of t){const t=i?i.length:0;if(t>1){let r=this.transformPt(i[0]);s.moveTo(r[0],r[1]);for(let e=1;e<t;++e)r=this.transformPt(i[e]),s.lineTo(r[0],r[1]);e&&s.closePath()}}}_setCapStyle(t){switch(t){case w.Butt:this._ctx.lineCap="butt";break;case w.Round:this._ctx.lineCap="round";break;case w.Square:this._ctx.lineCap="square"}}_setJoinStyle(t){switch(t){case S.Bevel:this._ctx.lineJoin="bevel";break;case S.Round:this._ctx.lineJoin="round";break;case S.Miter:this._ctx.lineJoin="miter"}}}const W=t=>t?{spatialReference:t.spatialReference,rings:[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]]}:null,K=t=>{switch(t){case"Left":return j.Left;case"Right":return j.Right;case"Center":return j.Center;case"Justify":return J.warnOnce("Horizontal alignment 'justify' is not implemented. Falling back to 'center'."),j.Center}},Q=t=>{switch(t){case"Top":return A.Top;case"Center":return A.Center;case"Bottom":return A.Bottom;case"Baseline":return A.Baseline}},Z=(t,e,s)=>{switch(t){case"ExtraLeading":return 1+e/s;case"Multiple":return e;case"Exact":return e/s}};function $(t,e=1){const s=R(t),i=T(t.fontStyleName),r=X(t.fontFamilyName),{weight:o,style:n}=i,a=e*(t.height||5),l=I(t.horizontalAlignment),h=v(t.verticalAlignment),c=z(t),m=L(t.haloSymbol),f=m?e*(0|t.haloSize):0;return{color:c,size:a,horizontalAlignment:l,verticalAlignment:h,font:{family:r,style:F(n),weight:U(o),decoration:s},halo:{size:f||0,color:m,style:n},pixelRatio:1,premultiplyColors:!0}}export{Y as CIMSymbolDrawHelper,B as C_DEG_TO_RAD,V as CanvasDrawHelper,q as EnvDrawHelper,O as HittestDrawHelper,N as Transformation,K as horizontalAlignment2HAlign,Z as lineGapType2LineHeight,Q as verticalAlignment2VAlign};
|
|
5
|
+
import{bidiText as t}from"../../core/BidiText.js";import e from"../../core/Logger.js";import{isNone as r,isSome as i}from"../../core/maybe.js";import s from"../../core/ObjectPool.js";import{px2pt as o,pt2px as n}from"../../core/screenUtils.js";import{create as a,fromValues as l}from"../../geometry/support/aaBoundingRect.js";import{getBoundsXY as h}from"../../geometry/support/boundsUtils.js";import{polygonCentroid as c}from"../../geometry/support/centroid.js";import{isPoint as m,isPolygon as f,isPolyline as u,isExtent as d,isMultipoint as p}from"../../geometry/support/jsonUtils.js";import{SimpleGeometryCursor as _}from"./CIMEffects.js";import g from"./CIMImageColorSubstitutionHelper.js";import{getEffectOperator as y,getPlacementOperator as P}from"./CIMOperators.js";import{Placement as w}from"./CIMPlacements.js";import{LineCapStyle as x,LineJoinStyle as S}from"./enums.js";import{getFirstFrame as M}from"./imageUtils.js";import b from"./Rect.js";import k from"./TextRasterizer.js";import{isSVGImage as C,fromCIMFontDecoration as I,fromCIMFontStyle as R,fromCIMHorizontalAlignment as T,fromCIMVerticalAlignment as v,getFillColor as z,getStrokeColor as F,getFontStyle as L,getFontWeight as A}from"./utils.js";import{HAlign as U,VAlign as j}from"../../views/2d/engine/webgl/alignmentUtils.js";import{GLYPH_SIZE as H,MAGIC_LABEL_LINE_HEIGHT as B}from"../../views/2d/engine/webgl/definitions.js";import{getFontFamily as G}from"../../views/2d/engine/webgl/fontUtils.js";import{shapeGlyphs as D}from"../../views/2d/engine/webgl/mesh/templates/shapingUtils.js";const X=Math.PI/180,E=10,J=e.getLogger("esri.symbols.cim.CIMSymbolDrawHelper");class N{constructor(t){this._t=t}static createIdentity(){return new N([1,0,0,0,1,0])}clone(){const t=this._t;return new N(t.slice())}transform(t){const e=this._t;return[e[0]*t[0]+e[1]*t[1]+e[2],e[3]*t[0]+e[4]*t[1]+e[5]]}static createScale(t,e){return new N([t,0,0,0,e,0])}scale(t,e){const r=this._t;return r[0]*=t,r[1]*=t,r[2]*=t,r[3]*=e,r[4]*=e,r[5]*=e,this}scaleRatio(){return Math.sqrt(this._t[0]*this._t[0]+this._t[1]*this._t[1])}static createTranslate(t,e){return new N([0,0,t,0,0,e])}translate(t,e){const r=this._t;return r[2]+=t,r[5]+=e,this}static createRotate(t){const e=Math.cos(t),r=Math.sin(t);return new N([e,-r,0,r,e,0])}rotate(t){return N.multiply(this,N.createRotate(t),this)}angle(){const t=this._t[0],e=this._t[3],r=Math.sqrt(t*t+e*e);return[t/r,e/r]}static multiply(t,e,r){const i=t._t,s=e._t,o=i[0]*s[0]+i[3]*s[1],n=i[1]*s[0]+i[4]*s[1],a=i[2]*s[0]+i[5]*s[1]+s[2],l=i[0]*s[3]+i[3]*s[4],h=i[1]*s[3]+i[4]*s[4],c=i[2]*s[3]+i[5]*s[4]+s[5],m=r._t;return m[0]=o,m[1]=n,m[2]=a,m[3]=l,m[4]=h,m[5]=c,r}invert(){const t=this._t;let e=t[0]*t[4]-t[1]*t[3];if(0===e)return new N([0,0,0,0,0,0]);e=1/e;const r=(t[1]*t[5]-t[2]*t[4])*e,i=(t[2]*t[3]-t[0]*t[5])*e,s=t[4]*e,o=-t[1]*e,n=-t[3]*e,a=t[0]*e;return new N([s,o,r,n,a,i])}}class Y{constructor(t,e){this._resourceManager=t,this._transfos=[],this._sizeTransfos=[],this._geomUnitsPerPoint=1,this._placementPool=new s(w,void 0,void 0,100),this._earlyReturn=!1,this._mapRotation=0,this._transfos.push(e||N.createIdentity()),this._sizeTransfos.push(e?e.scaleRatio():1)}setTransform(t,e){this._transfos=[t||N.createIdentity()],this._sizeTransfos=[e||(t?t.scaleRatio():1)]}setGeomUnitsPerPoint(t){this._geomUnitsPerPoint=t}transformPt(t){return this._transfos[this._transfos.length-1].transform(t)}transformSize(t){return t*this._sizeTransfos[this._sizeTransfos.length-1]}reverseTransformPt(t){return this._transfos[this._transfos.length-1].invert().transform(t)}reverseTransformSize(t){return t/this._sizeTransfos[this._sizeTransfos.length-1]}getTransformAngle(){return this._transfos[this._transfos.length-1].angle()}geomUnitsPerPoint(){return this.isEmbedded()?1:this._geomUnitsPerPoint}isEmbedded(){return this._transfos.length>1}back(){return this._transfos[this._transfos.length-1]}push(t,e){const r=e?t.scaleRatio():1;N.multiply(t,this.back(),t),this._transfos.push(t),this._sizeTransfos.push(this._sizeTransfos[this._sizeTransfos.length-1]*r)}pop(){this._transfos.splice(-1,1),this._sizeTransfos.splice(-1,1)}drawSymbol(t,e,r){if(t)switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":this.drawMultiLayerSymbol(t,e);break;case"CIMTextSymbol":this.drawTextSymbol(t,e,r)}}drawMultiLayerSymbol(t,e){if(!t)return;const r=t.symbolLayers;if(!r)return;const i=t.effects;if(i&&i.length>0){const t=this.executeEffects(i,e);if(t){let e=t.next();for(;e;)this.drawSymbolLayers(r,e),e=t.next()}}else this.drawSymbolLayers(r,e)}executeEffects(t,e){const r=this._resourceManager.geometryEngine;let i=new _(e);for(const s of t){const t=y(s);t&&(i=t.execute(i,s,this.geomUnitsPerPoint(),r))}return i}drawSymbolLayers(t,e){let r=t.length;for(;r--;){const i=t[r];if(!i||!1===i.enable)continue;const s=i.effects;if(s&&s.length>0){const t=this.executeEffects(s,e);if(t){let e=null;for(;(e=t.next())&&(this.drawSymbolLayer(i,e),!this._earlyReturn););}}else this.drawSymbolLayer(i,e);if(this._earlyReturn)return}}drawSymbolLayer(t,e){switch(t.type){case"CIMSolidFill":this.drawSolidFill(e,t.color);break;case"CIMHatchFill":this.drawHatchFill(e,t);break;case"CIMPictureFill":this.drawPictureFill(e,t);break;case"CIMGradientFill":this.drawGradientFill(e,t);break;case"CIMSolidStroke":this.drawSolidStroke(e,t.color,t.width,t.capStyle,t.joinStyle,t.miterLimit);break;case"CIMPictureStroke":this.drawPictureStroke(e,t);break;case"CIMGradientStroke":this.drawGradientStroke(e,t);break;case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":this.drawMarkerLayer(t,e)}}drawHatchFill(t,e){const r=this._buildHatchPolyline(e,t,this.geomUnitsPerPoint());r&&(this.pushClipPath(t),this.drawMultiLayerSymbol(e.lineSymbol,r),this.popClipPath())}drawPictureFill(t,e){}drawGradientFill(t,e){}drawPictureStroke(t,e){}drawGradientStroke(t,e){}drawMarkerLayer(t,e){const r=t.markerPlacement;if(r){const i=P(r);if(i){const s="CIMMarkerPlacementInsidePolygon"===r.type||"CIMMarkerPlacementPolygonCenter"===r.type&&r.clipAtBoundary;s&&this.pushClipPath(e);const o=i.execute(e,r,this.geomUnitsPerPoint(),this._resourceManager.geometryEngine);if(o){let e=null;for(;(e=o.next())&&(this.drawMarker(t,e),!this._earlyReturn););}s&&this.popClipPath()}}else{const r=this._placementPool.acquire();if(m(e))r.tx=e.x,r.ty=e.y,this.drawMarker(t,r);else if(f(e))[r.tx,r.ty]=c(e),this.drawMarker(t,r);else for(const i of e.points)if(r.tx=i[0],r.ty=i[1],this.drawMarker(t,r),this._earlyReturn)break;this._placementPool.release(r)}}drawMarker(t,e){switch(t.type){case"CIMCharacterMarker":case"CIMPictureMarker":this.drawPictureMarker(t,e);break;case"CIMVectorMarker":this.drawVectorMarker(t,e)}}drawPictureMarker(t,e){if(!t)return;const i=this._resourceManager.getResource(t.url),s=t.size??10;if(r(i)||s<=0)return;const o=i.width,n=i.height;if(!o||!n)return;const a=o/n,l=t.scaleX??1,h=N.createIdentity(),c=t.anchorPoint;if(c){let e=c.x,r=c.y;"Absolute"!==t.anchorPointUnits&&(e*=s*a*l,r*=s),h.translate(-e,-r)}let m=t.rotation??0;t.rotateClockwise&&(m=-m),this._mapRotation&&(m+=this._mapRotation),m&&h.rotate(m*X);let f=t.offsetX??0,u=t.offsetY??0;if(f||u){if(this._mapRotation){const t=X*this._mapRotation,e=Math.cos(t),r=Math.sin(t),i=f*r+u*e;f=f*e-u*r,u=i}h.translate(f,u)}const d=this.geomUnitsPerPoint();1!==d&&h.scale(d,d);const p=e.getAngle();p&&h.rotate(p),h.translate(e.tx,e.ty),this.push(h,!1),this.drawImage(t,s),this.pop()}drawVectorMarker(t,e){if(!t)return;const r=t.markerGraphics;if(!r)return;const i=t.size??10,s=t.frame,o=s?s.ymax-s.ymin:0,n=i&&o?i/o:1,a=N.createIdentity();s&&a.translate(.5*-(s.xmax+s.xmin),.5*-(s.ymax+s.ymin));const l=t.anchorPoint;if(l){let e=l.x,r=l.y;"Absolute"!==t.anchorPointUnits?s&&(e*=s.xmax-s.xmin,r*=s.ymax-s.ymin):(e/=n,r/=n),a.translate(-e,-r)}1!==n&&a.scale(n,n);let h=t.rotation??0;t.rotateClockwise&&(h=-h),this._mapRotation&&(h+=this._mapRotation),h&&a.rotate(h*X);let c=t.offsetX??0,m=t.offsetY??0;if(c||m){if(this._mapRotation){const t=X*this._mapRotation,e=Math.cos(t),r=Math.sin(t),i=c*r+m*e;c=c*e-m*r,m=i}a.translate(c,m)}const f=this.geomUnitsPerPoint();1!==f&&a.scale(f,f);const u=e.getAngle();u&&a.rotate(u),a.translate(e.tx,e.ty),this.push(a,t.scaleSymbolsProportionally);for(const d of r)if(d&&d.symbol&&d.geometry||J.error("Invalid marker graphic",d),this.drawSymbol(d.symbol,d.geometry,d.textString),this._earlyReturn)break;this.pop()}drawTextSymbol(t,e,r){if(!t)return;if(!m(e))return;if((t.height??10)<=0)return;const i=N.createIdentity();let s=t.angle??0;s=-s,s&&i.rotate(s*X);const o=t.offsetX??0,n=t.offsetY??0;(o||n)&&i.translate(o,n);const a=this.geomUnitsPerPoint();1!==a&&i.scale(a,a),i.translate(e.x,e.y),this.push(i,!1),this.drawText(t,r),this.pop()}_buildHatchPolyline(t,e,r){let i=(void 0!==t.separation?t.separation:4)*r,s=void 0!==t.rotation?t.rotation:0;if(0===i)return null;i<0&&(i=-i);let o=0;const n=.5*i;for(;o>n;)o-=i;for(;o<-n;)o+=i;const l=a();h(l,e),l[0]-=n,l[1]-=n,l[2]+=n,l[3]+=n;const c=[[l[0],l[1]],[l[0],l[3]],[l[2],l[3]],[l[2],l[1]]];for(;s>180;)s-=180;for(;s<0;)s+=180;const m=Math.cos(s*X),f=Math.sin(s*X),u=-i*f,d=i*m;let p,_,g,y;o=(void 0!==t.offsetX?t.offsetX*r:0)*f-(void 0!==t.offsetY?t.offsetY*r:0)*m,p=g=Number.MAX_VALUE,_=y=-Number.MAX_VALUE;for(const a of c){const t=a[0],e=a[1],r=m*t+f*e,i=-f*t+m*e;p=Math.min(p,r),g=Math.min(g,i),_=Math.max(_,r),y=Math.max(y,i)}g=Math.floor(g/i)*i;let P=m*p-f*g-u*o/i,w=f*p+m*g-d*o/i,x=m*_-f*g-u*o/i,S=f*_+m*g-d*o/i;const M=1+Math.round((y-g)/i),b=[];for(let a=0;a<M;a++)P+=u,w+=d,x+=u,S+=d,b.push([[P,w],[x,S]]);return{paths:b}}}class q extends Y{constructor(t,e){super(t,e),this.reset()}reset(){this._xmin=this._ymin=1/0,this._xmax=this._ymax=-1/0,this._clipCount=0}envelope(){return new b(this._xmin,this._ymin,this._xmax-this._xmin,this._ymax-this._ymin)}bounds(){return l(this._xmin,this._ymin,this._xmax,this._ymax)}drawSolidFill(t){if(t&&!(this._clipCount>0))if(f(t))this._processPath(t.rings,0);else if(u(t))this._processPath(t.paths,0);else if(d(t)){const e=W(t);e&&this._processPath(e.rings,0)}else console.error("drawSolidFill Unexpected geometry type!")}drawSolidStroke(t,e,r){if(!t||this._clipCount>0)return;const i=.5*this.transformSize(r);if(f(t))this._processPath(t.rings,i);else if(u(t))this._processPath(t.paths,i);else if(d(t)){const e=W(t);e&&this._processPath(e.rings,i)}else console.error("drawSolidStroke unexpected geometry type!")}drawMarkerLayer(t,e){f(e)&&t.markerPlacement&&("CIMMarkerPlacementInsidePolygon"===t.markerPlacement.type||"CIMMarkerPlacementPolygonCenter"===t.markerPlacement.type&&t.markerPlacement.clipAtBoundary)?this._processPath(e.rings,0):super.drawMarkerLayer(t,e)}drawHatchFill(t,e){this.drawSolidFill(t)}drawPictureFill(t,e){this.drawSolidFill(t)}drawGradientFill(t,e){this.drawSolidFill(t)}drawPictureStroke(t,e){this.drawSolidStroke(t,null,e.width)}drawGradientStroke(t,e){this.drawSolidStroke(t,null,e.width)}pushClipPath(t){this.drawSolidFill(t),++this._clipCount}popClipPath(){--this._clipCount}drawImage(t,e){const{url:r}=t,s=t.scaleX??1;let o=s*e,n=e;const a=this._resourceManager.getResource(r);!e&&i(a)&&(o=s*a.width,n=a.height),this._merge(this.transformPt([-o/2,-n/2]),0),this._merge(this.transformPt([-o/2,n/2]),0),this._merge(this.transformPt([o/2,-n/2]),0),this._merge(this.transformPt([o/2,n/2]),0)}drawText(t,e){if(!e||0===e.length)return;this._textRasterizer||(this._textRasterizer=new k);const r=$(t),[i,s]=this._textRasterizer.computeTextSize(e,r);let o=0;switch(t.horizontalAlignment){case"Left":o=i/2;break;case"Right":o=-i/2}let n=0;switch(t.verticalAlignment){case"Bottom":n=s/2;break;case"Top":n=-s/2;break;case"Baseline":n=s/6}this._merge(this.transformPt([-i/2+o,-s/2+n]),0),this._merge(this.transformPt([-i/2+o,s/2+n]),0),this._merge(this.transformPt([i/2+o,-s/2+n]),0),this._merge(this.transformPt([i/2+o,s/2+n]),0)}_processPath(t,e){if(t)for(const r of t){const t=r?r.length:0;if(t>1){this._merge(this.transformPt(r[0]),e);for(let i=1;i<t;++i)this._merge(this.transformPt(r[i]),e)}}}_merge(t,e){t[0]-e<this._xmin&&(this._xmin=t[0]-e),t[0]+e>this._xmax&&(this._xmax=t[0]+e),t[1]-e<this._ymin&&(this._ymin=t[1]-e),t[1]+e>this._ymax&&(this._ymax=t[1]+e)}}class O extends Y{constructor(){super(...arguments),this._searchPoint=[0,0],this._searchDistPoint=0}hitTest(t,e,r,i,s,o){const a=o*n(1);this.setTransform(),this.setGeomUnitsPerPoint(a),this._searchPoint=[(t[0]+t[2])/2,(t[1]+t[3])/2],this._searchDistPoint=(t[2]-t[0])/2/a,this._textInfo=i;const l=e&&("CIMPointSymbol"===e.type&&"Map"!==e.angleAlignment||"CIMTextSymbol"===e.type);return this._mapRotation=l?s:0,this._earlyReturn=!1,this.drawSymbol(e,r),this._earlyReturn}drawSolidFill(t,e){this._hitTestFill(t)}drawHatchFill(t,e){this._hitTestFill(t)}drawPictureFill(t,e){this._hitTestFill(t)}drawGradientFill(t,e){this._hitTestFill(t)}drawSolidStroke(t,e,r,i,s,o){this._hitTestStroke(t,r)}drawPictureStroke(t,e){this._hitTestStroke(t,e.width)}drawGradientStroke(t,e){this._hitTestStroke(t,e.width)}drawMarkerLayer(t,e){t.markerPlacement&&("CIMMarkerPlacementInsidePolygon"===t.markerPlacement.type||"CIMMarkerPlacementPolygonCenter"===t.markerPlacement.type&&t.markerPlacement.clipAtBoundary)?this._hitTestFill(e):super.drawMarkerLayer(t,e)}pushClipPath(t){}popClipPath(){}drawImage(t,e){const{url:i}=t,s=t.scaleX??1,o=this._resourceManager.getResource(i);if(r(o)||0===o.height||0===e)return;const n=e*this.geomUnitsPerPoint(),a=n*s*(o.width/o.height),l=this.reverseTransformPt(this._searchPoint),h=this._searchDistPoint;Math.abs(l[0])<a/2+h&&Math.abs(l[1])<n/2+h&&(this._earlyReturn=!0)}drawText(e,r){const i=this._textInfo;if(!i)return;const s=i.get(e);if(!s)return;const{text:o,mosaicItem:n}=s;if(!n||0===n.glyphMosaicItems.length)return;const a=e.height??E,l=Z(e.lineGapType,e.lineGap??0,a),h=t(o)[1],c=n.glyphMosaicItems,m=D(c,h,{scale:a/H,angle:0,xOffset:0,yOffset:0,hAlign:K(e.horizontalAlignment),vAlign:Q(e.verticalAlignment),maxLineWidth:512,lineHeight:B*Math.max(.25,Math.min(l||1,4)),decoration:e.font.decoration||"none",isCIM:!0}),f=this.reverseTransformPt(this._searchPoint),u=f[0],d=f[1];for(const t of m.glyphs)if(u>t.xTopLeft&&u<t.xBottomRight&&d>-t.yBottomRight&&d<-t.yTopLeft){this._earlyReturn=!0;break}}_hitTestFill(t){let e=null;if(d(t)){const r=t;e=[[[r.xmin,r.ymin],[r.xmin,r.ymax],[r.xmax,r.ymax],[r.xmax,r.ymin],[r.xmin,r.ymin]]]}else if(f(t))e=t.rings;else{if(!u(t))return;e=t.paths}const r=this.reverseTransformPt(this._searchPoint);if(this._pointInPolygon(r,e)&&(this._earlyReturn=!0),!this._earlyReturn){const t=this.reverseTransformSize(this._searchDistPoint)*this.geomUnitsPerPoint();this._nearLine(r,e,t)&&(this._earlyReturn=!0)}}_hitTestStroke(t,e){let r=null;if(d(t)){const e=t;r=[[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]]}else if(f(t))r=t.rings;else{if(!u(t))return;r=t.paths}const i=this.reverseTransformPt(this._searchPoint),s=e*this.geomUnitsPerPoint(),o=this.reverseTransformSize(this._searchDistPoint)*this.geomUnitsPerPoint();this._nearLine(i,r,s/2+o)&&(this._earlyReturn=!0)}_pointInPolygon(t,e){let r=0;for(const i of e){const e=i.length;for(let s=1;s<e;++s){const e=i[s-1],o=i[s];if(e[1]>t[1]==o[1]>t[1])continue;(o[0]-e[0])*(t[1]-e[1])-(o[1]-e[1])*(t[0]-e[0])>0?r++:r--}}return 0!==r}_nearLine(t,e,r){for(const i of e){const e=i.length;for(let s=1;s<e;++s){const e=i[s-1],o=i[s];let n=(o[0]-e[0])*(o[0]-e[0])+(o[1]-e[1])*(o[1]-e[1]);if(0===n)continue;n=Math.sqrt(n);const a=((o[0]-e[0])*(t[1]-e[1])-(o[1]-e[1])*(t[0]-e[0]))/n;if(Math.abs(a)<r){const i=((o[0]-e[0])*(t[0]-e[0])+(o[1]-e[1])*(t[1]-e[1]))/n;if(i>-r&&i<n+r)return!0}}}return!1}}class V extends Y{constructor(t,e,r,i){super(e,r),this._applyAdditionalRenderProps=i,this._colorSubstitutionHelper=new g,this._ctx=t}drawSolidFill(t,e){if(!t)return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else if(d(t))this._buildPath(W(t).rings,!0);else{if(!p(t))return;console.log("CanvasDrawHelper.drawSolidFill - No implementation!")}const r=this._ctx;r.fillStyle="string"==typeof e?e:"rgba("+Math.round(e[0])+","+Math.round(e[1])+","+Math.round(e[2])+","+e[3]/255+")",r.fill("evenodd")}drawSolidStroke(t,e,r,i,s,o){if(!t||!e||0===r)return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!1);else{if(!d(t))return void console.log("CanvasDrawHelper.drawSolidStroke isn't implemented!");this._buildPath(W(t).rings,!0)}const n=this._ctx;n.strokeStyle="string"==typeof e?e:"rgba("+Math.round(e[0])+","+Math.round(e[1])+","+Math.round(e[2])+","+e[3]/255+")",n.lineWidth=Math.max(this.transformSize(r),.5),this._setCapStyle(i),this._setJoinStyle(s),n.miterLimit=o,n.stroke()}pushClipPath(t){if(this._ctx.save(),f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else{if(!d(t))return;this._buildPath(W(t).rings,!0)}this._ctx.clip("evenodd")}popClipPath(){this._ctx.restore()}drawImage(t,e){const{colorSubstitutions:i,url:s,tintColor:o}=t,n=t.scaleX??1,a=this._resourceManager.getResource(s);if(r(a))return;let l=e*(a.width/a.height),h=e;e||(l=a.width,h=a.height);const c=C(s)||"src"in a&&C(a.src);let m="getFrame"in a?M(a):a;i&&(m=this._colorSubstitutionHelper.applyColorSubstituition(m,i)),this._applyAdditionalRenderProps&&!c&&o&&(m=this._colorSubstitutionHelper.tintImageData(m,o));const f=this.transformPt([0,0]),[u,d]=this.getTransformAngle(),p=this.transformSize(1),_=this._ctx;_.save(),_.setTransform({m11:n*p*u,m12:n*p*d,m21:-p*d,m22:p*u,m41:f[0],m42:f[1]}),_.drawImage(m,-l/2,-h/2,l,h),_.restore()}drawText(t,e){if(!e||0===e.length)return;this._textRasterizer||(this._textRasterizer=new k);const r=$(t);r.size*=this.transformSize(o(1));const i=this._textRasterizer.rasterizeText(e,r);if(!i)return;const{size:s,anchorX:n,anchorY:a,canvas:l}=i,h=s[0]*(n+.5),c=s[1]*(a-.5),m=this._ctx,f=this.transformPt([0,0]),[u,d]=this.getTransformAngle(),p=1;m.save(),m.setTransform({m11:p*u,m12:p*d,m21:-p*d,m22:p*u,m41:f[0]-p*h,m42:f[1]+p*c}),m.drawImage(l,0,0),m.restore()}drawPictureFill(t,e){if(!t)return;let{colorSubstitutions:i,height:s,offsetX:o,offsetY:a,rotation:l,scaleX:h,tintColor:c,url:m}=e;const _=this._resourceManager.getResource(m);if(r(_))return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else if(d(t))this._buildPath(W(t).rings,!0);else{if(!p(t))return;console.log("CanvasDrawHelper.drawPictureFill - No implementation!")}const g=this._ctx,y=C(m)||"src"in _&&C(_.src);let P,w="getFrame"in _?M(_):_;if(i&&(w=this._colorSubstitutionHelper.applyColorSubstituition(w,i)),this._applyAdditionalRenderProps){y||c&&(w=this._colorSubstitutionHelper.tintImageData(w,c)),P=g.createPattern(w,"repeat"),l||(l=0),o=o?n(o):0,a=a?n(a):0,s&&(s=n(s));const t=s?s/_.height:1,e=h&&s?h*s/_.width:1;if(0!==l||1!==t||1!==e||0!==o||0!==a){const r=new DOMMatrix;r.rotateSelf(0,0,-l).translateSelf(o,a).scaleSelf(e,t,1),P.setTransform(r)}}else P=g.createPattern(w,"repeat");g.save(),g.fillStyle=P,g.fill("evenodd"),g.restore()}drawPictureStroke(t,e){if(!t)return;let{colorSubstitutions:i,capStyle:s,joinStyle:o,miterLimit:n,tintColor:a,url:l,width:h}=e;const c=this._resourceManager.getResource(l);if(r(c))return;if(f(t))this._buildPath(t.rings,!0);else if(u(t))this._buildPath(t.paths,!0);else if(d(t))this._buildPath(W(t).rings,!0);else{if(!p(t))return;console.log("CanvasDrawHelper.drawPictureStroke - No implementation!")}h||(h=c.width);const m=C(l)||"src"in c&&C(c.src);let _="getFrame"in c?M(c):c;i&&(_=this._colorSubstitutionHelper.applyColorSubstituition(_,i)),this._applyAdditionalRenderProps&&(m||a&&(_=this._colorSubstitutionHelper.tintImageData(_,a)));const g=this._ctx,y=g.createPattern(_,"repeat");g.save(),this._setCapStyle(s),this._setJoinStyle(o),g.miterLimit=n,g.lineWidth=Math.max(this.transformSize(h),.5),g.strokeStyle=y,g.stroke(),g.restore()}_buildPath(t,e){const r=this._ctx;if(r.beginPath(),t)for(const i of t){const t=i?i.length:0;if(t>1){let s=this.transformPt(i[0]);r.moveTo(s[0],s[1]);for(let e=1;e<t;++e)s=this.transformPt(i[e]),r.lineTo(s[0],s[1]);e&&r.closePath()}}}_setCapStyle(t){switch(t){case x.Butt:this._ctx.lineCap="butt";break;case x.Round:this._ctx.lineCap="round";break;case x.Square:this._ctx.lineCap="square"}}_setJoinStyle(t){switch(t){case S.Bevel:this._ctx.lineJoin="bevel";break;case S.Round:this._ctx.lineJoin="round";break;case S.Miter:this._ctx.lineJoin="miter"}}}const W=t=>t?{spatialReference:t.spatialReference,rings:[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]]}:null,K=t=>{switch(t){case"Left":return U.Left;case"Right":return U.Right;case"Center":return U.Center;case"Justify":return J.warnOnce("Horizontal alignment 'justify' is not implemented. Falling back to 'center'."),U.Center}},Q=t=>{switch(t){case"Top":return j.Top;case"Center":return j.Center;case"Bottom":return j.Bottom;case"Baseline":return j.Baseline}},Z=(t,e,r)=>{switch(t){case"ExtraLeading":return 1+e/r;case"Multiple":return e;case"Exact":return e/r}};function $(t,e=1){const r=I(t),i=R(t.fontStyleName),s=G(t.fontFamilyName),{weight:o,style:n}=i,a=e*(t.height||5),l=T(t.horizontalAlignment),h=v(t.verticalAlignment),c=z(t),m=F(t.haloSymbol),f=m?e*(0|t.haloSize):0;return{color:c,size:a,horizontalAlignment:l,verticalAlignment:h,font:{family:s,style:L(n),weight:A(o),decoration:r},halo:{size:f||0,color:m,style:n},pixelRatio:1,premultiplyColors:!0}}export{Y as CIMSymbolDrawHelper,X as C_DEG_TO_RAD,V as CanvasDrawHelper,q as EnvDrawHelper,O as HittestDrawHelper,N as Transformation,K as horizontalAlignment2HAlign,Z as lineGapType2LineHeight,Q as verticalAlignment2VAlign};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{px2pt as e,pt2px as t}from"../../core/screenUtils.js";import{OverrideHelper as i,CIMSymbolHelper as
|
|
5
|
+
import{px2pt as e,pt2px as t}from"../../core/screenUtils.js";import{OverrideHelper as i,CIMSymbolHelper as l}from"../cim/CIMSymbolHelper.js";import{CIMSymbolRasterizer as n,GeometryStyle as o}from"../cim/CIMSymbolRasterizer.js";import{mapCIMSymbolToGeometryType as r}from"../cim/utils.js";import{SymbolSizeDefaults as s}from"./previewUtils.js";import{renderSymbol as a}from"./renderUtils.js";const c=new n(null,!0),h=e(s.size),m=e(s.maxSize),u=e(s.lineWidth);function f(e){const t=e?.size;if("number"==typeof t)return{width:t,height:t};return{width:null!=t&&"object"==typeof t&&"width"in t?t.width:null,height:null!=t&&"object"==typeof t&&"height"in t?t.height:null}}async function y(e,n={}){const{node:s,opacity:y,symbolConfig:d}=n,p="object"==typeof d&&"isSquareFill"in d&&d.isSquareFill,g=n.cimOptions||n,w=g.geometryType||r(e?.data?.symbol),b=f(n),{feature:j,fieldMap:M}=g;if(null==b.width||null==b.height){const t=await i.resolveSymbolOverrides(e.data,j,null,M,w);if(!t)return null;(e=e.clone()).data={type:"CIMSymbolReference",symbol:t},e.data.primitiveOverrides=null;const n=[];l.fetchResources(t,c.resourceManager,n),n.length>0&&await Promise.all(n);const{width:o,height:r}=l.getEnvelope(t,null,c.resourceManager);b.width="esriGeometryPolygon"===w?h:"esriGeometryPolyline"===w?u:null!=o&&isFinite(o)?Math.min(o,m):h,b.height="esriGeometryPolygon"===w?h:null!=r&&isFinite(r)?Math.min(r,m):h}const v=await c.rasterizeCIMSymbolAsync(e,j,b,p||"esriGeometryPolygon"!==w?o.Preview:o.Legend,M,w);if(!v)return null;const{width:S,height:C}=v,I=document.createElement("canvas");I.width=S,I.height=C;I.getContext("2d").putImageData(v,0,0);const P=t(b.width),z=t(b.height),x=new Image(P,z);x.src=I.toDataURL(),null!=y&&(x.style.opacity=`${y}`);let F=x;if(null!=n.effectView){const e={shape:{type:"image",x:0,y:0,width:P,height:z,src:x.src},fill:null,stroke:null,offset:[0,0]};F=a([[e]],[P,z],{effectView:n.effectView})}return s&&F&&s.appendChild(F),F}export{y as previewCIMSymbol};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../Color.js";import t from"../../core/Error.js";import{pt2px as a,px2pt as n}from"../../core/screenUtils.js";import{getFill as l,getStroke as s,getPatternUrlWithColor as
|
|
5
|
+
import e from"../../Color.js";import t from"../../core/Error.js";import{pt2px as a,px2pt as n}from"../../core/screenUtils.js";import{getFill as l,getStroke as s,getPatternUrlWithColor as o}from"./gfxUtils.js";import{SymbolSizeDefaults as i,shapes as r,adjustColorBrightness as c}from"./previewUtils.js";import{renderSymbol as m}from"./renderUtils.js";import{getColorLuminance as u}from"../../views/support/colorUtils.js";const h="picture-fill",p="picture-marker",d="simple-fill",f="simple-line",y="simple-marker",w="text",g="Aa",v=i.size,b=i.maxSize,k=i.maxOutlineSize,x=i.lineWidth,M=225,z=document.createElement("canvas");function L(e,t){const a=z.getContext("2d"),n=[];return t&&(t.weight&&n.push(t.weight),t.size&&n.push(t.size+"px"),t.family&&n.push(t.family)),a.font=n.join(" "),a.measureText(e).width}const j=7.2/2.54,C=72/2.54;function S(e){if(0===e.length)return 0;if(e.length>2){const t=n(1),a=parseFloat(e);switch(e.slice(-2)){case"px":return a;case"pt":return a*t;case"in":return 72*a*t;case"pc":return 12*a*t;case"mm":return a*j*t;case"cm":return a*C*t}}return parseFloat(e)}function F(e){const t=e?.size;return{width:null!=t&&"object"==typeof t&&"width"in t?a(t.width):null,height:null!=t&&"object"==typeof t&&"height"in t?a(t.height):null}}async function U(e,t){const a=t.fill,n=e.color;if("pattern"===a?.type&&n&&e.type!==h){const e=await o(a.src,n.toCss(!0));a.src=e,t.fill=a}}function E(e,t){return e>t?"dark":"light"}function Z(e,t){const n="number"==typeof t?.size?t?.size:null,o=null!=n?a(n):null,i=null!=t?.maxSize?a(t.maxSize):null,c=null!=t?.rotation?t.rotation:"angle"in e?e.angle:null,m=l(e);let u=s(e);"dark"!==D(e,245)||t?.ignoreWhiteSymbols||(u={width:.75,...u,color:"#bdc3c7"});const M={shape:null,fill:m,stroke:u,offset:[0,0]};u?.width&&(u.width=Math.min(u.width,k));const z=u?.width||0;let j=null!=t?.size&&(null==t?.scale||t?.scale),C=0,U=0,E=!1;switch(e.type){case y:{const n=e.style,{width:l,height:s}=F(t),r=l===s&&null!=l?l:null!=o?o:Math.min(a(e.size),i||b);switch(C=r,U=r,n){case"circle":M.shape={type:"circle",cx:0,cy:0,r:.5*r},j||(C+=z,U+=z);break;case"cross":M.shape={type:"path",path:[{command:"M",values:[0,.5*U]},{command:"L",values:[C,.5*U]},{command:"M",values:[.5*C,0]},{command:"L",values:[.5*C,U]}]};break;case"diamond":M.shape={type:"path",path:[{command:"M",values:[0,.5*U]},{command:"L",values:[.5*C,0]},{command:"L",values:[C,.5*U]},{command:"L",values:[.5*C,U]},{command:"Z",values:[]}]},j||(C+=z,U+=z);break;case"square":M.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[C,0]},{command:"L",values:[C,U]},{command:"L",values:[0,U]},{command:"Z",values:[]}]},j||(C+=z,U+=z),c&&(E=!0);break;case"triangle":M.shape={type:"path",path:[{command:"M",values:[.5*C,0]},{command:"L",values:[C,U]},{command:"L",values:[0,U]},{command:"Z",values:[]}]},j||(C+=z,U+=z),c&&(E=!0);break;case"x":M.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[C,U]},{command:"M",values:[C,0]},{command:"L",values:[0,U]}]},c&&(E=!0);break;case"path":M.shape={type:"path",path:e.path||""},j||(C+=z,U+=z),c&&(E=!0),j=!0}break}case f:{const{width:e,height:a}=F(t),n=null!=a?a:null!=o?o:z,l=null!=e?e:x;u&&(u.width=n),C=l,U=n;const s=M?.stroke?.cap||"butt",i="round"===s;j=!0,M.stroke&&(M.stroke.cap="butt"===s?"square":s),M.shape={type:"path",path:[{command:"M",values:[i?n/2:0,U/2]},{command:"L",values:[i?C-n/2:C,U/2]}]};break}case h:case d:{const e="object"==typeof t?.symbolConfig&&t?.symbolConfig.isSquareFill,{width:a,height:n}=F(t);C=!e&&a!==n||null==a?null!=o?o:v:a,U=!e&&a!==n||null==n?C:n,j||(C+=z,U+=z),j=!0,M.shape=e?{type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[C,0]},{command:"L",values:[C,U]},{command:"L",values:[0,U]},{command:"L",values:[0,0]},{command:"Z",values:[]}]}:r.fill[0];break}case p:{const n=Math.min(a(e.width),i||b),l=Math.min(a(e.height),i||b),{width:s,height:r}=F(t),m=s===r&&null!=s?s:null!=o?o:Math.max(n,l),u=n/l;C=u<=1?Math.ceil(m*u):m,U=u<=1?m:Math.ceil(m/u),M.shape={type:"image",x:-Math.round(C/2),y:-Math.round(U/2),width:C,height:U,src:e.url||""},c&&(E=!0);break}case w:{const n=e,l=t?.overrideText||n.text||g,s=n.font,{width:r,height:c}=F(t),m=null!=c?c:null!=o?o:Math.min(a(s.size),i||b),u=L(l,{weight:s.weight,size:m,family:s.family}),h=/[\uE600-\uE6FF]/.test(l);C=r||h?m:u,U=m;let p=.25*S((s?m:0).toString());h&&(p+=5),M.shape={type:"text",text:l,x:n.xoffset||0,y:n.yoffset||p,align:"middle",alignBaseline:n.verticalAlignment,decoration:s&&s.decoration,rotated:n.rotated,kerning:n.kerning},M.font=s&&{size:m,style:s.style,decoration:s.decoration,weight:s.weight,family:s.family};break}}return{shapeDescriptor:M,size:[C,U],renderOptions:{node:t?.node,scale:j,opacity:t?.opacity,rotation:c,useRotationSize:E,effectView:t?.effectView}}}async function q(e,a){const{shapeDescriptor:n,size:l,renderOptions:s}=Z(e,a);if(!n.shape)throw new t("symbolPreview: renderPreviewHTML2D","symbol not supported.");await U(e,n);const o=[[n]];if("object"==typeof a?.symbolConfig&&a?.symbolConfig.applyColorModulation){const e=.6*l[0];o.unshift([{...n,offset:[-e,0],fill:c(n.fill,-.3)}]),o.push([{...n,offset:[e,0],fill:c(n.fill,.3)}]),l[0]+=2*e,s.scale=!1}return m(o,l,s)}function D(t,a=M){const n=l(t),o=s(t),i=!n||"type"in n?null:new e(n),r=o?.color?new e(o?.color):null,c=i?E(u(i),a):null,m=r?E(u(r),a):null;return m?c?c===m?c:a>=M?"light":"dark":m:c}export{D as getContrastingBackgroundTheme,Z as getRenderSymbolParameters,q as previewSymbol2D};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"../../core/has.js";import{isSome as e,isNone as t,unwrap as l}from"../../core/maybe.js";import{loadArcade as r}from"../../support/arcadeOnDemand.js";import{getStroke as i}from"./gfxUtils.js";import{SymbolSizeDefaults as s}from"./previewUtils.js";import{renderSymbol as o}from"./renderUtils.js";import{getCSSFilterFromEffectList as a,applyColorToSymbol as n,applySizesToSymbol as c,applyRotationToSymbol as u,getColorFromSymbol as f,applyOpacityToColor as h}from"./utils.js";let y=null;const p=[255,255,255];function d(e,t){return Math.floor(Math.random()*(t-e+1)+e)}function m(e,t,l){const{backgroundColor:r,outline:i,dotSize:o}=e,a=l&&l.swatchSize||s.size,n=.8,c=Math.round(a*a/o**2*n),u=window.devicePixelRatio,f=document.createElement("canvas"),h=a*u;f.width=h,f.height=h,f.style.width=f.width/u+"px",f.style.height=f.height/u+"px";const p=f.getContext("2d");if(r&&(p.fillStyle=r.toCss(!0),p.fillRect(0,0,h,h),p.fill()),p.fillStyle=t.toCss(!0),y&&y.length/2===c)for(let s=0;s<2*c;s+=2){const e=y[s],t=y[s+1];p.fillRect(e,t,o*u,o*u),p.fill()}else{y=[];for(let e=0;e<2*c;e+=2){const e=d(0,h),t=d(0,h);y.push(e,t),p.fillRect(e,t,o*u,o*u),p.fill()}}i&&(i.color&&(p.strokeStyle=i.color.toCss(!0)),p.lineWidth=i.width,p.strokeRect(0,0,h,h));const m=new Image(a,a);return m.src=f.toDataURL(),m}function b(e,t={}){const l=t.radius||40,r=2*Math.PI*l,s=e.length,a=r/s,n=[],c=i(t.outline);null!=c?.width&&(c.width*=2),(c||t.backgroundColor)&&n.push({shape:{type:"circle",cx:l,cy:l,r:l},fill:t.backgroundColor,stroke:c,offset:[0,0]});const u=t.values,f=u&&u.length===s&&100===u.reduce(((e,t)=>e+t),0),h=[0];for(let i=0;i<s;i++){let t=null;f&&(t=u[i]*r/100,h.push(t+h[i])),n.push({shape:{type:"circle",cx:l,cy:l,r:l/2},fill:[0,0,0,0],stroke:{width:l,dashArray:`${t??a} ${r}`,dashoffset:"-"+(f?h[i]/2:i*(a/2)),color:e[i]},offset:[0,0]})}let y=null;const d=2*l+(c?.width||0),m=t.holePercentage;if(m){c&&n.push({shape:{type:"circle",cx:l,cy:l,r:l*m},fill:null,stroke:c,offset:[0,0]});const e=d/2;y=[[{shape:{type:"circle",cx:e,cy:e,r:e},fill:p,stroke:c?{...c,color:p}:null,offset:[0,0]},{shape:{type:"circle",cx:e,cy:e,r:l*m},fill:[0,0,0],stroke:null,offset:[0,0]}]]}return o([n],[d,d],{effectView:t.effectList,ignoreStrokeWidth:!0,masking:y,rotation:-90})}function g(e,t={}){const l=24,r=75,i="horizontal"===t.align,s=i?r:l,o=i?l:r,{width:a=s,height:n=o,gradient:c=!0}=t,u=window.devicePixelRatio,f=a*u,h=n*u,y=document.createElement("canvas");y.width=f,y.height=h,y.style.width=`${a}px`,y.style.height=`${n}px`;const p=y.getContext("2d"),d=i?f:0,m=i?0:h;if(c){const t=p.createLinearGradient(0,0,d,m),l=e.length,r=1===l?0:1/(l-1);e.forEach(((e,l)=>t.addColorStop(l*r,e.toString()))),p.fillStyle=t,p.fillRect(0,0,f,h)}else{const t=i?f/e.length:f,l=i?h:h/e.length;let r=0,s=0;for(const o of e)p.fillStyle=o.toString(),p.fillRect(r,s,t,l),r=i?r+t:0,s=i?0:s+l}const b=document.createElement("div");return b.style.width=`${a}px`,b.style.height=`${n}px`,w(b,t?.effectList),b.appendChild(y),b}function w(e,t){if(!t)return;e.style.filter=a(t);const l=t.effects;if(l)for(const r of l)if("drop-shadow"===r?.type){r.offsetX<0?e.style.marginLeft=`${Math.abs(r.offsetX)}px`:e.style.marginRight=`${r.offsetX}px`;break}}async function S(e,t){switch(e.type){case"web-style":{const{previewWebStyleSymbol:l}=await import("./previewWebStyleSymbol.js");return l(e,S,t)}case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":{const{previewSymbol3D:l}=await import("./previewSymbol3D.js");return l(e,t)}case"simple-marker":case"simple-line":case"simple-fill":case"picture-marker":case"picture-fill":case"text":{const{previewSymbol2D:l}=await import("./previewSymbol2D.js");return l(e,t)}case"cim":{const{previewCIMSymbol:l}=await import("./previewCIMSymbol.js");return l(e,t)}default:return}}function v(e){return e&&"opacity"in e?e.opacity*v(e.parent):1}async function x(i,s){if(!i)return;const o=i.sourceLayer,a=(e(s)&&s.useSourceLayer?o:i.layer)??o,f=v(a);if(e(i.symbol)&&(!e(s)||!0!==s.ignoreGraphicSymbol)){const t="web-style"===i.symbol.type?await i.symbol.fetchSymbol({...s,cache:e(s)?s.webStyleCache:null}):i.symbol.clone();return n(t,null,f),t}const h=(e(s)?s.renderer:null)??(a&&"renderer"in a?a.renderer:null);let y=h&&"getSymbolAsync"in h?await h.getSymbolAsync(i,s):null;if(!y)return;if(y="web-style"===y.type?await y.fetchSymbol({...s,cache:e(s)?s.webStyleCache:null}):y.clone(),!(h&&"visualVariables"in h&&h.visualVariables&&h.visualVariables.length))return n(y,null,f),y;if("arcadeRequiredForVisualVariables"in h&&h.arcadeRequiredForVisualVariables&&(t(s)||t(s.arcade))){const e={...l(s)};e.arcade=await r(),s=e}const p=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),d=[],m=[],b=[],g=[];for(const e of h.visualVariables)switch(e.type){case"color":d.push(e);break;case"opacity":m.push(e);break;case"rotation":g.push(e);break;case"size":e.target||b.push(e)}const w=!!d.length&&d[d.length-1],S=w?p.getColor(w,i,s):null,x=!!m.length&&m[m.length-1];let V=x?p.getOpacity(x,i,s):null;if(null!=f&&(V=null!=V?V*f:f),n(y,S,V),b.length){const e=p.getAllSizes(b,i,s);await c(y,e)}for(const e of g)u(y,p.getRotationAngle(e,i,s),e.axis);return y}async function V(i,s){if(!i)return;const o=v(i.layer||i.sourceLayer);if(e(i.symbol)&&(!e(s)||!0!==s.ignoreGraphicSymbol)){const e="web-style"===i.symbol.type?await i.symbol.fetchSymbol(s):i.symbol.clone();return f(e,o)}const a=e(s)&&s.renderer||i.get("layer.renderer")||i.get("sourceLayer.renderer");let n=await a.getSymbolAsync(i,s);if(!n)return;n="web-style"===n.type?await n.fetchSymbol(s):n.clone();const c=f(n,o);if(!("visualVariables"in a)||"visualVariables"in a&&!a.visualVariables||"visualVariables"in a&&!a.visualVariables?.length)return c;if(a.arcadeRequiredForVisualVariables&&(t(s)||t(s.arcade))){const e={...l(s)};e.arcade=await r(),s=e}const u=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),y=[],p=[];for(const e of a.visualVariables)switch(e.type){case"color":y.push(e);break;case"opacity":p.push(e)}const d=y.length>0?y[y.length-1]:null,m=d?u.getColor(d,i,s):c,b=p.length>0?p[p.length-1]:null;let g=b?u.getOpacity(b,i,s):null;return null!=o&&(g=null!=g?g*o:o),m?h(m,g):null}export{V as getDisplayedColor,x as getDisplayedSymbol,g as renderColorRampPreviewHTML,m as renderDotDensityPreviewHTML,b as renderPieChartPreviewHTML,S as renderPreviewHTML};
|
|
5
|
+
import"../../core/has.js";import{isSome as e,isNone as t,unwrap as l}from"../../core/maybe.js";import{loadArcade as r}from"../../support/arcadeOnDemand.js";import{getStroke as i}from"./gfxUtils.js";import{SymbolSizeDefaults as s}from"./previewUtils.js";import{renderSymbol as o}from"./renderUtils.js";import{getCSSFilterFromEffectList as a,applyColorToSymbol as n,applySizesToSymbol as c,applyRotationToSymbol as u,getColorFromSymbol as f,applyOpacityToColor as h}from"./utils.js";let y=null;const p=[255,255,255];function d(e,t){return Math.floor(Math.random()*(t-e+1)+e)}function m(e,t,l){const{backgroundColor:r,outline:i,dotSize:o}=e,a=l&&l.swatchSize||s.size,n=.8,c=Math.round(a*a/o**2*n),u=window.devicePixelRatio,f=document.createElement("canvas"),h=a*u;f.width=h,f.height=h,f.style.width=f.width/u+"px",f.style.height=f.height/u+"px";const p=f.getContext("2d");if(r&&(p.fillStyle=r.toCss(!0),p.fillRect(0,0,h,h),p.fill()),p.fillStyle=t.toCss(!0),y&&y.length/2===c)for(let s=0;s<2*c;s+=2){const e=y[s],t=y[s+1];p.fillRect(e,t,o*u,o*u),p.fill()}else{y=[];for(let e=0;e<2*c;e+=2){const e=d(0,h),t=d(0,h);y.push(e,t),p.fillRect(e,t,o*u,o*u),p.fill()}}i&&(i.color&&(p.strokeStyle=i.color.toCss(!0)),p.lineWidth=i.width,p.strokeRect(0,0,h,h));const m=new Image(a,a);return m.src=f.toDataURL(),m}function b(e,t={}){const l=t.radius||40,r=2*Math.PI*l,s=e.length,a=r/s,n=[],c=i(t.outline);null!=c?.width&&(c.width*=2),(c||t.backgroundColor)&&n.push({shape:{type:"circle",cx:l,cy:l,r:l},fill:t.backgroundColor,stroke:c,offset:[0,0]});const u=t.values,f=u&&u.length===s&&100===u.reduce(((e,t)=>e+t),0),h=[0];for(let i=0;i<s;i++){let t=null;f&&(t=u[i]*r/100,h.push(t+h[i])),n.push({shape:{type:"circle",cx:l,cy:l,r:l/2},fill:[0,0,0,0],stroke:{width:l,dashArray:`${(t??a)/2} ${r}`,dashoffset:"-"+(f?h[i]/2:i*(a/2)),color:e[i]},offset:[0,0]})}let y=null;const d=2*l+(c?.width||0),m=t.holePercentage;if(m){c&&n.push({shape:{type:"circle",cx:l,cy:l,r:l*m},fill:null,stroke:c,offset:[0,0]});const e=d/2;y=[[{shape:{type:"circle",cx:e,cy:e,r:e},fill:p,stroke:c?{...c,color:p}:null,offset:[0,0]},{shape:{type:"circle",cx:e,cy:e,r:l*m},fill:[0,0,0],stroke:null,offset:[0,0]}]]}return o([n],[d,d],{effectView:t.effectList,ignoreStrokeWidth:!0,masking:y,rotation:-90})}function g(e,t={}){const l=24,r=75,i="horizontal"===t.align,s=i?r:l,o=i?l:r,{width:a=s,height:n=o,gradient:c=!0}=t,u=window.devicePixelRatio,f=a*u,h=n*u,y=document.createElement("canvas");y.width=f,y.height=h,y.style.width=`${a}px`,y.style.height=`${n}px`;const p=y.getContext("2d"),d=i?f:0,m=i?0:h;if(c){const t=p.createLinearGradient(0,0,d,m),l=e.length,r=1===l?0:1/(l-1);e.forEach(((e,l)=>t.addColorStop(l*r,e.toString()))),p.fillStyle=t,p.fillRect(0,0,f,h)}else{const t=i?f/e.length:f,l=i?h:h/e.length;let r=0,s=0;for(const o of e)p.fillStyle=o.toString(),p.fillRect(r,s,t,l),r=i?r+t:0,s=i?0:s+l}const b=document.createElement("div");return b.style.width=`${a}px`,b.style.height=`${n}px`,w(b,t?.effectList),b.appendChild(y),b}function w(e,t){if(!t)return;e.style.filter=a(t);const l=t.effects;if(l)for(const r of l)if("drop-shadow"===r?.type){r.offsetX<0?e.style.marginLeft=`${Math.abs(r.offsetX)}px`:e.style.marginRight=`${r.offsetX}px`;break}}async function S(e,t){switch(e.type){case"web-style":{const{previewWebStyleSymbol:l}=await import("./previewWebStyleSymbol.js");return l(e,S,t)}case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":{const{previewSymbol3D:l}=await import("./previewSymbol3D.js");return l(e,t)}case"simple-marker":case"simple-line":case"simple-fill":case"picture-marker":case"picture-fill":case"text":{const{previewSymbol2D:l}=await import("./previewSymbol2D.js");return l(e,t)}case"cim":{const{previewCIMSymbol:l}=await import("./previewCIMSymbol.js");return l(e,t)}default:return}}function v(e){return e&&"opacity"in e?e.opacity*v(e.parent):1}async function x(i,s){if(!i)return;const o=i.sourceLayer,a=(e(s)&&s.useSourceLayer?o:i.layer)??o,f=v(a);if(e(i.symbol)&&(!e(s)||!0!==s.ignoreGraphicSymbol)){const t="web-style"===i.symbol.type?await i.symbol.fetchSymbol({...s,cache:e(s)?s.webStyleCache:null}):i.symbol.clone();return n(t,null,f),t}const h=(e(s)?s.renderer:null)??(a&&"renderer"in a?a.renderer:null);let y=h&&"getSymbolAsync"in h?await h.getSymbolAsync(i,s):null;if(!y)return;if(y="web-style"===y.type?await y.fetchSymbol({...s,cache:e(s)?s.webStyleCache:null}):y.clone(),!(h&&"visualVariables"in h&&h.visualVariables&&h.visualVariables.length))return n(y,null,f),y;if("arcadeRequiredForVisualVariables"in h&&h.arcadeRequiredForVisualVariables&&(t(s)||t(s.arcade))){const e={...l(s)};e.arcade=await r(),s=e}const p=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),d=[],m=[],b=[],g=[];for(const e of h.visualVariables)switch(e.type){case"color":d.push(e);break;case"opacity":m.push(e);break;case"rotation":g.push(e);break;case"size":e.target||b.push(e)}const w=!!d.length&&d[d.length-1],S=w?p.getColor(w,i,s):null,x=!!m.length&&m[m.length-1];let V=x?p.getOpacity(x,i,s):null;if(null!=f&&(V=null!=V?V*f:f),n(y,S,V),b.length){const e=p.getAllSizes(b,i,s);await c(y,e)}for(const e of g)u(y,p.getRotationAngle(e,i,s),e.axis);return y}async function V(i,s){if(!i)return;const o=v(i.layer||i.sourceLayer);if(e(i.symbol)&&(!e(s)||!0!==s.ignoreGraphicSymbol)){const e="web-style"===i.symbol.type?await i.symbol.fetchSymbol(s):i.symbol.clone();return f(e,o)}const a=e(s)&&s.renderer||i.get("layer.renderer")||i.get("sourceLayer.renderer");let n=await a.getSymbolAsync(i,s);if(!n)return;n="web-style"===n.type?await n.fetchSymbol(s):n.clone();const c=f(n,o);if(!("visualVariables"in a)||"visualVariables"in a&&!a.visualVariables||"visualVariables"in a&&!a.visualVariables?.length)return c;if(a.arcadeRequiredForVisualVariables&&(t(s)||t(s.arcade))){const e={...l(s)};e.arcade=await r(),s=e}const u=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),y=[],p=[];for(const e of a.visualVariables)switch(e.type){case"color":y.push(e);break;case"opacity":p.push(e)}const d=y.length>0?y[y.length-1]:null,m=d?u.getColor(d,i,s):c,b=p.length>0?p[p.length-1]:null;let g=b?u.getOpacity(b,i,s):null;return null!=o&&(g=null!=g?g*o:o),m?h(m,g):null}export{V as getDisplayedColor,x as getDisplayedSymbol,g as renderColorRampPreviewHTML,m as renderDotDensityPreviewHTML,b as renderPieChartPreviewHTML,S as renderPreviewHTML};
|
package/symbols.d.ts
CHANGED
package/views/2d/LabelManager.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../core/Accessor.js";import"../../core/Error.js";import{HandleOwnerMixin as s}from"../../core/HandleOwner.js";import"../../core/has.js";import"../../core/Logger.js";import{throttle as i}from"../../core/throttle.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/accessorSupport/ensureType.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{CollisionEngine as a}from"./engine/webgl/collisions/CollisionEngine.js";const p=32;let l=class extends(s(t)){constructor(e){super(e),this._applyVisibilityPassThrottled=i(this._applyVisibilityPass,p,this),this.lastUpdateId=-1,this.updateRequested=!1,this.view=null}initialize(){this.collisionEngine=new a}destroy(){this.collisionEngine=null,this._applyVisibilityPassThrottled.remove(),this._applyVisibilityPassThrottled=null}get updating(){return this.updateRequested}update(e){this._applyVisibilityPassThrottled(e)}viewChange(){this.requestUpdate()}requestUpdate(){this.updateRequested||(this.updateRequested=!0,this.view.requestUpdate())}processUpdate(e){this._set("updateParameters",e),this.updateRequested&&(this.updateRequested=!1,this.update(e))}_applyVisibilityPass(e){try{const t=this.view.featuresTilingScheme.getClosestInfoForScale(e.state.scale).level;this.collisionEngine.run(this.view.allLayerViews.items,e,t)}catch(t){}}};e([r()],l.prototype,"updateRequested",void 0),e([r({readOnly:!0})],l.prototype,"updateParameters",void 0),e([r()],l.prototype,"updating",null),e([r()],l.prototype,"view",void 0),l=e([o("esri.views.2d.layers.labels.LabelManager")],l);const d=l;export{d as default};
|
|
5
|
+
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../core/Accessor.js";import"../../core/Error.js";import{HandleOwnerMixin as s}from"../../core/HandleOwner.js";import has from"../../core/has.js";import"../../core/Logger.js";import{throttle as i}from"../../core/throttle.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/accessorSupport/ensureType.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{CollisionEngine as a}from"./engine/webgl/collisions/CollisionEngine.js";const p=32;let l=class extends(s(t)){constructor(e){super(e),this._applyVisibilityPassThrottled=i(this._applyVisibilityPass,p,this),this.lastUpdateId=-1,this.updateRequested=!1,this.view=null}initialize(){this.collisionEngine=new a}destroy(){this.collisionEngine=null,this._applyVisibilityPassThrottled.remove(),this._applyVisibilityPassThrottled=null}get updating(){return has("esri-2d-log-updating")&&console.log(`Updating LabelManager ${this.updateRequested}:\n-> updateRequested: ${this.updateRequested}`),this.updateRequested}update(e){this._applyVisibilityPassThrottled(e)}viewChange(){this.requestUpdate()}requestUpdate(){this.updateRequested||(this.updateRequested=!0,this.view.requestUpdate())}processUpdate(e){this._set("updateParameters",e),this.updateRequested&&(this.updateRequested=!1,this.update(e))}_applyVisibilityPass(e){try{const t=this.view.featuresTilingScheme.getClosestInfoForScale(e.state.scale).level;this.collisionEngine.run(this.view.allLayerViews.items,e,t)}catch(t){}}};e([r()],l.prototype,"updateRequested",void 0),e([r({readOnly:!0})],l.prototype,"updateParameters",void 0),e([r()],l.prototype,"updating",null),e([r()],l.prototype,"view",void 0),l=e([o("esri.views.2d.layers.labels.LabelManager")],l);const d=l;export{d as default};
|
package/views/2d/ViewState.d.ts
CHANGED
package/views/2d/ViewState.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as t}from"../../chunks/tslib.es6.js";import"../../geometry.js";import s from"../../Viewpoint.js";import{JSONSupport as i}from"../../core/JSONSupport.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/accessorSupport/ensureType.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{t as r}from"../../chunks/common.js";import{a,r as n,t as p,c as h}from"../../chunks/mat2d.js";import{c}from"../../chunks/mat2df32.js";import{c as m}from"../../chunks/mat2df64.js";import{
|
|
5
|
+
import{_ as t}from"../../chunks/tslib.es6.js";import"../../geometry.js";import s from"../../Viewpoint.js";import{JSONSupport as i}from"../../core/JSONSupport.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/accessorSupport/ensureType.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{t as r}from"../../chunks/common.js";import{a,r as n,t as p,c as h}from"../../chunks/mat2d.js";import{c}from"../../chunks/mat2df32.js";import{c as m}from"../../chunks/mat2df64.js";import{s as l,g as f,h as u,r as w,m as v}from"../../chunks/mat3.js";import{c as d}from"../../chunks/mat3f32.js";import{c as j,t as y}from"../../chunks/vec2.js";import{f as R}from"../../chunks/vec2f32.js";import{a as _}from"../../chunks/vec2f64.js";import{isVec2 as x}from"../../core/libs/gl-matrix-2/types/vec2.js";import{copy as z,getMatrix as g,getResolution as S,getExtent as k,getTransform as M,getTransformNoRotation as N,getWorldScreenWidth as T}from"./viewpointUtils.js";import D from"../../geometry/Extent.js";import V from"../../geometry/Point.js";var b;const G=[0,0];let O=b=class extends i{constructor(t){super(t),this._viewpoint2D={center:_(),rotation:0,scale:0,spatialReference:null},this.center=[0,0],this.extent=new D,this.id=0,this.inverseTransform=m(),this.resolution=0,this.rotation=0,this.scale=0,this.transform=m(),this.transformNoRotation=m(),this.displayMat3=d(),this.displayViewMat3=d(),this.viewMat3=d(),this.viewMat2d=c(),this.worldScreenWidth=0,this.size=[0,0]}set pixelRatio(t){this._set("pixelRatio",t),this._update()}set size(t){this._set("size",t),this._update()}set viewpoint(t){if(t){const s=this._viewpoint2D,i=t.targetGeometry;s.center[0]=i.x,s.center[1]=i.y,s.rotation=t.rotation,s.scale=t.scale,s.spatialReference=i.spatialReference}this._update()}copy(t){const s=this.size,i=this.viewpoint;return i&&s?(this.viewpoint=z(i,t.viewpoint),this._set("size",j(s,t.size))):(this.viewpoint=t.viewpoint.clone(),this._set("size",[t.size[0],t.size[1]])),this._set("pixelRatio",t.pixelRatio),this}clone(){return new b({size:this.size,viewpoint:this.viewpoint.clone(),pixelRatio:this.pixelRatio})}toMap(t,s,i){return x(s)?y(t,s,this.inverseTransform):(G[0]=s,G[1]=i,y(t,G,this.inverseTransform))}toScreen(t,s,i){return x(s)?y(t,s,this.transform):(G[0]=s,G[1]=i,y(t,G,this.transform))}toScreenNoRotation(t,s,i){return x(s)?y(t,s,this.transformNoRotation):(G[0]=s,G[1]=i,y(t,G,this.transformNoRotation))}getScreenTransform(t,s){const{center:i}=this._viewpoint2D,e=this._get("pixelRatio")||1,o=this._get("size");return g(t,i,o,s,0,e),t}_update(){const{center:t,spatialReference:i,scale:e,rotation:o}=this._viewpoint2D,c=this._get("pixelRatio")||1,m=this._get("size"),d=new s({targetGeometry:new V(t[0],t[1],i),scale:e,rotation:o});if(this._set("viewpoint",d),!m||!i||!e)return;this.resolution=S(d),this.rotation=o,this.scale=e,this.spatialReference=i,j(this.center,t);const y=0!==m[0]?2/m[0]:0,_=0!==m[1]?-2/m[1]:0;l(this.displayMat3,y,0,0,0,_,0,-1,1,1);const x=f(this.viewMat3),z=R(m[0]/2,m[1]/2),g=R(-m[0]/2,-m[1]/2),D=r(o);u(x,x,z),w(x,x,D),u(x,x,g),v(this.displayViewMat3,this.displayMat3,x);const b=a(this.viewMat2d,z);return n(b,b,D),p(b,b,g),k(this.extent,d,m),M(this.transform,d,m,c),h(this.inverseTransform,this.transform),N(this.transformNoRotation,d,m,c),this.worldScreenWidth=T(this.spatialReference,this.resolution),this._set("id",this.id+1),this}};t([e({readOnly:!0})],O.prototype,"id",void 0),t([e({value:1,json:{write:!0}})],O.prototype,"pixelRatio",null),t([e({json:{write:!0}})],O.prototype,"size",null),t([e()],O.prototype,"spatialReference",void 0),t([e({type:s,json:{write:!0}})],O.prototype,"viewpoint",null),O=b=t([o("esri.views.2d.ViewState")],O);const U=O;export{U as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{deg2rad as t}from"../../../../core/mathUtils.js";import{isSome as s,isNone as a}from"../../../../core/maybe.js";import{j as e,
|
|
5
|
+
import{deg2rad as t}from"../../../../core/mathUtils.js";import{isSome as s,isNone as a}from"../../../../core/maybe.js";import{j as e,d as i,h as r,r as o}from"../../../../chunks/mat3.js";import{c as n}from"../../../../chunks/mat3f32.js";import{DisplayObject as l}from"../DisplayObject.js";class m extends l{constructor(){super(...arguments),this._displayData=null}get displayData(){return this._displayData}set displayData(t){this._displayData=t,this.requestRender()}clear(){s(this._displayData)&&(this._displayData.detach(),this._displayData=null,this.requestRender())}setTransform(s){const{displayData:n}=this;if(a(n))return;const l=n.extent.xmin,m=n.extent.ymax,p=[0,0];s.toScreen(p,[l,m]);const c=(n.extent.xmax-n.extent.xmin)/n.size[0]/s.resolution,d=t(s.rotation),{dvs:h}=this.transforms;e(h,[-1,1,0]),i(h,h,[2/(s.size[0]*s.pixelRatio),-2/(s.size[1]*s.pixelRatio),1]),r(h,h,[p[0],p[1],0]),o(h,h,d),i(h,h,[c*s.pixelRatio,c*s.pixelRatio,1])}_createTransforms(){return{dvs:n()}}}export{m as FlowDisplayObject};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{
|
|
5
|
+
import{s as t,m as s}from"../../../../chunks/mat3.js";import{c as e}from"../../../../chunks/mat3f32.js";import{RasterVFDisplayObject as i}from"./RasterVFDisplayObject.js";import{TiledDisplayObject as a}from"../webgl/TiledDisplayObject.js";class r extends a{constructor(t,s,e,a,r,o,l=null){super(t,s,e,a,r,o),this.tileData=new i(l),this.tileData.coordScale=[r,o],this.tileData.once("isReady",(()=>this.ready()))}destroy(){super.destroy(),this.tileData.destroy(),this.tileData=null,this.stage=null}set stencilRef(t){this.tileData.stencilRef=t}get stencilRef(){return this.tileData.stencilRef}_createTransforms(){return{dvs:e(),tileMat3:e()}}setTransform(e){super.setTransform(e);const i=this.resolution/(e.resolution*e.pixelRatio),a=this.transforms.tileMat3,[r,o]=this.tileData.offset,l=[this.x+r*this.resolution,this.y-o*this.resolution],[h,n]=e.toScreenNoRotation([0,0],l),{symbolTileSize:f}=this.tileData.symbolizerParameters,m=Math.round((this.width-this.tileData.offset[0])/f)*f,c=Math.round((this.height-this.tileData.offset[1])/f)*f,u=m/this.rangeX*i,D=c/this.rangeY*i;t(a,u,0,0,0,D,0,h,n,1),s(this.transforms.dvs,e.displayViewMat3,a),this.tileData.transforms.dvs=this.transforms.dvs}onAttach(){this.tileData.stage=this.stage}onDetach(){this.tileData.stage=null}}export{r as RasterVFTile};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isAbortError as e,eachAlways as t}from"../../../../core/promiseUtils.js";import{addQueryParameters as s}from"../../../../core/urlUtils.js";import{open as r}from"../../../../core/workers/workers.js";import i from"./GlyphMosaic.js";import o from"./GlyphSource.js";import a from"./SpriteMosaic.js";import l from"../../tiling/TileKey.js";class n{constructor(e,t,s){this._layer=e,this._styleRepository=t,this.devicePixelRatio=s,this._spriteMosaic=null,this._glyphMosaic=null,this._connection=null}destroy(){this._connection&&(this._connection.close(),this._connection=null),this._styleRepository=null,this._layer=null,this._spriteMosaic&&(this._spriteMosaic=null),this._glyphMosaic&&(this._glyphMosaic=null)}get spriteMosaic(){return this._spriteSourcePromise.then((()=>this._spriteMosaic))}get glyphMosaic(){return this._glyphMosaic}async start(e){this._spriteSourcePromise=this._layer.loadSpriteSource(this.devicePixelRatio,e),this._spriteSourcePromise.then((e=>{this._spriteMosaic=new a(1024,1024,250),this._spriteMosaic.setSpriteSource(e)}));const t=new o(this._layer.currentStyleInfo.glyphsUrl?s(this._layer.currentStyleInfo.glyphsUrl,{...this._layer.customParameters,token:this._layer.apiKey}):null);this._glyphMosaic=new i(1024,1024,t),this._broadcastPromise=r("WorkerTileHandler",{client:this,schedule:e.schedule,signal:e.signal}).then((t=>{this._connection=t,this._connection.broadcast("setStyle",this._layer.currentStyleInfo.style,e)}))}async updateStyle(e){return await this._broadcastPromise,this._broadcastPromise=Promise.all(this._connection.broadcast("updateStyle",e)),this._broadcastPromise}setSpriteSource(e){const t=new a(1024,1024,250);return t.setSpriteSource(e),this._spriteMosaic=t,this._spriteSourcePromise=Promise.resolve(e),t}async setStyle(e,t){await this._broadcastPromise,this._styleRepository=e,this._spriteSourcePromise=this._layer.loadSpriteSource(this.devicePixelRatio,null),this._spriteSourcePromise.then((e=>{this._spriteMosaic=new a(1024,1024,250),this._spriteMosaic.setSpriteSource(e)}));const r=new o(this._layer.currentStyleInfo.glyphsUrl?s(this._layer.currentStyleInfo.glyphsUrl,{...this._layer.customParameters,token:this._layer.apiKey}):null);return this._glyphMosaic=new i(1024,1024,r),this._broadcastPromise=Promise.all(this._connection.broadcast("setStyle",t)),this._broadcastPromise}fetchTileData(e,t){return this._getRefKeys(e,t).then((e=>{const s=this._layer.sourceNameToSource,r=[];for(const t in s)r.push(t);return this._getSourcesData(r,e,t)}))}parseTileData(e,t){const s=e&&e.data;if(!s)return Promise.resolve(null);const{sourceName2DataAndRefKey:r,transferList:i}=s;return 0===Object.keys(r).length?Promise.resolve(null):this._broadcastPromise.then((()=>this._connection.invoke("createTileAndParse",{key:e.key.id,sourceName2DataAndRefKey:r,styleLayerUIDs:e.styleLayerUIDs},{...t,transferList:i})))}async getSprites(e){return await this._spriteSourcePromise,this._spriteMosaic.getSpriteItems(e)}getGlyphs(e){return this._glyphMosaic.getGlyphItems(e.font,e.codePoints)}async _getTilePayload(t,s,r){const i=l.pool.acquire(t.id),o=this._layer.sourceNameToSource[s],{level:a,row:n,col:c}=i;l.pool.release(i);try{return{protobuff:await o.requestTile(a,n,c,r),sourceName:s}}catch(h){if(e(h))throw h;return{protobuff:null,sourceName:s}}}_getRefKeys(e,s){const r=this._layer.sourceNameToSource,i=new Array;for(const t in r){const o=r[t].getRefKey(e,s);i.push(o)}return t(i)}_getSourcesData(e,s,r){const i=[];for(let t=0;t<s.length;t++)if(null==s[t].value||null==e[t])i.push(null);else{const o=this._getTilePayload(s[t].value,e[t],r);i.push(o)}return t(i).then((e=>{const t={},r=[];for(let i=0;i<e.length;i++)if(e[i].value&&e[i].value&&e[i].value.protobuff&&e[i].value.protobuff.byteLength>0){const o=s[i].value.id;t[e[i].value.sourceName]={refKey:o,protobuff:e[i].value.protobuff},r.push(e[i].value.protobuff)}return{sourceName2DataAndRefKey:t,transferList:r}}))}}export{n as TileHandler};
|
|
5
|
+
import{isAbortError as e,eachAlways as t}from"../../../../core/promiseUtils.js";import{addQueryParameters as s}from"../../../../core/urlUtils.js";import{open as r}from"../../../../core/workers/workers.js";import i from"./GlyphMosaic.js";import o from"./GlyphSource.js";import a from"./SpriteMosaic.js";import l from"../../tiling/TileKey.js";class n{constructor(e,t,s){this._layer=e,this._styleRepository=t,this.devicePixelRatio=s,this._spriteMosaic=null,this._glyphMosaic=null,this._connection=null}destroy(){this._connection&&(this._connection.close(),this._connection=null),this._styleRepository=null,this._layer=null,this._spriteMosaic&&(this._spriteMosaic=null),this._glyphMosaic&&(this._glyphMosaic=null)}get spriteMosaic(){return this._spriteSourcePromise.then((()=>this._spriteMosaic))}get glyphMosaic(){return this._glyphMosaic}async start(e){this._spriteSourcePromise=this._layer.loadSpriteSource(this.devicePixelRatio,e),this._spriteSourcePromise.then((e=>{this._spriteMosaic=new a(1024,1024,250),this._spriteMosaic.setSpriteSource(e)}));const t=new o(this._layer.currentStyleInfo.glyphsUrl?s(this._layer.currentStyleInfo.glyphsUrl,{...this._layer.customParameters,token:this._layer.apiKey}):null);this._glyphMosaic=new i(1024,1024,t),this._broadcastPromise=r("WorkerTileHandler",{client:this,schedule:e.schedule,signal:e.signal}).then((t=>{this._connection=t,this._layer&&this._connection.broadcast("setStyle",this._layer.currentStyleInfo.style,e)}))}async updateStyle(e){return await this._broadcastPromise,this._broadcastPromise=Promise.all(this._connection.broadcast("updateStyle",e)),this._broadcastPromise}setSpriteSource(e){const t=new a(1024,1024,250);return t.setSpriteSource(e),this._spriteMosaic=t,this._spriteSourcePromise=Promise.resolve(e),t}async setStyle(e,t){await this._broadcastPromise,this._styleRepository=e,this._spriteSourcePromise=this._layer.loadSpriteSource(this.devicePixelRatio,null),this._spriteSourcePromise.then((e=>{this._spriteMosaic=new a(1024,1024,250),this._spriteMosaic.setSpriteSource(e)}));const r=new o(this._layer.currentStyleInfo.glyphsUrl?s(this._layer.currentStyleInfo.glyphsUrl,{...this._layer.customParameters,token:this._layer.apiKey}):null);return this._glyphMosaic=new i(1024,1024,r),this._broadcastPromise=Promise.all(this._connection.broadcast("setStyle",t)),this._broadcastPromise}fetchTileData(e,t){return this._getRefKeys(e,t).then((e=>{const s=this._layer.sourceNameToSource,r=[];for(const t in s)r.push(t);return this._getSourcesData(r,e,t)}))}parseTileData(e,t){const s=e&&e.data;if(!s)return Promise.resolve(null);const{sourceName2DataAndRefKey:r,transferList:i}=s;return 0===Object.keys(r).length?Promise.resolve(null):this._broadcastPromise.then((()=>this._connection.invoke("createTileAndParse",{key:e.key.id,sourceName2DataAndRefKey:r,styleLayerUIDs:e.styleLayerUIDs},{...t,transferList:i})))}async getSprites(e){return await this._spriteSourcePromise,this._spriteMosaic.getSpriteItems(e)}getGlyphs(e){return this._glyphMosaic.getGlyphItems(e.font,e.codePoints)}async _getTilePayload(t,s,r){const i=l.pool.acquire(t.id),o=this._layer.sourceNameToSource[s],{level:a,row:n,col:c}=i;l.pool.release(i);try{return{protobuff:await o.requestTile(a,n,c,r),sourceName:s}}catch(h){if(e(h))throw h;return{protobuff:null,sourceName:s}}}_getRefKeys(e,s){const r=this._layer.sourceNameToSource,i=new Array;for(const t in r){const o=r[t].getRefKey(e,s);i.push(o)}return t(i)}_getSourcesData(e,s,r){const i=[];for(let t=0;t<s.length;t++)if(null==s[t].value||null==e[t])i.push(null);else{const o=this._getTilePayload(s[t].value,e[t],r);i.push(o)}return t(i).then((e=>{const t={},r=[];for(let i=0;i<e.length;i++)if(e[i].value&&e[i].value&&e[i].value.protobuff&&e[i].value.protobuff.byteLength>0){const o=s[i].value.id;t[e[i].value.sourceName]={refKey:o,protobuff:e[i].value.protobuff},r.push(e[i].value.protobuff)}return{sourceName2DataAndRefKey:t,transferList:r}}))}}export{n as TileHandler};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isSome as e}from"../../../../core/maybe.js";import{g as t,h as s,r as a,
|
|
5
|
+
import{isSome as e}from"../../../../core/maybe.js";import{g as t,h as s,r as a,d as r}from"../../../../chunks/mat3.js";import{c as i}from"../../../../chunks/mat3f32.js";import{BucketType as o}from"./enums.js";import{CircleRenderBucket as h,SymbolRenderBucket as n,LineRenderBucket as l,FillRenderBucket as y}from"./RenderBucket.js";import{FADE_DURATION as c}from"./decluttering/config.js";import{TiledDisplayObject as d}from"../webgl/TiledDisplayObject.js";class m extends d{constructor(e,t,s,a,r,i,o,h=null){super(e,t,s,a,r,i,4096,4096),this._memCache=h,this.type="vector-tile",this._referenced=0,this._hasSymbolBuckets=!1,this._memoryUsedByLayerData=0,this.layerData=new Map,this.layerCount=0,this.status="loading",this.allSymbolsFadingOut=!1,this.lastOpacityUpdate=0,this.symbols=new Map,this.isCoverage=!1,this.neededForCoverage=!1,this.decluttered=!1,this.invalidating=!1,this.parentTile=null,this.childrenTiles=new Set,this._processed=!1,this._referenced=1,this.styleRepository=o,this.id=e.id}get hasSymbolBuckets(){return this._hasSymbolBuckets}get isFading(){return this._hasSymbolBuckets&&performance.now()-this.lastOpacityUpdate<c}get isHoldingForFade(){return this._hasSymbolBuckets&&(!this.allSymbolsFadingOut||performance.now()-this.lastOpacityUpdate<c)}get wasRequested(){return"errored"===this.status||"loaded"===this.status||"reloading"===this.status}setData(e){this.changeDataImpl(e),this.requestRender(),this.ready(),this.invalidating=!1,this._processed=!0}deleteLayerData(t){let s=!1;for(const e of t)if(this.layerData.has(e)){const t=this.layerData.get(e);this._memoryUsedByLayerData-=t.memoryUsed,t.type===o.SYMBOL&&this.symbols.has(e)&&(this.symbols.delete(e),s=!0),t.destroy(),this.layerData.delete(e),this.layerCount--}e(this._memCache)&&this._memCache.updateSize(this.key.id,this,this._memoryUsedByLayerData),s&&this.emit("symbols-changed"),this.requestRender()}processed(){return this._processed}hasData(){return this.layerCount>0}dispose(){"unloaded"!==this.status&&(u.delete(this),m._destroyRenderBuckets(this.layerData),this.layerData=null,this.layerCount=0,this._memoryUsedByLayerData=0,this.destroy(),this.status="unloaded")}release(){return 0==--this._referenced&&(this.dispose(),this.stage=null,!0)}retain(){++this._referenced}get referenced(){return this._referenced}get memoryUsage(){return(this._memoryUsedByLayerData+256)/(this._referenced||1)}changeDataImpl(t){let s=!1;if(t){const{bucketsWithData:a,emptyBuckets:r}=t,i=this._createRenderBuckets(a);if(r&&r.byteLength>0){const e=new Uint32Array(r);for(const t of e)this._deleteLayerData(t)}for(const[e,t]of i)this._deleteLayerData(e),t.type===o.SYMBOL&&(this.symbols.set(e,t.symbols),s=!0),this._memoryUsedByLayerData+=t.memoryUsed,this.layerData.set(e,t),this.layerCount++;e(this._memCache)&&this._memCache.updateSize(this.key.id,this,this._memoryUsedByLayerData)}this._hasSymbolBuckets=!1;for(const[e,a]of this.layerData)a.type===o.SYMBOL&&(this._hasSymbolBuckets=!0);s&&this.emit("symbols-changed")}attachWithContext(e){this.stage={context:e,trashDisplayObject(e){e.processDetach()},untrashDisplayObject:()=>!1}}setTransform(e){super.setTransform(e);const i=this.resolution/(e.resolution*e.pixelRatio),o=this.width/this.rangeX*i,h=this.height/this.rangeY*i,n=[0,0];e.toScreen(n,[this.x,this.y]);const l=this.transforms.tileUnitsToPixels;t(l),s(l,l,n),a(l,l,Math.PI*e.rotation/180),r(l,l,[o,h,1])}_createTransforms(){return{dvs:i(),tileMat3:i(),tileUnitsToPixels:i()}}static _destroyRenderBuckets(e){if(!e)return;const t=new Set;e.forEach((e=>{t.has(e)||(e.destroy(),t.add(e))})),e.clear()}_createRenderBuckets(e){const t=new Map,s=new Map;for(const a of e){const e=this._deserializeBucket(a,s);for(const s of e.layerUIDs)t.set(s,e)}return t}_deserializeBucket(e,t){let s=t.get(e);if(s)return s;switch(new Uint32Array(e)[0]){case o.FILL:s=new y(e,this.styleRepository);break;case o.LINE:s=new l(e,this.styleRepository);break;case o.SYMBOL:s=new n(e,this.styleRepository,this);break;case o.CIRCLE:s=new h(e,this.styleRepository)}return t.set(e,s),s}_deleteLayerData(e){if(!this.layerData.has(e))return;const t=this.layerData.get(e);this._memoryUsedByLayerData-=t.memoryUsed,t.destroy(),this.layerData.delete(e),this.layerCount--}}const u=new Map;function p(){u.forEach(((e,t)=>{console.log(`\n${t.key}:`),e[0].forEach((e=>console.log(e))),console.log("========"),e[1].forEach((e=>console.log(e)))}))}export{m as VectorTile,p as printAllocations};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../../../../core/Error.js";import has from"../../../../core/has.js";import e from"../../../../core/Logger.js";import{isNone as i,mapMany as s,isSome as r,applySome as a,unwrap as d,forEachSome as h,mapOr as n,unwrapOr as o}from"../../../../core/maybe.js";import{createResolver as u}from"../../../../core/promiseUtils.js";import{ATTRIBUTE_DATA_VV as l,TEXTURE_BINDING_ATTRIBUTE_DATA_0 as p,TEXTURE_BINDING_ATTRIBUTE_DATA_1 as x,TEXTURE_BINDING_ATTRIBUTE_DATA_2 as _,TEXTURE_BINDING_ATTRIBUTE_DATA_3 as g,TEXTURE_BINDING_ATTRIBUTE_DATA_4 as c,TEXTURE_BINDING_ATTRIBUTE_DATA_5 as T,TEXTURE_BINDING_GPGPU as f,ATTRIBUTE_DATA_FILTER_FLAGS as b,ATTRIBUTE_DATA_GPGPU as m,ATTRIBUTE_DATA_ANIMATION as y,ATTRIBUTE_DATA_DD1 as w}from"./definitions.js";import{getDisplayIdTexel as z}from"./DisplayId.js";import{getPixelArrayCtor as E,getPixelBytes as U}from"./Utils.js";import{createDebugLogger as D,DEBUG_ATTR_UPDATES as S}from"./util/debug.js";import{TextureWrapMode as A,PixelFormat as j,PixelType as k,TextureSamplingMode as M,TextureType as N,TargetType as O,DepthStencilTargetType as F}from"../../../webgl/enums.js";import{FramebufferObject as R}from"../../../webgl/FramebufferObject.js";import{Texture as v}from"../../../webgl/Texture.js";const B=e.getLogger("esri.views.2d.engine.webgl.AttributeStoreView"),V=D(S,B);class L{constructor(t,e,i){this._texture=null,this._lastTexture=null,this._fbos={},this.texelSize=4;const{buffer:s,pixelType:r,textureOnly:a}=t,h=E(r);this.shared=i,this.pixelType=r,this.size=e,this.textureOnly=a,a||(this.data=new h(d(s))),this._resetRange()}destroy(){a(this._texture,(t=>t.dispose()));for(const t in this._fbos)a(this._fbos[t],(e=>{"0"===t&&e.detachColorTexture(),e.dispose()})),this._fbos[t]=null;this._texture=null}get _textureDesc(){return{target:N.TEXTURE_2D,wrapMode:A.CLAMP_TO_EDGE,pixelFormat:j.RGBA,dataType:this.pixelType,samplingMode:M.NEAREST,width:this.size,height:this.size}}setData(t,e,i){const s=z(t),r=d(this.data),a=s*this.texelSize+e;!r||a>=r.length||(r[a]=i,this.dirtyStart=Math.min(this.dirtyStart,s),this.dirtyEnd=Math.max(this.dirtyEnd,s))}getData(t,e){if(i(this.data))return null;const s=z(t)*this.texelSize+e;return!this.data||s>=this.data.length?null:this.data[s]}getTexture(t){return o(this._texture,(()=>this._initTexture(t)))}getFBO(t,e=0){if(i(this._fbos[e])){const i={colorTarget:O.TEXTURE,depthStencilTarget:F.NONE},s=0===e?this.getTexture(t):this._textureDesc;this._fbos[e]=new R(t,i,s)}return this._fbos[e]}get locked(){return!(this.pixelType!==k.UNSIGNED_BYTE||!this.shared||this.textureOnly||!has("esri-atomics")||!this.data)&&1===Atomics.load(this.data,0)}get hasDirty(){const t=this.dirtyStart;return this.dirtyEnd>=t}updateTexture(e,i){if(!this.locked){try{const i=this.dirtyStart,s=this.dirtyEnd;if(!this.hasDirty)return;this._resetRange();const r=d(this.data).buffer,a=this.getTexture(e),h=4,n=(i-i%this.size)/this.size,o=(s-s%this.size)/this.size,u=n,l=this.size,p=o,x=n*this.size*h,_=(l+p*this.size)*h-x,g=E(this.pixelType),c=new g(r,x*g.BYTES_PER_ELEMENT,_),T=this.size,f=p-u+1;if(f>this.size)return void B.error(new t("mapview-webgl","Out-of-bounds index when updating AttributeData"));a.updateData(0,0,u,T,f,c)}catch(s){}i()}}update(t){const{data:e,start:i,end:s}=t;if(r(e)){const s=this.data,r=i*this.texelSize;for(let i=0;i<e.length;i++){const a=1<<i%this.texelSize;t.layout&a&&(s[r+i]=e[i])}}this.dirtyStart=Math.min(this.dirtyStart,i),this.dirtyEnd=Math.max(this.dirtyEnd,s)}resize(t,e){const i=this.size;if(this.size=e,this.textureOnly)return void(i!==this.size&&(this._lastTexture=this._texture,this._texture=null));const s=E(this.pixelType);this.destroy(),this.data=new s(d(t.buffer))}_resetRange(){this.dirtyStart=2147483647,this.dirtyEnd=0}_initTexture(t){const e=new v(t,this._textureDesc,o(this.data,void 0));if(r(this._lastTexture)&&this._fbos[0]){const i=this._lastTexture.descriptor.width,s=this._lastTexture.descriptor.height,r=this._lastTexture.descriptor.dataType,a=this._lastTexture.descriptor.pixelFormat,d=this.getFBO(t),h=U(r),n=new(E(r))(new ArrayBuffer(i*s*h*this.texelSize)),o=t.getBoundFramebufferObject(),{x:u,y:l,width:p,height:x}=t.getViewport();t.bindFramebuffer(d),d.readPixels(0,0,i,s,a,r,n),e.updateData(0,0,0,2*i,s/2,n),t.setViewport(u,l,p,x),t.bindFramebuffer(o)}return this.destroy(),this._texture=e,this._texture}}class G{constructor(t){this._onUpdate=t,this._initialized=!1,this._forceNextUpload=!1,this._locked=!1}initialize(t){const{blocks:e,shared:a,size:d}=t;if(this.shared=a,this.size=d,V("Initializing AttributeStoreView",t),i(this._data))this._data=s(e,(t=>new L(t,d,a)));else for(let s=0;s<this._data.length;s++){const t=this._data[s],h=e[s];r(h)&&(i(t)?this._data[s]=new L(h,d,a):t.resize(h,d))}this._initialized=!0}destroy(){a(this._data,(t=>s(t,(t=>t.destroy())))),a(this._defaultTexture,(t=>t.dispose()))}isEmpty(){const t=this._data;return i(t)}isUpdating(){const t=r(this._pendingAttributeUpdate),e=t;return has("esri-2d-log-updating")&&console.log(`Updating AttributeStoreView ${e}\n -> hasPendingUpdate ${t}`),e}getBlock(t){if(i(this._data))return null;return this._data[t]}setLabelMinZoom(t,e){this.setData(t,0,1,e)}getLabelMinZoom(t){return this.getData(t,0,1,255)}getFilterFlags(t){return this.getData(t,0,0,0)}getVVSize(t){return this.getData(t,l,0,0)}getData(t,e,s,a){if(!this._data)return 0;const h=d(this._data)[e];if(i(h))return 0;const n=h.getData(t,s);return r(n)?n:a}setData(t,e,i,s){const r=d(this._data)[e];d(r).setData(t,i,s)}lockTextureUpload(){this._locked=!0}unlockTextureUpload(){this._locked=!1}forceTextureUpload(){this._forceNextUpload=!0}async requestUpdate(e){if(this._pendingAttributeUpdate)return void B.error(new t("mapview-webgl","Tried to update attribute data with a pending update"));const i=u();return V("AttributeStoreView Update Requested",e),this._pendingAttributeUpdate={data:e,resolver:i},i.promise}update(){if(this._initialized&&r(this._pendingAttributeUpdate)){has("esri-2d-update-debug")&&console.debug("AttributeStoreView::update");const{data:t,resolver:e}=this._pendingAttributeUpdate,i=d(this._data);for(let s=0;s<t.blocks.length;s++){const e=t.blocks[s],r=i[s];a(r,(t=>a(e,(e=>{V(`Updating block ${s}`,e),t.update(e)}))))}this._pendingAttributeUpdate=null,e(),this._onUpdate()}}bindTextures(t,e=!0){const i=this._getDefaultTexture(t);if(!this._initialized)return t.bindTexture(i,p),void(e&&(t.bindTexture(i,x),t.bindTexture(i,_),t.bindTexture(i,g),t.bindTexture(i,c),t.bindTexture(i,T),t.bindTexture(i,f)));const s=d(this._data);this._locked&&!this._forceNextUpload||(h(s,(e=>e.updateTexture(t,(()=>this._onUpdate())))),this._forceNextUpload=!1),t.bindTexture(n(s[b],i,(e=>e.getTexture(t))),p),e&&(t.bindTexture(n(s[m],i,(e=>e.getTexture(t))),f),t.bindTexture(n(s[y],i,(e=>e.getTexture(t))),x),t.bindTexture(n(s[l],i,(e=>e.getTexture(t))),_),t.bindTexture(n(s[w],i,(e=>e.getTexture(t))),g),t.bindTexture(n(s[c],i,(e=>e.getTexture(t))),c),t.bindTexture(n(s[T],i,(e=>e.getTexture(t))),T))}_getDefaultTexture(t){if(i(this._defaultTexture)){const e={wrapMode:A.CLAMP_TO_EDGE,pixelFormat:j.RGBA,dataType:k.UNSIGNED_BYTE,samplingMode:M.NEAREST,width:1,height:1};this._defaultTexture=new v(t,e,new Uint8Array(4))}return this._defaultTexture}}export{G as AttributeStoreView};
|
|
5
|
+
import t from"../../../../core/Error.js";import has from"../../../../core/has.js";import e from"../../../../core/Logger.js";import{isNone as i,mapMany as s,isSome as r,applySome as a,unwrap as d,forEachSome as h,mapOr as n,unwrapOr as o}from"../../../../core/maybe.js";import{createResolver as u}from"../../../../core/promiseUtils.js";import{ATTRIBUTE_DATA_VV as l,TEXTURE_BINDING_ATTRIBUTE_DATA_0 as p,TEXTURE_BINDING_ATTRIBUTE_DATA_1 as x,TEXTURE_BINDING_ATTRIBUTE_DATA_2 as _,TEXTURE_BINDING_ATTRIBUTE_DATA_3 as g,TEXTURE_BINDING_ATTRIBUTE_DATA_4 as c,TEXTURE_BINDING_ATTRIBUTE_DATA_5 as T,TEXTURE_BINDING_GPGPU as f,ATTRIBUTE_DATA_FILTER_FLAGS as b,ATTRIBUTE_DATA_GPGPU as m,ATTRIBUTE_DATA_ANIMATION as y,ATTRIBUTE_DATA_DD1 as w}from"./definitions.js";import{getDisplayIdTexel as z}from"./DisplayId.js";import{getPixelArrayCtor as E,getPixelBytes as U}from"./Utils.js";import{createDebugLogger as D,DEBUG_ATTR_UPDATES as S}from"./util/debug.js";import{TextureWrapMode as A,PixelFormat as j,PixelType as k,TextureSamplingMode as M,TextureType as N,TargetType as O,DepthStencilTargetType as F}from"../../../webgl/enums.js";import{FramebufferObject as R}from"../../../webgl/FramebufferObject.js";import{Texture as v}from"../../../webgl/Texture.js";const B=e.getLogger("esri.views.2d.engine.webgl.AttributeStoreView"),V=D(S,B);class L{constructor(t,e,i){this._texture=null,this._lastTexture=null,this._fbos={},this.texelSize=4;const{buffer:s,pixelType:r,textureOnly:a}=t,h=E(r);this.shared=i,this.pixelType=r,this.size=e,this.textureOnly=a,a||(this.data=new h(d(s))),this._resetRange()}destroy(){a(this._texture,(t=>t.dispose()));for(const t in this._fbos)a(this._fbos[t],(e=>{"0"===t&&e.detachColorTexture(),e.dispose()})),this._fbos[t]=null;this._texture=null}get _textureDesc(){return{target:N.TEXTURE_2D,wrapMode:A.CLAMP_TO_EDGE,pixelFormat:j.RGBA,dataType:this.pixelType,samplingMode:M.NEAREST,width:this.size,height:this.size}}setData(t,e,i){const s=z(t),r=d(this.data),a=s*this.texelSize+e;!r||a>=r.length||(r[a]=i,this.dirtyStart=Math.min(this.dirtyStart,s),this.dirtyEnd=Math.max(this.dirtyEnd,s))}getData(t,e){if(i(this.data))return null;const s=z(t)*this.texelSize+e;return!this.data||s>=this.data.length?null:this.data[s]}getTexture(t){return o(this._texture,(()=>this._initTexture(t)))}getFBO(t,e=0){if(i(this._fbos[e])){const i={colorTarget:O.TEXTURE,depthStencilTarget:F.NONE},s=0===e?this.getTexture(t):this._textureDesc;this._fbos[e]=new R(t,i,s)}return this._fbos[e]}get locked(){return!(this.pixelType!==k.UNSIGNED_BYTE||!this.shared||this.textureOnly||!has("esri-atomics")||!this.data)&&1===Atomics.load(this.data,0)}get hasDirty(){const t=this.dirtyStart;return this.dirtyEnd>=t}updateTexture(e,i){if(!this.locked){try{const i=this.dirtyStart,s=this.dirtyEnd;if(!this.hasDirty)return;this._resetRange();const r=d(this.data).buffer,a=this.getTexture(e),h=4,n=(i-i%this.size)/this.size,o=(s-s%this.size)/this.size,u=n,l=this.size,p=o,x=n*this.size*h,_=(l+p*this.size)*h-x,g=E(this.pixelType),c=new g(r,x*g.BYTES_PER_ELEMENT,_),T=this.size,f=p-u+1;if(f>this.size)return void B.error(new t("mapview-webgl","Out-of-bounds index when updating AttributeData"));a.updateData(0,0,u,T,f,c)}catch(s){}i()}}update(t){const{data:e,start:i,end:s}=t;if(r(e)){const s=this.data,r=i*this.texelSize;for(let i=0;i<e.length;i++){const a=1<<i%this.texelSize;t.layout&a&&(s[r+i]=e[i])}}this.dirtyStart=Math.min(this.dirtyStart,i),this.dirtyEnd=Math.max(this.dirtyEnd,s)}resize(t,e){const i=this.size;if(this.size=e,this.textureOnly)return void(i!==this.size&&(this._lastTexture=this._texture,this._texture=null));const s=E(this.pixelType);this.destroy(),this.data=new s(d(t.buffer))}_resetRange(){this.dirtyStart=2147483647,this.dirtyEnd=0}_initTexture(t){const e=new v(t,this._textureDesc,o(this.data,void 0));if(r(this._lastTexture)&&this._fbos[0]){const i=this._lastTexture.descriptor.width,s=this._lastTexture.descriptor.height,r=this._lastTexture.descriptor.dataType,a=this._lastTexture.descriptor.pixelFormat,d=this.getFBO(t),h=U(r),n=new(E(r))(new ArrayBuffer(i*s*h*this.texelSize)),o=t.getBoundFramebufferObject(),{x:u,y:l,width:p,height:x}=t.getViewport();t.bindFramebuffer(d),d.readPixels(0,0,i,s,a,r,n),e.updateData(0,0,0,2*i,s/2,n),t.setViewport(u,l,p,x),t.bindFramebuffer(o)}return this.destroy(),this._texture=e,this._texture}}class G{constructor(t){this._onUpdate=t,this._initialized=!1,this._forceNextUpload=!1,this._locked=!1}initialize(t){const{blocks:e,shared:a,size:d}=t;if(this.shared=a,this.size=d,V("Initializing AttributeStoreView",t),i(this._data))this._data=s(e,(t=>new L(t,d,a)));else for(let s=0;s<this._data.length;s++){const t=this._data[s],h=e[s];r(h)&&(i(t)?this._data[s]=new L(h,d,a):t.resize(h,d))}this._initialized=!0}destroy(){a(this._data,(t=>s(t,(t=>t.destroy())))),a(this._defaultTexture,(t=>t.dispose()))}isEmpty(){const t=this._data;return i(t)}isUpdating(){const t=r(this._pendingAttributeUpdate),e=t;return has("esri-2d-log-updating")&&console.log(`Updating AttributeStoreView ${e}\n -> hasPendingUpdate ${t}`),e}getBlock(t){if(i(this._data))return null;return this._data[t]}setLabelMinZoom(t,e){this.setData(t,0,1,e)}getLabelMinZoom(t){return this.getData(t,0,1,255)}getFilterFlags(t){return this.getData(t,0,0,0)}getVVSize(t){return this.getData(t,l,0,0)}getData(t,e,s,a){if(!this._data)return 0;const h=d(this._data)[e];if(i(h))return 0;const n=h.getData(t,s);return r(n)?n:a}setData(t,e,i,s){const r=d(this._data)[e];d(r).setData(t,i,s)}lockTextureUpload(){this._locked=!0}unlockTextureUpload(){this._locked=!1}forceTextureUpload(){this._forceNextUpload=!0}async requestUpdate(e){if(this._pendingAttributeUpdate)return void B.error(new t("mapview-webgl","Tried to update attribute data with a pending update"));const i=u();return V("AttributeStoreView Update Requested",e),this._pendingAttributeUpdate={data:e,resolver:i},this._onUpdate(),i.promise}update(){if(this._initialized&&r(this._pendingAttributeUpdate)){has("esri-2d-update-debug")&&console.debug("AttributeStoreView::update");const{data:t,resolver:e}=this._pendingAttributeUpdate,i=d(this._data);for(let s=0;s<t.blocks.length;s++){const e=t.blocks[s],r=i[s];a(r,(t=>a(e,(e=>{V(`Updating block ${s}`,e),t.update(e)}))))}this._pendingAttributeUpdate=null,e(),this._onUpdate()}}bindTextures(t,e=!0){const i=this._getDefaultTexture(t);if(!this._initialized)return t.bindTexture(i,p),void(e&&(t.bindTexture(i,x),t.bindTexture(i,_),t.bindTexture(i,g),t.bindTexture(i,c),t.bindTexture(i,T),t.bindTexture(i,f)));const s=d(this._data);this._locked&&!this._forceNextUpload||(h(s,(e=>e.updateTexture(t,(()=>this._onUpdate())))),this._forceNextUpload=!1),t.bindTexture(n(s[b],i,(e=>e.getTexture(t))),p),e&&(t.bindTexture(n(s[m],i,(e=>e.getTexture(t))),f),t.bindTexture(n(s[y],i,(e=>e.getTexture(t))),x),t.bindTexture(n(s[l],i,(e=>e.getTexture(t))),_),t.bindTexture(n(s[w],i,(e=>e.getTexture(t))),g),t.bindTexture(n(s[c],i,(e=>e.getTexture(t))),c),t.bindTexture(n(s[T],i,(e=>e.getTexture(t))),T))}_getDefaultTexture(t){if(i(this._defaultTexture)){const e={wrapMode:A.CLAMP_TO_EDGE,pixelFormat:j.RGBA,dataType:k.UNSIGNED_BYTE,samplingMode:M.NEAREST,width:1,height:1};this._defaultTexture=new v(t,e,new Uint8Array(4))}return this._defaultTexture}}export{G as AttributeStoreView};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isNone as t}from"../../../../core/maybe.js";import{createScreenPoint as e}from"../../../../core/screenUtils.js";import{g as s,m as r,h as o,
|
|
5
|
+
import{isNone as t}from"../../../../core/maybe.js";import{createScreenPoint as e}from"../../../../core/screenUtils.js";import{g as s,m as r,h as o,d as a,r as i}from"../../../../chunks/mat3.js";import{c as n}from"../../../../chunks/mat3f32.js";import{f as c}from"../../../../chunks/vec2f32.js";import{f as p}from"../../../../chunks/vec3f32.js";import{normalizeMapX as d}from"../../../../geometry/support/normalizeUtils.js";import{getInfo as h}from"../../../../geometry/support/spatialReferenceUtils.js";import{getWorldWidth as l}from"../../viewpointUtils.js";import{brushes as m}from"../brushes.js";import{WGLDrawPhase as f}from"./enums.js";import u from"./WGLContainer.js";class M extends u{constructor(){super(...arguments),this._localOrigin=e(0,0),this._viewStateId=-1,this._dvsMat3=n(),this.requiresDedicatedFBO=!1}get dvsMat3(){return this._dvsMat3}beforeRender(t){this._updateMatrices(t),this._updateOverlays(t,this.children);for(const e of this.children)e.beforeRender(t)}prepareRenderPasses(t){const e=t.registerRenderPass({name:"overlay",brushes:[m.overlay],target:()=>this.children,drawPhase:f.MAP});return[...super.prepareRenderPasses(t),e]}_updateMatrices(t){const{state:e}=t,{id:n,size:h,pixelRatio:l,resolution:m,rotation:f,viewpoint:u,displayMat3:M}=e;if(this._viewStateId===n)return;const v=Math.PI/180*f,_=l*h[0],w=l*h[1],{x:y,y:g}=u.targetGeometry,j=d(y,e.spatialReference);this._localOrigin.x=j,this._localOrigin.y=g;const b=m*_,R=m*w,O=s(this._dvsMat3);r(O,O,M),o(O,O,c(_/2,w/2)),a(O,O,p(_/b,-w/R,1)),i(O,O,-v),this._viewStateId=n}_updateOverlays(e,s){const{state:r}=e,{rotation:o,spatialReference:a,worldScreenWidth:i,size:n,viewpoint:c}=r,p=this._localOrigin;let d=0;if(a.isWrappable){const e=n[0],m=n[1],f=180/Math.PI*o,u=Math.abs(Math.cos(f)),M=Math.abs(Math.sin(f)),v=Math.round(e*u+m*M),[_,w]=h(a).valid,y=l(a),{x:g,y:j}=c.targetGeometry,b=[g,j],R=[0,0];r.toScreen(R,b);const O=[0,0];let P;P=v>i?.5*i:.5*v;const x=Math.floor((g+.5*y)/y),C=_+x*y,D=w+x*y,I=[R[0]+P,0];r.toMap(O,I),O[0]>D&&(d=y),I[0]=R[0]-P,r.toMap(O,I),O[0]<C&&(d=-y);for(const r of s){const e=r.elementView.bounds;if(t(e))continue;const[s,,o]=e;s<_&&o>_?r.updateDrawCoords(p,y):o>w&&s<w?r.updateDrawCoords(p,-y):r.updateDrawCoords(p,d)}}else for(const t of s)t.updateDrawCoords(p,d)}}export{M as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isSome as e,isNone as t,disposeMaybe as s}from"../../../../core/maybe.js";import{brushes as r}from"../brushes.js";import i from"../vectorTiles/shaders/VTLMaterialManager.js";import{BitBlitRenderer as n}from"./BitBlitRenderer.js";import{WGLDrawPhase as o,WGLGeometryType as a,WGLSymbologyType as h}from"./enums.js";import l from"./MaterialManager.js";import f from"./TextureManager.js";import{TextureUploadManager as c}from"./TextureUploadManager.js";import{WorldExtentClipRenderer as _}from"./WorldExtentClipRenderer.js";import{AnimationEffect as d}from"./effects/AnimationEffect.js";import{BlendEffect as E}from"./effects/BlendEffect.js";import{FeatureEffect as b}from"./effects/FeatureEffect.js";import u from"./effects/HighlightEffect.js";import{HittestEffect as p}from"./effects/HittestEffect.js";import{HittestEffectVTL as g}from"./effects/HittestEffectVTL.js";import{EffectManager as T}from"./effects/post-processing/EffectManager.js";import m from"./painter/RenderPass.js";import{TextureType as C,PixelFormat as M,PixelType as R,TextureSamplingMode as F,TextureWrapMode as w,TargetType as B,DepthStencilTargetType as S,RenderbufferFormat as O,BlendFactor as x,CompareFunction as P}from"../../../webgl/enums.js";import{FramebufferObject as L}from"../../../webgl/FramebufferObject.js";import{Renderbuffer as N}from"../../../webgl/Renderbuffer.js";function D(e,t){switch(e){case a.LINE:return r.line;case a.TEXT:return r.text;case a.LABEL:return r.label;case a.FILL:return t===h.DOT_DENSITY?r.dotDensity:r.fill;case a.MARKER:switch(t){case h.HEATMAP:return r.heatmap;case h.PIE_CHART:return r.pieChart;default:return r.marker}}}class I{constructor(e,t,s){this.context=e,this._blitRenderer=new n,this._worldExtentClipRenderer=new _,this._isClippedToWorldExtent=!1,this._brushCache=new Map,this._vtlMaterialManager=new i,this._blendEffect=new E,this._fboPool=[],this.effects={highlight:new u,hittest:new p,hittestVTL:new g,integrate:new d,insideEffect:new b("inside"),outsideEffect:new b("outside")},this.materialManager=new l(e),this.textureManager=new f(t,s),this.textureUploadManager=new c(e),this._effectsManager=new T}get vectorTilesMaterialManager(){return this._vtlMaterialManager}getRenderTarget(){return this._renderTarget}setRenderTarget(e){this._renderTarget=e}getFbos(e,t){if(e!==this._lastWidth||t!==this._lastHeight){if(this._lastWidth=e,this._lastHeight=t,this._fbos){for(const s in this._fbos)this._fbos[s].resize(e,t);return this._fbos}const s={target:C.TEXTURE_2D,pixelFormat:M.RGBA,dataType:R.UNSIGNED_BYTE,samplingMode:F.NEAREST,wrapMode:w.CLAMP_TO_EDGE,width:e,height:t},r={colorTarget:B.TEXTURE,depthStencilTarget:S.DEPTH_STENCIL_RENDER_BUFFER},i=new N(this.context,{width:e,height:t,internalFormat:O.DEPTH_STENCIL});this._stencilBuf=i,this._fbos={output:new L(this.context,r,s,i),blend:new L(this.context,r,s,i),effect0:new L(this.context,r,s,i)}}return this._fbos}acquireFbo(e,t){let s;s=this._fboPool.length>0?this._fboPool.pop():new L(this.context,{colorTarget:B.TEXTURE,depthStencilTarget:S.DEPTH_STENCIL_RENDER_BUFFER},{target:C.TEXTURE_2D,pixelFormat:M.RGBA,dataType:R.UNSIGNED_BYTE,samplingMode:F.NEAREST,wrapMode:w.CLAMP_TO_EDGE,width:e,height:t},this._stencilBuf);const r=s.descriptor;return r.width===e&&r.height===t||s.resize(e,t),s}releaseFbo(e){this._fboPool.push(e)}getSharedStencilBuffer(){return this._stencilBuf}beforeRenderLayers(t,s=null){const{width:r,height:i}=t.getViewport();this._prevFBO=t.getBoundFramebufferObject();const n=this.getFbos(r,i);if(t.bindFramebuffer(n.output),t.setColorMask(!0,!0,!0,!0),e(s)){const{r:e,g:r,b:i,a:n}=s.color;t.setClearColor(n*e/255,n*r/255,n*i/255,n)}else t.setClearColor(0,0,0,0);t.setDepthWriteEnabled(!0),t.setClearDepth(1),t.clear(t.gl.COLOR_BUFFER_BIT|t.gl.DEPTH_BUFFER_BIT),t.setDepthWriteEnabled(!1)}beforeRenderLayer(e,t,s){const{context:r,blendMode:i,effects:n,requireFBO:o,drawPhase:a}=e;if(o||j(a,i,n,s))r.bindFramebuffer(this._fbos.blend),r.setColorMask(!0,!0,!0,!0),r.setClearColor(0,0,0,0),r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(r.gl.COLOR_BUFFER_BIT|r.gl.DEPTH_BUFFER_BIT),r.setDepthWriteEnabled(!1);else{const e=this._getOutputFBO();r.bindFramebuffer(e)}r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setClearStencil(t),r.setStencilWriteMask(255),r.clear(r.gl.STENCIL_BUFFER_BIT)}compositeLayer(s,r){const{context:i,blendMode:n,effects:a,requireFBO:h,drawPhase:l}=s;if(h||j(l,n,a,r)){e(a)&&a.length>0&&l===o.MAP&&this._applyEffects(s,a);const h=this._getOutputFBO();i.bindFramebuffer(h),i.setStencilTestEnabled(!1),i.setStencilWriteMask(0),i.setBlendingEnabled(!0),i.setBlendFunctionSeparate(x.ONE,x.ONE_MINUS_SRC_ALPHA,x.ONE,x.ONE_MINUS_SRC_ALPHA),i.setColorMask(!0,!0,!0,!0);const f=t(n)||l===o.HIGHLIGHT?"normal":n;this._blendEffect.draw(s,this._fbos.blend.colorTexture,F.NEAREST,f,r)}}renderLayers(e){if(e.bindFramebuffer(this._prevFBO),!this._fbos)return;const t=this._getOutputFBO();e.setDepthTestEnabled(!1),e.setStencilWriteMask(0),this._isClippedToWorldExtent?(e.setStencilTestEnabled(!0),e.setStencilFunction(P.EQUAL,1,255)):e.setStencilTestEnabled(!1),this.blitTexture(e,t.colorTexture,F.NEAREST)}prepareDisplay(t,s,r){const{context:i}=t;if(i.bindFramebuffer(this._prevFBO),i.setColorMask(!0,!0,!0,!0),e(s)){const{r:e,g:t,b:r,a:n}=s.color;i.setClearColor(n*e/255,n*t/255,n*r/255,n)}else i.setClearColor(0,0,0,0);i.setStencilWriteMask(255),i.setClearStencil(0),i.clear(i.gl.COLOR_BUFFER_BIT|i.gl.STENCIL_BUFFER_BIT),this._isClippedToWorldExtent=this._worldExtentClipRenderer.render(t,r)}dispose(){if(this.materialManager.dispose(),this.textureManager.dispose(),this._blitRenderer=s(this._blitRenderer),this._worldExtentClipRenderer=s(this._worldExtentClipRenderer),this._brushCache&&(this._brushCache.forEach((e=>e.dispose())),this._brushCache.clear(),this._brushCache=null),this._fbos)for(const e in this._fbos)this._fbos[e]&&this._fbos[e].dispose();for(const e of this._fboPool)e.dispose();if(this._fboPool.length=0,this.effects)for(const e in this.effects)this.effects[e]&&this.effects[e].dispose();this._effectsManager.dispose(),this._vtlMaterialManager=s(this._vtlMaterialManager),this._prevFBO=null}getBrush(e,t){const s=D(e,t);let r=this._brushCache.get(s);return void 0===r&&(r=new s,this._brushCache.set(s,r)),this._brushCache.get(s)}renderObject(e,t,s,i){const n=r[s];if(!n)return null;let o=this._brushCache.get(n);void 0===o&&(o=new n,this._brushCache.set(n,o)),o.prepareState(e,i),o.draw(e,t,i)}renderObjects(e,t,s,i){const n=r[s];if(!n)return null;let o=this._brushCache.get(n);void 0===o&&(o=new n,this._brushCache.set(n,o)),o.drawMany(e,t,i)}registerRenderPass(e){const t=e.brushes.map((e=>(this._brushCache.has(e)||this._brushCache.set(e,new e),this._brushCache.get(e))));return new m(t,e)}setHighlightOptions(e){this.effects.highlight.setHighlightOptions(e)}blitTexture(e,t,s,r=1){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(x.ONE,x.ONE_MINUS_SRC_ALPHA,x.ONE,x.ONE_MINUS_SRC_ALPHA),e.setColorMask(!0,!0,!0,!0),this._blitRenderer.render(e,t,s,r)}getPostProcessingEffects(e){return this._effectsManager.getPostProcessingEffects(e)}_getOutputFBO(){return null!=this._renderTarget?this._renderTarget:this._fbos.output}_applyEffects(e,t){const{context:s}=e,r=this._effectsManager.getPostProcessingEffects(t);for(const{postProcessingEffect:i,effect:n}of r)s.bindFramebuffer(this._fbos.blend),i.draw(e,this._fbos.blend,n)}}function j(t,s,r,i){return t!==o.HIGHLIGHT&&(1!==i||e(s)&&"normal"!==s||e(r)&&r.length>0)}export{I as default};
|
|
5
|
+
import{isSome as e,isNone as t,disposeMaybe as s}from"../../../../core/maybe.js";import{brushes as r}from"../brushes.js";import i from"../vectorTiles/shaders/VTLMaterialManager.js";import{BitBlitRenderer as n}from"./BitBlitRenderer.js";import{WGLDrawPhase as o,WGLGeometryType as a,WGLSymbologyType as h}from"./enums.js";import l from"./MaterialManager.js";import f from"./TextureManager.js";import{TextureUploadManager as c}from"./TextureUploadManager.js";import{WorldExtentClipRenderer as _}from"./WorldExtentClipRenderer.js";import{AnimationEffect as d}from"./effects/AnimationEffect.js";import{BlendEffect as E}from"./effects/BlendEffect.js";import{FeatureEffect as b}from"./effects/FeatureEffect.js";import u from"./effects/HighlightEffect.js";import{HittestEffect as p}from"./effects/HittestEffect.js";import{HittestEffectVTL as g}from"./effects/HittestEffectVTL.js";import{EffectManager as T}from"./effects/post-processing/EffectManager.js";import m from"./painter/RenderPass.js";import{TextureType as C,PixelFormat as M,PixelType as R,TextureSamplingMode as F,TextureWrapMode as w,TargetType as B,DepthStencilTargetType as S,RenderbufferFormat as O,BlendFactor as x,CompareFunction as P}from"../../../webgl/enums.js";import{FramebufferObject as L}from"../../../webgl/FramebufferObject.js";import{Renderbuffer as N}from"../../../webgl/Renderbuffer.js";function D(e,t){switch(e){case a.LINE:return r.line;case a.TEXT:return r.text;case a.LABEL:return r.label;case a.FILL:return t===h.DOT_DENSITY?r.dotDensity:r.fill;case a.MARKER:switch(t){case h.HEATMAP:return r.heatmap;case h.PIE_CHART:return r.pieChart;default:return r.marker}}}class I{constructor(e,t,s){this.context=e,this._blitRenderer=new n,this._worldExtentClipRenderer=new _,this._isClippedToWorldExtent=!1,this._brushCache=new Map,this._vtlMaterialManager=new i,this._blendEffect=new E,this._fboPool=[],this.effects={highlight:new u,hittest:new p,hittestVTL:new g,integrate:new d,insideEffect:new b("inside"),outsideEffect:new b("outside")},this.materialManager=new l(e),this.textureManager=new f(t,s),this.textureUploadManager=new c(e,t),this._effectsManager=new T}get vectorTilesMaterialManager(){return this._vtlMaterialManager}getRenderTarget(){return this._renderTarget}setRenderTarget(e){this._renderTarget=e}getFbos(e,t){if(e!==this._lastWidth||t!==this._lastHeight){if(this._lastWidth=e,this._lastHeight=t,this._fbos){for(const s in this._fbos)this._fbos[s].resize(e,t);return this._fbos}const s={target:C.TEXTURE_2D,pixelFormat:M.RGBA,dataType:R.UNSIGNED_BYTE,samplingMode:F.NEAREST,wrapMode:w.CLAMP_TO_EDGE,width:e,height:t},r={colorTarget:B.TEXTURE,depthStencilTarget:S.DEPTH_STENCIL_RENDER_BUFFER},i=new N(this.context,{width:e,height:t,internalFormat:O.DEPTH_STENCIL});this._stencilBuf=i,this._fbos={output:new L(this.context,r,s,i),blend:new L(this.context,r,s,i),effect0:new L(this.context,r,s,i)}}return this._fbos}acquireFbo(e,t){let s;s=this._fboPool.length>0?this._fboPool.pop():new L(this.context,{colorTarget:B.TEXTURE,depthStencilTarget:S.DEPTH_STENCIL_RENDER_BUFFER},{target:C.TEXTURE_2D,pixelFormat:M.RGBA,dataType:R.UNSIGNED_BYTE,samplingMode:F.NEAREST,wrapMode:w.CLAMP_TO_EDGE,width:e,height:t},this._stencilBuf);const r=s.descriptor;return r.width===e&&r.height===t||s.resize(e,t),s}releaseFbo(e){this._fboPool.push(e)}getSharedStencilBuffer(){return this._stencilBuf}beforeRenderLayers(t,s=null){const{width:r,height:i}=t.getViewport();this._prevFBO=t.getBoundFramebufferObject();const n=this.getFbos(r,i);if(t.bindFramebuffer(n.output),t.setColorMask(!0,!0,!0,!0),e(s)){const{r:e,g:r,b:i,a:n}=s.color;t.setClearColor(n*e/255,n*r/255,n*i/255,n)}else t.setClearColor(0,0,0,0);t.setDepthWriteEnabled(!0),t.setClearDepth(1),t.clear(t.gl.COLOR_BUFFER_BIT|t.gl.DEPTH_BUFFER_BIT),t.setDepthWriteEnabled(!1)}beforeRenderLayer(e,t,s){const{context:r,blendMode:i,effects:n,requireFBO:o,drawPhase:a}=e;if(o||j(a,i,n,s))r.bindFramebuffer(this._fbos.blend),r.setColorMask(!0,!0,!0,!0),r.setClearColor(0,0,0,0),r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(r.gl.COLOR_BUFFER_BIT|r.gl.DEPTH_BUFFER_BIT),r.setDepthWriteEnabled(!1);else{const e=this._getOutputFBO();r.bindFramebuffer(e)}r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setClearStencil(t),r.setStencilWriteMask(255),r.clear(r.gl.STENCIL_BUFFER_BIT)}compositeLayer(s,r){const{context:i,blendMode:n,effects:a,requireFBO:h,drawPhase:l}=s;if(h||j(l,n,a,r)){e(a)&&a.length>0&&l===o.MAP&&this._applyEffects(s,a);const h=this._getOutputFBO();i.bindFramebuffer(h),i.setStencilTestEnabled(!1),i.setStencilWriteMask(0),i.setBlendingEnabled(!0),i.setBlendFunctionSeparate(x.ONE,x.ONE_MINUS_SRC_ALPHA,x.ONE,x.ONE_MINUS_SRC_ALPHA),i.setColorMask(!0,!0,!0,!0);const f=t(n)||l===o.HIGHLIGHT?"normal":n;this._blendEffect.draw(s,this._fbos.blend.colorTexture,F.NEAREST,f,r)}}renderLayers(e){if(e.bindFramebuffer(this._prevFBO),!this._fbos)return;const t=this._getOutputFBO();e.setDepthTestEnabled(!1),e.setStencilWriteMask(0),this._isClippedToWorldExtent?(e.setStencilTestEnabled(!0),e.setStencilFunction(P.EQUAL,1,255)):e.setStencilTestEnabled(!1),this.blitTexture(e,t.colorTexture,F.NEAREST)}prepareDisplay(t,s,r){const{context:i}=t;if(i.bindFramebuffer(this._prevFBO),i.setColorMask(!0,!0,!0,!0),e(s)){const{r:e,g:t,b:r,a:n}=s.color;i.setClearColor(n*e/255,n*t/255,n*r/255,n)}else i.setClearColor(0,0,0,0);i.setStencilWriteMask(255),i.setClearStencil(0),i.clear(i.gl.COLOR_BUFFER_BIT|i.gl.STENCIL_BUFFER_BIT),this._isClippedToWorldExtent=this._worldExtentClipRenderer.render(t,r)}dispose(){if(this.materialManager.dispose(),this.textureManager.dispose(),this._blitRenderer=s(this._blitRenderer),this._worldExtentClipRenderer=s(this._worldExtentClipRenderer),this._brushCache&&(this._brushCache.forEach((e=>e.dispose())),this._brushCache.clear(),this._brushCache=null),this._fbos)for(const e in this._fbos)this._fbos[e]&&this._fbos[e].dispose();for(const e of this._fboPool)e.dispose();if(this._fboPool.length=0,this.effects)for(const e in this.effects)this.effects[e]&&this.effects[e].dispose();this._effectsManager.dispose(),this._vtlMaterialManager=s(this._vtlMaterialManager),this._prevFBO=null}getBrush(e,t){const s=D(e,t);let r=this._brushCache.get(s);return void 0===r&&(r=new s,this._brushCache.set(s,r)),this._brushCache.get(s)}renderObject(e,t,s,i){const n=r[s];if(!n)return null;let o=this._brushCache.get(n);void 0===o&&(o=new n,this._brushCache.set(n,o)),o.prepareState(e,i),o.draw(e,t,i)}renderObjects(e,t,s,i){const n=r[s];if(!n)return null;let o=this._brushCache.get(n);void 0===o&&(o=new n,this._brushCache.set(n,o)),o.drawMany(e,t,i)}registerRenderPass(e){const t=e.brushes.map((e=>(this._brushCache.has(e)||this._brushCache.set(e,new e),this._brushCache.get(e))));return new m(t,e)}setHighlightOptions(e){this.effects.highlight.setHighlightOptions(e)}blitTexture(e,t,s,r=1){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(x.ONE,x.ONE_MINUS_SRC_ALPHA,x.ONE,x.ONE_MINUS_SRC_ALPHA),e.setColorMask(!0,!0,!0,!0),this._blitRenderer.render(e,t,s,r)}getPostProcessingEffects(e){return this._effectsManager.getPostProcessingEffects(e)}_getOutputFBO(){return null!=this._renderTarget?this._renderTarget:this._fbos.output}_applyEffects(e,t){const{context:s}=e,r=this._effectsManager.getPostProcessingEffects(t);for(const{postProcessingEffect:i,effect:n}of r)s.bindFramebuffer(this._fbos.blend),i.draw(e,this._fbos.blend,n)}}function j(t,s,r,i){return t!==o.HIGHLIGHT&&(1!==i||e(s)&&"normal"!==s||e(r)&&r.length>0)}export{I as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isSome as e}from"../../../../core/maybe.js";import{createResolver as t,throwIfAborted as s,onAbortOrThrow as o}from"../../../../core/promiseUtils.js";import{TEXTURE_UPLOAD_MANAGER_BUDGET as r,TEXTURE_UPLOAD_MANAGER_CHUNK_SIZE as u}from"./definitions.js";import{ContextType as n}from"../../../webgl/context-util.js";class i{constructor(e){this._queue=[],this._context=e}enqueueTextureUpdate(e,r){const i=t(),h=e,
|
|
5
|
+
import{isSome as e}from"../../../../core/maybe.js";import{createResolver as t,throwIfAborted as s,onAbortOrThrow as o}from"../../../../core/promiseUtils.js";import{TEXTURE_UPLOAD_MANAGER_BUDGET as r,TEXTURE_UPLOAD_MANAGER_CHUNK_SIZE as u}from"./definitions.js";import{ContextType as n}from"../../../webgl/context-util.js";class i{constructor(e,t){this._queue=[],this._context=e,this._refreshable=t}enqueueTextureUpdate(e,r){const i=t(),h=e,a=u,c=Math.ceil(h.height/a);if(s(r),this._context.type===n.WEBGL1)this._queue.push({type:"no-chunk",request:e,resolver:i,options:r});else for(let t=0;t<c;t++){const s=t*a,o=t===c-1,u=o?h.height-a*t:a;this._queue.push({type:"chunk",request:e,resolver:i,chunk:t,chunkOffset:s,destHeight:u,chunkIsLast:o,options:r})}return o(r,(e=>i.reject(e))),i.promise}upload(){let t=0;for(;this._queue.length;){const s=performance.now(),o=this._queue.shift();if(o){if(e(o.options.signal)&&o.options.signal.aborted)continue;switch(o.type){case"chunk":this._uploadChunk(o);break;case"no-chunk":this._uploadNoChunk(o)}const u=performance.now()-s;if(t+=u,t+u>=r)break}}this._queue.length&&this._refreshable.requestRender()}_uploadChunk(t){const{request:s,resolver:o,chunkOffset:r,chunkIsLast:u,destHeight:n}=t,{data:i,texture:h,width:a}=s;e(i)&&(h.updateData(0,0,r,a,n,i,r),u&&o.resolve())}_uploadNoChunk(e){const{request:t,resolver:s}=e,{data:o,texture:r}=t;r.setData(o),s.resolve()}}export{i as TextureUploadManager};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{
|
|
5
|
+
import{s as t,m as s}from"../../../../chunks/mat3.js";import{DisplayObject as i}from"../DisplayObject.js";import e from"../../tiling/TileKey.js";class r extends i{constructor(t,s,i,r,h,o,n=h,a=o){super(),this.triangleCountReportedInDebug=0,this.triangleCount=0,this.texture=null,this.key=new e(t),this.resolution=s,this.x=i,this.y=r,this.width=h,this.height=o,this.rangeX=n,this.rangeY=a}destroy(){this.texture&&(this.texture.dispose(),this.texture=null)}setTransform(i){const e=this.resolution/(i.resolution*i.pixelRatio),r=this.transforms.tileMat3,[h,o]=i.toScreenNoRotation([0,0],[this.x,this.y]),n=this.width/this.rangeX*e,a=this.height/this.rangeY*e;t(r,n,0,0,0,a,0,h,o,1),s(this.transforms.dvs,i.displayViewMat3,r)}}export{r as TiledDisplayObject};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{a as s,m as t}from"../../../../chunks/mat2d.js";import{
|
|
5
|
+
import{a as s,m as t}from"../../../../chunks/mat2d.js";import{s as r,m as e}from"../../../../chunks/mat3.js";import{c as a}from"../../../../chunks/mat3f32.js";import{t as o}from"../../../../chunks/vec2.js";import{c as i}from"../../../../chunks/vec2f32.js";import{TILE_SIZE as n}from"./definitions.js";import{TiledDisplayObject as h}from"./TiledDisplayObject.js";class m{acquire(s){return{refCount:1,version:-1,labelMat2d:a(),tileMat3:a(),dvs:a()}}release(s){}}class c extends h{constructor(s,t,r,e){super(s,t,r,e,n,n)}destroy(){super.destroy(),this._transforms&&c.TransformCache.release(this.key.hash)}setTransform(a){const n=this.resolution/(a.resolution*a.pixelRatio),h=this.transforms.tileMat3,[m,c]=a.toScreenNoRotation([0,0],[this.x,this.y]),f=this.width/this.rangeX*n,l=this.height/this.rangeY*n;r(h,f,0,0,0,l,0,m,c,1),e(this.transforms.dvs,a.displayViewMat3,h);const u=this.transforms.labelMat2d,d=a.getScreenTransform(u,this.resolution),p=i();o(p,[this.x,this.y],d),s(u,p),t(u,a.viewMat2d,u)}_createTransforms(){return c.TransformCache.acquire(this.key.hash)}}c.TransformCache=new m;export{c as WGLTile};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.25/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{disposeMaybe as t}from"../../../../core/maybe.js";import{t as s}from"../../../../chunks/common.js";import{j as i,
|
|
5
|
+
import{disposeMaybe as t}from"../../../../core/maybe.js";import{t as s}from"../../../../chunks/common.js";import{j as i,d as r,r as e,h as o}from"../../../../chunks/mat3.js";import{c as a}from"../../../../chunks/mat3f32.js";import{f as n}from"../../../../chunks/vec2f64.js";import{s as h}from"../../../../chunks/vec3.js";import{c as m}from"../../../../chunks/vec3f64.js";import c from"./VertexStream.js";import{stencil as d}from"./shaders/StencilPrograms.js";import{StencilOperation as p,CompareFunction as _}from"../../../webgl/enums.js";import{createProgram as l}from"../../../webgl/ProgramTemplate.js";const u=n(-.5,-.5);class f{constructor(){this._centerNdc=m(),this._pxToNdc=m(),this._worldDimensionsPx=m(),this._mat3=a(),this._initialized=!1}dispose(){this._program=t(this._program),this._quad=t(this._quad)}render(t,s){const{context:i}=t;return!!this._updateGeometry(t,s)&&(this._initialized||this._initialize(i),i.setDepthWriteEnabled(!1),i.setDepthTestEnabled(!1),i.setColorMask(!1,!1,!1,!1),i.setBlendingEnabled(!1),i.setStencilOp(p.KEEP,p.KEEP,p.REPLACE),i.setStencilFunction(_.ALWAYS,1,255),i.setStencilTestEnabled(!0),i.useProgram(this._program),this._program.setUniformMatrix3fv("u_worldExtent",this._mat3),this._quad.draw(),this._quad.unbind(),!0)}_initialize(t){if(this._initialized)return;const s=l(t,d);s&&(this._program=s,this._quad=new c(t,[0,0,1,0,0,1,1,1]),this._initialized=!0)}_updateGeometry(t,a){const{state:n,pixelRatio:m}=t,{size:c,rotation:d}=n,p=Math.round(c[0]*m),_=Math.round(c[1]*m);if(!n.spatialReference.isWrappable)return!1;const l=s(d),f=Math.abs(Math.cos(l)),b=Math.abs(Math.sin(l)),g=Math.round(p*f+_*b),j=Math.round(n.worldScreenWidth);if(g<=j)return!1;const x=p*b+_*f,E=j*m,M=(a.left-a.right)*m/p,w=(a.bottom-a.top)*m/_;h(this._worldDimensionsPx,E,x,1),h(this._pxToNdc,2/p,-2/_,1),h(this._centerNdc,M,w,1);const P=this._mat3;return i(P,this._centerNdc),r(P,P,this._pxToNdc),0!==d&&e(P,P,l),r(P,P,this._worldDimensionsPx),o(P,P,u),!0}}export{f as WorldExtentClipRenderer};
|