@arcgis/core 5.0.0-next.83 → 5.0.0-next.84
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/WebDocument2D.d.ts +3 -2
- package/WebDocument2D.js +1 -1
- package/WebScene.d.ts +3 -2
- package/WebScene.js +1 -1
- package/applications/SceneViewer/layerUtils.d.ts +3 -2
- package/applications/SceneViewer/layerUtils.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/0057d3a9522188090536.js +1 -0
- package/assets/esri/core/workers/chunks/008a555ce169640e2a35.js +2 -0
- package/assets/esri/core/workers/chunks/00e135dc1b4cb024973d.js +1 -0
- package/assets/esri/core/workers/chunks/03da31c7635d077e8d99.js +1 -0
- package/assets/esri/core/workers/chunks/04fddd41a8e6a4c1bc57.js +1 -0
- package/assets/esri/core/workers/chunks/05a75878baca3a04fee9.js +1 -0
- package/assets/esri/core/workers/chunks/05aa22778a85624cfa55.js +1 -0
- package/assets/esri/core/workers/chunks/06493efc57cbfbda050a.js +1 -0
- package/assets/esri/core/workers/chunks/0674ae3741bc99325879.js +1 -0
- package/assets/esri/core/workers/chunks/07c5a9e8f48b3c806ac7.js +1 -0
- package/assets/esri/core/workers/chunks/0abb084b8a137f4fcdfc.js +1 -0
- package/assets/esri/core/workers/chunks/0b0545538ce355cace52.js +1 -0
- package/assets/esri/core/workers/chunks/0c13591347d51d684561.js +1 -0
- package/assets/esri/core/workers/chunks/0e7daf348c3e4681dd44.js +1 -0
- package/assets/esri/core/workers/chunks/10a5bf887132821beaf0.js +1 -0
- package/assets/esri/core/workers/chunks/10b32aff749d3459ddcd.js +1 -0
- package/assets/esri/core/workers/chunks/114aecdbd2bd92b24de2.js +1 -0
- package/assets/esri/core/workers/chunks/14f8215ab716c6d9d5f8.js +1 -0
- package/assets/esri/core/workers/chunks/156c73a948bde11f0d53.js +1 -0
- package/assets/esri/core/workers/chunks/165cf8031af160c99d70.js +1 -0
- package/assets/esri/core/workers/chunks/1779e6eabc299831fc9f.js +1 -0
- package/assets/esri/core/workers/chunks/181fab86394f1f912490.js +1 -0
- package/assets/esri/core/workers/chunks/185c97bc63ce546995ce.js +1 -0
- package/assets/esri/core/workers/chunks/18cdd268fc921ffd92e2.js +1 -0
- package/assets/esri/core/workers/chunks/1a13b472e0cf9f88e8de.js +1 -0
- package/assets/esri/core/workers/chunks/1a41c9127ca5a260d5ef.js +1 -0
- package/assets/esri/core/workers/chunks/1a62c456e791c82050fe.js +1 -0
- package/assets/esri/core/workers/chunks/1c05906d1b5b92441c9b.js +1 -0
- package/assets/esri/core/workers/chunks/1cf289446619645487b6.js +1 -0
- package/assets/esri/core/workers/chunks/1e318e5cf417c8f13bc7.js +1 -0
- package/assets/esri/core/workers/chunks/1eb6f210ae69c317e1f6.js +1 -0
- package/assets/esri/core/workers/chunks/1facc1b45345a095b9a7.js +1 -0
- package/assets/esri/core/workers/chunks/1fe1a131be1d5e1e23ed.js +1 -0
- package/assets/esri/core/workers/chunks/21ac84b5c7dedcfd747d.js +2 -0
- package/assets/esri/core/workers/chunks/22503abc06354741d28a.js +1 -0
- package/assets/esri/core/workers/chunks/22b1543b1a39db9acfc3.js +1 -0
- package/assets/esri/core/workers/chunks/249bc4abaa6482aaf288.js +1 -0
- package/assets/esri/core/workers/chunks/25a9ae17dc2ef44a4481.js +1 -0
- package/assets/esri/core/workers/chunks/25dead73dfc5a4c19285.js +1 -0
- package/assets/esri/core/workers/chunks/2767b69085c9f7a1e1af.js +1 -0
- package/assets/esri/core/workers/chunks/286a45e9aec0b2bf32ef.js +1 -0
- package/assets/esri/core/workers/chunks/289681e94e93dc1d3512.js +1 -0
- package/assets/esri/core/workers/chunks/2a1898c5b8d7757e39e3.js +1 -0
- package/assets/esri/core/workers/chunks/2a81f08de9d642485669.js +1 -0
- package/assets/esri/core/workers/chunks/2b2283f1ee4bfc1baa18.js +1 -0
- package/assets/esri/core/workers/chunks/2bb82ae3ada57c066fdf.js +1 -0
- package/assets/esri/core/workers/chunks/2bdd28b4b5ef2c1e111f.js +1 -0
- package/assets/esri/core/workers/chunks/2c8b4d54ecf6ea2fecb1.js +1 -0
- package/assets/esri/core/workers/chunks/2ce845c990bb4d701362.js +1 -0
- package/assets/esri/core/workers/chunks/2f20cca2c5c058afc9af.js +1 -0
- package/assets/esri/core/workers/chunks/304ea784c28dc78e5e65.js +1 -0
- package/assets/esri/core/workers/chunks/3087910d19959fdc546b.js +1 -0
- package/assets/esri/core/workers/chunks/30cfa41017c2d434a89f.js +1 -0
- package/assets/esri/core/workers/chunks/33257fbd724ae188e259.js +1 -0
- package/assets/esri/core/workers/chunks/338768f94cc49559b209.js +1 -0
- package/assets/esri/core/workers/chunks/34073c8e4fc825f060f1.js +1 -0
- package/assets/esri/core/workers/chunks/34503f9b26c81e631174.js +1 -0
- package/assets/esri/core/workers/chunks/348560f083350ad0bf2e.js +1 -0
- package/assets/esri/core/workers/chunks/3606fc5537c4d11b9554.js +1 -0
- package/assets/esri/core/workers/chunks/3628e82707e7720c9e4c.js +1 -0
- package/assets/esri/core/workers/chunks/36b053decb87c9d32cd2.js +1 -0
- package/assets/esri/core/workers/chunks/37f5687dc1147b0a7bc1.js +1 -0
- package/assets/esri/core/workers/chunks/380a9b6d75992d6311c3.js +1 -0
- package/assets/esri/core/workers/chunks/3849dc35941e569fae5f.js +1 -0
- package/assets/esri/core/workers/chunks/388bd41c305d5a11f739.js +1 -0
- package/assets/esri/core/workers/chunks/389e2263a540f819d842.js +1 -0
- package/assets/esri/core/workers/chunks/38ca539f33e2d977771c.js +1 -0
- package/assets/esri/core/workers/chunks/3909217130048b5feeae.js +301 -0
- package/assets/esri/core/workers/chunks/39e1b04444389d2987be.js +1 -0
- package/assets/esri/core/workers/chunks/3ad7ec46adecf00ae1c2.js +1 -0
- package/assets/esri/core/workers/chunks/3aeb3e8220e7d9869652.js +1 -0
- package/assets/esri/core/workers/chunks/3afc221b3a9e209cceea.js +1 -0
- package/assets/esri/core/workers/chunks/3b67aa46a60e35469bf8.js +1 -0
- package/assets/esri/core/workers/chunks/3b6fc34b6d92eef030e5.js +1 -0
- package/assets/esri/core/workers/chunks/3bb28b59614fc36b2c50.js +1 -0
- package/assets/esri/core/workers/chunks/3eeaec74871e20b433d2.js +1 -0
- package/assets/esri/core/workers/chunks/418a778a4cbbb9dabecd.js +1 -0
- package/assets/esri/core/workers/chunks/42444285fd79a8d8e564.js +1 -0
- package/assets/esri/core/workers/chunks/428ca5900d882d7be499.js +1 -0
- package/assets/esri/core/workers/chunks/436c15ac34a205a13a37.js +1 -0
- package/assets/esri/core/workers/chunks/43e9eaedf65921b58eb2.js +1 -0
- package/assets/esri/core/workers/chunks/4487cf21fa9f0466450d.js +1 -0
- package/assets/esri/core/workers/chunks/45dbdf2ff95f7be1eb88.js +1 -0
- package/assets/esri/core/workers/chunks/4756f0dbbda129c760b1.js +1 -0
- package/assets/esri/core/workers/chunks/4a0760571ce536fbd8c8.js +1 -0
- package/assets/esri/core/workers/chunks/4b09d92c51c4619b548a.js +1 -0
- package/assets/esri/core/workers/chunks/4b24f72b56edc28bb15e.js +1 -0
- package/assets/esri/core/workers/chunks/4bb0c3b009493ea44632.js +1 -0
- package/assets/esri/core/workers/chunks/4c0e0beb1534d81ff648.js +1 -0
- package/assets/esri/core/workers/chunks/4c54cb80c4dc9bbbd395.js +1 -0
- package/assets/esri/core/workers/chunks/4caec60ac0a5851730c6.js +1 -0
- package/assets/esri/core/workers/chunks/4db259316b193fcc4541.js +1 -0
- package/assets/esri/core/workers/chunks/4f132d758f8b4795c43f.js +1 -0
- package/assets/esri/core/workers/chunks/4f4bdf9f5323fa702e6c.js +1 -0
- package/assets/esri/core/workers/chunks/4f53071b5eb23d4478c4.js +1 -0
- package/assets/esri/core/workers/chunks/4f8895eb57ec6ab4b318.js +1 -0
- package/assets/esri/core/workers/chunks/4ff3c03cfbec928c0720.js +1 -0
- package/assets/esri/core/workers/chunks/504ab6bf7bfbfd4c4211.js +1 -0
- package/assets/esri/core/workers/chunks/5119e3159617b8e1ea13.js +1 -0
- package/assets/esri/core/workers/chunks/52684c2abc9e8ce793cf.js +1 -0
- package/assets/esri/core/workers/chunks/5298f99c197c8607a690.js +1 -0
- package/assets/esri/core/workers/chunks/532935f420ed5f13c011.js +1 -0
- package/assets/esri/core/workers/chunks/5348e4dc55428de9bba7.js +1 -0
- package/assets/esri/core/workers/chunks/534ed6574e4a1613ba05.js +2 -0
- package/assets/esri/core/workers/chunks/53a1c6e008287d1f12f0.js +1 -0
- package/assets/esri/core/workers/chunks/53d0b870c080236d82d1.js +1 -0
- package/assets/esri/core/workers/chunks/55bf39611ae6028131a3.js +1 -0
- package/assets/esri/core/workers/chunks/5659e221e8805bb81210.js +1 -0
- package/assets/esri/core/workers/chunks/568fc92333a9ab1c06e6.js +1 -0
- package/assets/esri/core/workers/chunks/56bbd86b804cb2a59031.js +1 -0
- package/assets/esri/core/workers/chunks/57a749804da9a2b1fae9.js +1 -0
- package/assets/esri/core/workers/chunks/59d3f3fbae775fd7686e.js +1 -0
- package/assets/esri/core/workers/chunks/59e7a0215791b2b51180.js +1 -0
- package/assets/esri/core/workers/chunks/5a706eecd8a988fae6b7.js +1 -0
- package/assets/esri/core/workers/chunks/5aee84e827e6fcc9c4c4.js +2 -0
- package/assets/esri/core/workers/chunks/5b0ca8d2154ef59da600.js +1 -0
- package/assets/esri/core/workers/chunks/5b278b9980752ef495a2.js +1 -0
- package/assets/esri/core/workers/chunks/5b3bb636e3bec625e515.js +1 -0
- package/assets/esri/core/workers/chunks/5ba2bbbb42ef1920579d.js +1 -0
- package/assets/esri/core/workers/chunks/5cc731f161012b63c77a.js +1 -0
- package/assets/esri/core/workers/chunks/5e3dd05f1ecfdb21350e.js +1 -0
- package/assets/esri/core/workers/chunks/5fa8fe6353dbdda0b06a.js +1 -0
- package/assets/esri/core/workers/chunks/5fc6cada83bf8462d54c.js +1 -0
- package/assets/esri/core/workers/chunks/6107b58457a70c8de9da.js +1 -0
- package/assets/esri/core/workers/chunks/63e930e76a181d54786d.js +1 -0
- package/assets/esri/core/workers/chunks/63ee7aa1b169dbec1e37.js +1 -0
- package/assets/esri/core/workers/chunks/6440d78ed2af2e7265aa.js +1 -0
- package/assets/esri/core/workers/chunks/645e086291b04bc036d7.js +1 -0
- package/assets/esri/core/workers/chunks/654eef3ad30f34c42e12.js +1 -0
- package/assets/esri/core/workers/chunks/6610d23d8539f06e64ca.js +1 -0
- package/assets/esri/core/workers/chunks/681d9a923c0d1ace86e8.js +1 -0
- package/assets/esri/core/workers/chunks/68abe4e70ea48e978642.js +1 -0
- package/assets/esri/core/workers/chunks/6a083fde0e207625fd0b.js +1 -0
- package/assets/esri/core/workers/chunks/6bc7bacf01328ef10ff1.js +1 -0
- package/assets/esri/core/workers/chunks/6bcf5d6792e4f09cbc7b.js +1 -0
- package/assets/esri/core/workers/chunks/6d7eb784988ee9a33473.js +1 -0
- package/assets/esri/core/workers/chunks/6de843d1809cba61ded3.js +1 -0
- package/assets/esri/core/workers/chunks/6e04303500a9fbc3f14a.js +1 -0
- package/assets/esri/core/workers/chunks/6edcae8ec128c2e86a05.js +1 -0
- package/assets/esri/core/workers/chunks/6eeee6e278b5f516d1d2.js +1 -0
- package/assets/esri/core/workers/chunks/701775be0dad640a72b4.js +1 -0
- package/assets/esri/core/workers/chunks/70df4331ed29d823bf38.js +1 -0
- package/assets/esri/core/workers/chunks/7130b09300032d3a5925.js +1 -0
- package/assets/esri/core/workers/chunks/72f0e2e5dcddafa2a642.js +1 -0
- package/assets/esri/core/workers/chunks/73c87eb9bd8f0f848481.js +1 -0
- package/assets/esri/core/workers/chunks/746190bb70aa78ba0bfc.js +1039 -0
- package/assets/esri/core/workers/chunks/75d7290c73bb59f2c856.js +1 -0
- package/assets/esri/core/workers/chunks/76d6843d56bff0d4c45e.js +1 -0
- package/assets/esri/core/workers/chunks/780a1eba9a7f1ca690ce.js +1 -0
- package/assets/esri/core/workers/chunks/7815dbf49ef5a06705f3.js +1 -0
- package/assets/esri/core/workers/chunks/7892daeed58778453639.js +1 -0
- package/assets/esri/core/workers/chunks/7990c828447bc3a29965.js +1 -0
- package/assets/esri/core/workers/chunks/799829d0ae17c146196b.js +1 -0
- package/assets/esri/core/workers/chunks/7a31717dafbd820bc2bf.js +1 -0
- package/assets/esri/core/workers/chunks/7b2f848947b296c7c785.js +1 -0
- package/assets/esri/core/workers/chunks/7d76a2245ac973efe1ed.js +1 -0
- package/assets/esri/core/workers/chunks/7f76566d9b3801742387.js +1 -0
- package/assets/esri/core/workers/chunks/8008bca4ef04c9424579.js +1 -0
- package/assets/esri/core/workers/chunks/815a25a5a8dba7921f8b.js +1 -0
- package/assets/esri/core/workers/chunks/8184c34b2c4969f14f3d.js +1 -0
- package/assets/esri/core/workers/chunks/81e395a93c67749c6487.js +1 -0
- package/assets/esri/core/workers/chunks/8351012ceb466f01b8fd.js +1 -0
- package/assets/esri/core/workers/chunks/83ddc0f6bfe68756f26f.js +1 -0
- package/assets/esri/core/workers/chunks/841058de8bc6e328fd68.js +1 -0
- package/assets/esri/core/workers/chunks/84a4390b1c277c415d44.js +1 -0
- package/assets/esri/core/workers/chunks/854adab6a06af861c104.js +1 -0
- package/assets/esri/core/workers/chunks/8765fe036d9664c25b1d.js +37 -0
- package/assets/esri/core/workers/chunks/88c3b60b403e2454b56e.js +1 -0
- package/assets/esri/core/workers/chunks/8a0a13f398ab488dbbe9.js +1 -0
- package/assets/esri/core/workers/chunks/8cb13b3776f07536c79f.js +1 -0
- package/assets/esri/core/workers/chunks/{51093e552e31344cefa5.js → 8d9ec752136cbc5cb29a.js} +1 -1
- package/assets/esri/core/workers/chunks/8deae3a426eceae73186.js +1 -0
- package/assets/esri/core/workers/chunks/8f4ca0dfd9635eb10e02.js +1 -0
- package/assets/esri/core/workers/chunks/8faa0122d0a6e2e39153.js +1 -0
- package/assets/esri/core/workers/chunks/90a53bfe95ed687c28c1.js +2 -0
- package/assets/esri/core/workers/chunks/911912b0ef7ffed875be.js +1 -0
- package/assets/esri/core/workers/chunks/913c417ad278ce1caaf9.js +1 -0
- package/assets/esri/core/workers/chunks/9184089e72c24d91d23b.js +1 -0
- package/assets/esri/core/workers/chunks/91e307ca0d11804a7a1d.js +2 -0
- package/assets/esri/core/workers/chunks/9279a5361bf6a54784ef.js +1 -0
- package/assets/esri/core/workers/chunks/92a42bbb8b9b39f3211c.js +1 -0
- package/assets/esri/core/workers/chunks/934ce3f004c54d542d2c.js +1 -0
- package/assets/esri/core/workers/chunks/93caf6fb8afab3dd8a46.js +1 -0
- package/assets/esri/core/workers/chunks/97148a9966f55e69421e.js +1 -0
- package/assets/esri/core/workers/chunks/9748b8c35d56a5ee9c64.js +1 -0
- package/assets/esri/core/workers/chunks/97ad3eb25ad003c16148.js +1 -0
- package/assets/esri/core/workers/chunks/982e709d2cef971ecd82.js +1 -0
- package/assets/esri/core/workers/chunks/98e04c2382fa5ba382fc.js +1 -0
- package/assets/esri/core/workers/chunks/9919b3c345785e910c38.js +1 -0
- package/assets/esri/core/workers/chunks/9c6d34bb666f630d511f.js +1 -0
- package/assets/esri/core/workers/chunks/9cd7205bbc711914d74b.js +1 -0
- package/assets/esri/core/workers/chunks/9d17524f5f935b7b60bf.js +1 -0
- package/assets/esri/core/workers/chunks/9de8149ae0a0726a4ab2.js +1 -0
- package/assets/esri/core/workers/chunks/9fac9eda0a41f7f4c2c6.js +1 -0
- package/assets/esri/core/workers/chunks/9ff1e650ce0912afa780.js +1 -0
- package/assets/esri/core/workers/chunks/a0d52a819302ed6f401e.js +1 -0
- package/assets/esri/core/workers/chunks/a1908b3fa61f02425a94.js +1 -0
- package/assets/esri/core/workers/chunks/a2046f85b9964693f053.js +1 -0
- package/assets/esri/core/workers/chunks/a24627400b3b9fe8431d.js +1 -0
- package/assets/esri/core/workers/chunks/a27c74fd2029583de933.js +1 -0
- package/assets/esri/core/workers/chunks/a2c0c1bb5e775abefc90.js +1 -0
- package/assets/esri/core/workers/chunks/a3184fb1ac7ce9af1a7e.js +1 -0
- package/assets/esri/core/workers/chunks/a4ee92867ad5cde25aed.js +1 -0
- package/assets/esri/core/workers/chunks/a56a5e00964d4cd59a66.js +1 -0
- package/assets/esri/core/workers/chunks/a774b4fc7df801503bea.js +1 -0
- package/assets/esri/core/workers/chunks/a9521578c0e21aaddbc7.js +1 -0
- package/assets/esri/core/workers/chunks/a9b30c3b604e314f1706.js +1 -0
- package/assets/esri/core/workers/chunks/aa0c648bd37787f62b1f.js +1 -0
- package/assets/esri/core/workers/chunks/aa1b8c06bdf8453a02d7.js +1 -0
- package/assets/esri/core/workers/chunks/aaac4eee709cd6d24910.js +1 -0
- package/assets/esri/core/workers/chunks/aafa33f661462f5afd2b.js +1 -0
- package/assets/esri/core/workers/chunks/ab3e457c82fa9bd0203f.js +1 -0
- package/assets/esri/core/workers/chunks/ac0949ea3d2cf3eb7383.js +1 -0
- package/assets/esri/core/workers/chunks/ac5da65af5da254acb16.js +1 -0
- package/assets/esri/core/workers/chunks/ae5798399607cb043ed2.js +1 -0
- package/assets/esri/core/workers/chunks/af3d4eba6fe24db3ceba.js +1 -0
- package/assets/esri/core/workers/chunks/b1015e1f25b60c08d2cf.js +1 -0
- package/assets/esri/core/workers/chunks/b1085fa91724e2d3b24f.js +1 -0
- package/assets/esri/core/workers/chunks/b12dc8fd3f2a2ff8073d.js +1 -0
- package/assets/esri/core/workers/chunks/b1c6a1759febad66927f.js +1 -0
- package/assets/esri/core/workers/chunks/b482a24c9567d8926897.js +1 -0
- package/assets/esri/core/workers/chunks/b48b0f512a1cd7226bdc.js +1 -0
- package/assets/esri/core/workers/chunks/b586d7e608e8ba8b88fe.js +1 -0
- package/assets/esri/core/workers/chunks/b599c6d4fa3189ed1762.js +1 -0
- package/assets/esri/core/workers/chunks/b6acf67316107902e31d.js +1 -0
- package/assets/esri/core/workers/chunks/b7576a5195615c465ea7.js +1 -0
- package/assets/esri/core/workers/chunks/b7e40118b4d645e9f8e1.js +1 -0
- package/assets/esri/core/workers/chunks/b8005b1996f42dee8237.js +1 -0
- package/assets/esri/core/workers/chunks/b91a157fb5f729de6597.js +1 -0
- package/assets/esri/core/workers/chunks/b9226dd0342cfd30ece0.js +1 -0
- package/assets/esri/core/workers/chunks/b977b9f5f50ae8027443.js +1 -0
- package/assets/esri/core/workers/chunks/bab6dee8f4715d05d984.js +1 -0
- package/assets/esri/core/workers/chunks/bbb409e54db77bfabdee.js +1 -0
- package/assets/esri/core/workers/chunks/bc4f513ea3a8f344c8da.js +1 -0
- package/assets/esri/core/workers/chunks/be26f8175a76e7dc8f7a.js +1 -0
- package/assets/esri/core/workers/chunks/befedcb6d8d1ff88125f.js +1 -0
- package/assets/esri/core/workers/chunks/bf73352b3366de82abbe.js +1 -0
- package/assets/esri/core/workers/chunks/c0265669fb616f052b65.js +1 -0
- package/assets/esri/core/workers/chunks/c133e57f2201b9bc6cbc.js +1 -0
- package/assets/esri/core/workers/chunks/c16115cfbca879dd6717.js +1 -0
- package/assets/esri/core/workers/chunks/c2d7b32f0c8eb965fcf7.js +1 -0
- package/assets/esri/core/workers/chunks/c45a5bcf26659daf02a1.js +1 -0
- package/assets/esri/core/workers/chunks/c46a4681cbba638b58c1.js +1 -0
- package/assets/esri/core/workers/chunks/c477b0ce55211339c4cb.js +1 -0
- package/assets/esri/core/workers/chunks/c500b59cd7da54fe72ec.js +1 -0
- package/assets/esri/core/workers/chunks/c5c1b189b91e199e8b82.js +1 -0
- package/assets/esri/core/workers/chunks/c65a138c14a4c540cd3b.js +1 -0
- package/assets/esri/core/workers/chunks/c66a9477e1c30a5ca03f.js +1 -0
- package/assets/esri/core/workers/chunks/{d79d29b52a65fb6bf94d.js → c71fe727224da0aba6ca.js} +1 -1
- package/assets/esri/core/workers/chunks/c741f7bc5693ae7e5019.js +1 -0
- package/assets/esri/core/workers/chunks/c75a41a5c8c5bd40ae91.js +1 -0
- package/assets/esri/core/workers/chunks/c825ca22894bdb4d01ba.js +1 -0
- package/assets/esri/core/workers/chunks/c8f1075c45ecf9fef00f.js +1 -0
- package/assets/esri/core/workers/chunks/ca06811e636f1d96f3cb.js +1 -0
- package/assets/esri/core/workers/chunks/cb66a74448a6c0c20d5d.js +1 -0
- package/assets/esri/core/workers/chunks/cbab45550b06bcc38524.js +1 -0
- package/assets/esri/core/workers/chunks/cc2606b8e600eeaf4bc8.js +1 -0
- package/assets/esri/core/workers/chunks/cdf711afbaaf345101f0.js +1 -0
- package/assets/esri/core/workers/chunks/ce87a6e24e9c64d90da3.js +1 -0
- package/assets/esri/core/workers/chunks/ce9467dc1ff695d795e5.js +1 -0
- package/assets/esri/core/workers/chunks/d0c831a473642d1bd9d1.js +1 -0
- package/assets/esri/core/workers/chunks/d0d6f818851d9a2d7938.js +1 -0
- package/assets/esri/core/workers/chunks/d1dd1787b3bf27834a9e.js +1 -0
- package/assets/esri/core/workers/chunks/d28169816c768d55aa09.js +1 -0
- package/assets/esri/core/workers/chunks/d2d4bce67c711a404b73.js +1 -0
- package/assets/esri/core/workers/chunks/d31f62ecbb54bffc54f2.js +1 -0
- package/assets/esri/core/workers/chunks/d37f03714c9591fb2b06.js +1 -0
- package/assets/esri/core/workers/chunks/d3c69c9cb3d9c3f5c67a.js +1 -0
- package/assets/esri/core/workers/chunks/d436e1694f4b5bf05a90.js +1 -0
- package/assets/esri/core/workers/chunks/d4770dddfbfdc3845749.js +1 -0
- package/assets/esri/core/workers/chunks/d477def8bfd8482596d1.js +1 -0
- package/assets/esri/core/workers/chunks/d4c4dad52da5dcf4432c.js +1 -0
- package/assets/esri/core/workers/chunks/d4f4c0201d8b641709c0.js +1 -0
- package/assets/esri/core/workers/chunks/d525b3fa719a688d4899.js +1 -0
- package/assets/esri/core/workers/chunks/d6e11f05db698d14f21d.js +1 -0
- package/assets/esri/core/workers/chunks/d7c275717a2405b6ff87.js +1 -0
- package/assets/esri/core/workers/chunks/d8c8f54532714d4db2cd.js +1 -0
- package/assets/esri/core/workers/chunks/d9d2178d436597b1afaf.js +1 -0
- package/assets/esri/core/workers/chunks/da808dfb22c6de29e560.js +1 -0
- package/assets/esri/core/workers/chunks/db9a9712038df76e3eda.js +1 -0
- package/assets/esri/core/workers/chunks/dc57400b835724204909.js +2 -0
- package/assets/esri/core/workers/chunks/dd0e65b18c634b64582e.js +1 -0
- package/assets/esri/core/workers/chunks/dd30c1f5da0af72becd1.js +1 -0
- package/assets/esri/core/workers/chunks/de216922b36267ab4aa1.js +1 -0
- package/assets/esri/core/workers/chunks/de6b3f80070abdd61d0f.js +1 -0
- package/assets/esri/core/workers/chunks/dea2e8caaf6e53ec56f8.js +1 -0
- package/assets/esri/core/workers/chunks/ded589862c22ea12d47a.js +1 -0
- package/assets/esri/core/workers/chunks/dedd9d47ccc019ffc484.js +1 -0
- package/assets/esri/core/workers/chunks/df40be5a050b8d20617a.js +1 -0
- package/assets/esri/core/workers/chunks/dfef6e3d7bbf099de498.js +1 -0
- package/assets/esri/core/workers/chunks/e1b677a135e164a29605.js +1 -0
- package/assets/esri/core/workers/chunks/e201bfe3158c025edc99.js +1 -0
- package/assets/esri/core/workers/chunks/e337b8d69d89f597cb58.js +1 -0
- package/assets/esri/core/workers/chunks/e370d213c307ad8bfaec.js +1 -0
- package/assets/esri/core/workers/chunks/e3a73d9acebccd3ba49b.js +1 -0
- package/assets/esri/core/workers/chunks/e3d3fc87789fd711f161.js +2 -0
- package/assets/esri/core/workers/chunks/e43c6058c793d43fa5f3.js +1 -0
- package/assets/esri/core/workers/chunks/e462b167841fddaa80b8.js +1 -0
- package/assets/esri/core/workers/chunks/e51e35b5cef89b0e0db1.js +1 -0
- package/assets/esri/core/workers/chunks/e58ec49a5cd852cb46cb.js +1 -0
- package/assets/esri/core/workers/chunks/e7d28ebf684db4ecb8cb.js +1 -0
- package/assets/esri/core/workers/chunks/e881629bf230a148963d.js +1 -0
- package/assets/esri/core/workers/chunks/e8f6305744f87bbed961.js +1 -0
- package/assets/esri/core/workers/chunks/e9f8115c049f168d3c2b.js +1 -0
- package/assets/esri/core/workers/chunks/ea32a8478f3ccb19aced.js +1 -0
- package/assets/esri/core/workers/chunks/ea734de7d5271c487171.js +1 -0
- package/assets/esri/core/workers/chunks/eb765db525f4e2e2bda2.js +1 -0
- package/assets/esri/core/workers/chunks/ebbcd6196ef5c5ab233d.js +1 -0
- package/assets/esri/core/workers/chunks/ec00fa313794f177d9d3.js +1 -0
- package/assets/esri/core/workers/chunks/ec03d59984782529031a.js +1 -0
- package/assets/esri/core/workers/chunks/ec7f4e459c7466805f72.js +1 -0
- package/assets/esri/core/workers/chunks/ecf7d34b37ce6f0877af.js +1 -0
- package/assets/esri/core/workers/chunks/ed1c92a24a167e57e36e.js +1 -0
- package/assets/esri/core/workers/chunks/ed69b19366e3ce5805ac.js +1 -0
- package/assets/esri/core/workers/chunks/ee25d1eae52c8be82898.js +1 -0
- package/assets/esri/core/workers/chunks/ee905e24320241959965.js +1 -0
- package/assets/esri/core/workers/chunks/eea91681bae00819a5e9.js +1 -0
- package/assets/esri/core/workers/chunks/eed24607e9b5312b417f.js +1 -0
- package/assets/esri/core/workers/chunks/ef519984fa691aad8d87.js +2 -0
- package/assets/esri/core/workers/chunks/f0eb2bfe5a8607b251f5.js +1 -0
- package/assets/esri/core/workers/chunks/f370e60dc81d41368e0c.js +1 -0
- package/assets/esri/core/workers/chunks/f3fdf9970b3c7acd071d.js +1 -0
- package/assets/esri/core/workers/chunks/f40e413c68d99cf54d42.js +1 -0
- package/assets/esri/core/workers/chunks/f5b32bc3f7ee911e3c59.js +1 -0
- package/assets/esri/core/workers/chunks/f5dbffd5e8b3c16336a1.js +1 -0
- package/assets/esri/core/workers/chunks/f5ed6953a9255f0bed6a.js +2 -0
- package/assets/esri/core/workers/chunks/f627017adc9469144507.js +1 -0
- package/assets/esri/core/workers/chunks/f7ad285944e0e5164384.js +1 -0
- package/assets/esri/core/workers/chunks/f872d34d4236f8bedbd9.js +1 -0
- package/assets/esri/core/workers/chunks/f88adc930506ac2d5c90.js +1 -0
- package/assets/esri/core/workers/chunks/f890cfa4932955ecd4e7.js +1 -0
- package/assets/esri/core/workers/chunks/fd4bd04f85458cad849c.js +1 -0
- package/assets/esri/core/workers/chunks/fe98a068536e904ce257.js +1 -0
- package/assets/esri/core/workers/chunks/ffa9cc09e82f2e515993.js +1 -0
- package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
- package/assets/esri/themes/base/widgets/_Compass.scss +1 -1
- package/assets/esri/themes/base/widgets/_Feature.scss +1 -1
- package/assets/esri/themes/base/widgets/_Features.scss +1 -1
- package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +4 -4
- package/assets/esri/themes/base/widgets/_Widget.scss +1 -1
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/config.js +1 -1
- package/core/MultiOriginJSONSupport.d.ts +8 -0
- package/core/MultiOriginJSONSupport.js +1 -1
- package/core/ReadOnlyMultiOriginJSONSupport.d.ts +40 -0
- package/core/ReadOnlyMultiOriginJSONSupport.js +1 -1
- package/core/WriteableMultiOriginJSONMixin.js +1 -1
- package/core/accessorSupport/decorators/subclass.js +1 -1
- package/core/accessorSupport/types.d.ts +2 -0
- package/kernel.js +1 -1
- package/layers/BingMapsLayer.d.ts +3 -2
- package/layers/BingMapsLayer.js +1 -1
- package/layers/BuildingSceneLayer.d.ts +3 -2
- package/layers/BuildingSceneLayer.js +1 -1
- package/layers/CSVLayer.js +1 -1
- package/layers/CatalogLayer.d.ts +3 -2
- package/layers/CatalogLayer.js +1 -1
- package/layers/DimensionLayer.d.ts +3 -2
- package/layers/DimensionLayer.js +1 -1
- package/layers/ElevationLayer.d.ts +3 -2
- package/layers/ElevationLayer.js +1 -1
- package/layers/FeatureLayer.d.ts +3 -2
- package/layers/FeatureLayer.js +1 -1
- package/layers/GaussianSplatLayer.d.ts +3 -2
- package/layers/GaussianSplatLayer.js +1 -1
- package/layers/GeoJSONLayer.d.ts +3 -2
- package/layers/GeoJSONLayer.js +1 -1
- package/layers/GeoRSSLayer.d.ts +3 -2
- package/layers/GeoRSSLayer.js +1 -1
- package/layers/GroupLayer.d.ts +3 -2
- package/layers/GroupLayer.js +1 -1
- package/layers/ImageryLayer.d.ts +3 -2
- package/layers/ImageryLayer.js +1 -1
- package/layers/ImageryTileLayer.d.ts +3 -2
- package/layers/ImageryTileLayer.js +1 -1
- package/layers/IntegratedMesh3DTilesLayer.d.ts +3 -2
- package/layers/IntegratedMesh3DTilesLayer.js +1 -1
- package/layers/IntegratedMeshLayer.d.ts +3 -2
- package/layers/IntegratedMeshLayer.js +1 -1
- package/layers/KMLLayer.d.ts +3 -2
- package/layers/KMLLayer.js +1 -1
- package/layers/KnowledgeGraphLayer.d.ts +3 -2
- package/layers/KnowledgeGraphLayer.js +1 -1
- package/layers/LineOfSightLayer.d.ts +3 -2
- package/layers/LineOfSightLayer.js +1 -1
- package/layers/LinkChartLayer.d.ts +3 -2
- package/layers/LinkChartLayer.js +1 -1
- package/layers/MapImageLayer.d.ts +3 -2
- package/layers/MapImageLayer.js +1 -1
- package/layers/MapNotesLayer.d.ts +3 -2
- package/layers/MapNotesLayer.js +1 -1
- package/layers/MediaLayer.d.ts +3 -2
- package/layers/MediaLayer.js +1 -1
- package/layers/OGCFeatureLayer.d.ts +3 -2
- package/layers/OGCFeatureLayer.js +1 -1
- package/layers/ParquetLayer.d.ts +3 -2
- package/layers/ParquetLayer.js +1 -1
- package/layers/PointCloudLayer.d.ts +3 -2
- package/layers/PointCloudLayer.js +1 -1
- package/layers/RouteLayer.d.ts +3 -2
- package/layers/RouteLayer.js +1 -1
- package/layers/SceneLayer.d.ts +6 -2
- package/layers/SceneLayer.js +1 -1
- package/layers/StreamLayer.d.ts +3 -2
- package/layers/StreamLayer.js +1 -1
- package/layers/SubtypeGroupLayer.d.ts +3 -2
- package/layers/SubtypeGroupLayer.js +1 -1
- package/layers/TileLayer.d.ts +3 -2
- package/layers/TileLayer.js +1 -1
- package/layers/UnknownLayer.d.ts +3 -2
- package/layers/UnknownLayer.js +1 -1
- package/layers/UnsupportedLayer.d.ts +3 -2
- package/layers/UnsupportedLayer.js +1 -1
- package/layers/VectorTileLayer.d.ts +3 -2
- package/layers/VectorTileLayer.js +1 -1
- package/layers/VideoLayer.d.ts +3 -2
- package/layers/VideoLayer.js +1 -1
- package/layers/ViewshedLayer.d.ts +3 -2
- package/layers/ViewshedLayer.js +1 -1
- package/layers/VoxelLayer.d.ts +3 -2
- package/layers/VoxelLayer.js +1 -1
- package/layers/WCSLayer.d.ts +3 -2
- package/layers/WCSLayer.js +1 -1
- package/layers/WFSLayer.d.ts +3 -2
- package/layers/WFSLayer.js +1 -1
- package/layers/WMSLayer.d.ts +3 -2
- package/layers/WMSLayer.js +1 -1
- package/layers/WMTSLayer.d.ts +3 -2
- package/layers/WMTSLayer.js +1 -1
- package/layers/WebTileLayer.d.ts +3 -2
- package/layers/WebTileLayer.js +1 -1
- package/layers/buildingSublayers/BuildingSublayer.d.ts +3 -2
- package/layers/buildingSublayers/BuildingSublayer.js +1 -1
- package/layers/catalog/CatalogDynamicGroupLayer.d.ts +3 -2
- package/layers/catalog/CatalogDynamicGroupLayer.js +1 -1
- package/layers/catalog/CatalogFootprintLayer.d.ts +3 -2
- package/layers/catalog/CatalogFootprintLayer.js +1 -1
- package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +3 -2
- package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
- package/layers/media/types.d.ts +31 -5
- package/layers/raster/functions/rasterProjectionHelper.js +1 -1
- package/layers/support/ElevationQuery.js +1 -1
- package/layers/support/MediaElementBase.d.ts +5 -3
- package/layers/support/MediaElementBase.js +1 -1
- package/layers/support/Sublayer.d.ts +3 -2
- package/layers/support/Sublayer.js +1 -1
- package/layers/support/SubtypeSublayer.d.ts +3 -2
- package/layers/support/SubtypeSublayer.js +1 -1
- package/layers/support/WMSSublayer.d.ts +3 -2
- package/layers/support/WMSSublayer.js +1 -1
- package/layers/support/layerOriginUtils.js +1 -1
- package/linkChart/LinkChartProperties.d.ts +5 -3
- package/linkChart/LinkChartProperties.js +1 -1
- package/networks/Network.d.ts +4 -2
- package/networks/Network.js +1 -1
- package/networks/support/NamedTraceConfiguration.d.ts +5 -3
- package/networks/support/NamedTraceConfiguration.js +1 -1
- package/package.json +3 -3
- package/support/revision.js +1 -1
- package/views/2d/engine/BitmapTileContainer.js +1 -1
- package/views/2d/engine/DisplayObject.js +1 -1
- package/views/2d/engine/Stage.js +1 -1
- package/views/2d/engine/imagery/RasterTileContainer.js +1 -1
- package/views/2d/engine/imagery/RasterVFTileContainer.js +1 -1
- package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
- package/views/2d/engine/vectorTiles/decluttering/SymbolDeclutterer.js +1 -1
- package/views/2d/engine/vectorTiles/decluttering/SymbolFader.js +1 -1
- package/views/2d/engine/webgl/RenderingDevice.js +1 -1
- package/views/2d/engine/webgl/TileContainer.js +1 -1
- package/views/2d/engine/webgl/collisions/LabelMetric.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/TechniqueProgramCache.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueBackground.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueFill.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueLine.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueSymbol.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/2d/layers/WMTSLayerView2D.js +1 -1
- package/views/2d/layers/features/FeatureContainer.js +1 -1
- package/views/2d/layers/features/Processor.js +1 -1
- package/views/2d/layers/features/support/Tile.js +1 -1
- package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
- package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
- package/views/2d/layers/imagery/VectorFieldTileView2D.js +1 -1
- package/views/2d/layers/support/imageUtils.js +1 -1
- package/views/2d/tiling/TileCache.js +1 -1
- package/views/2d/tiling/TileInfoView.js +1 -1
- package/views/2d/tiling/TileInfoViewPOT.js +1 -1
- package/views/3d/FocusAreasView.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
- package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
- package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
- package/views/3d/layers/graphics/ElevationQuery.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/extrudeUtils.js +5 -0
- package/widgets/Attribution.d.ts +1 -0
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/FieldColumn.js +1 -1
- package/widgets/FeatureTable/Grid/EditorColumn.js +1 -1
- package/widgets/FeatureTable/support/tableUtils.js +1 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/Legend/LegendViewModel.d.ts +6 -0
- package/widgets/Legend/styles/card/CardView.d.ts +19 -3
- package/widgets/Legend/styles/classic/ClassicView.d.ts +1 -0
- package/widgets/Legend.d.ts +15 -0
- package/widgets/smartMapping/BinaryColorSizeSlider.js +1 -1
- package/widgets/smartMapping/ClassedColorSlider.js +1 -1
- package/widgets/smartMapping/ClassedSizeSlider.d.ts +1 -1
- package/widgets/smartMapping/ClassedSizeSlider.js +1 -1
- package/widgets/smartMapping/ColorSizeSlider.js +1 -1
- package/widgets/smartMapping/ColorSlider.js +1 -1
- package/widgets/smartMapping/OpacitySlider.js +1 -1
- package/widgets/smartMapping/SizeSlider.js +1 -1
- package/assets/esri/core/workers/chunks/00c77f03dd511c6dbff2.js +0 -1
- package/assets/esri/core/workers/chunks/015492d609c28077d66c.js +0 -1
- package/assets/esri/core/workers/chunks/04176244b0a3539c9681.js +0 -1
- package/assets/esri/core/workers/chunks/0429ca6ba562ae29897e.js +0 -1
- package/assets/esri/core/workers/chunks/04958494022f82dca473.js +0 -1
- package/assets/esri/core/workers/chunks/049c125085028ffdd0dd.js +0 -1
- package/assets/esri/core/workers/chunks/05e3bfd07a7a227862fd.js +0 -1
- package/assets/esri/core/workers/chunks/095c1b88cdcb91ab837e.js +0 -1
- package/assets/esri/core/workers/chunks/09b77f82c22530b44daa.js +0 -1
- package/assets/esri/core/workers/chunks/0a39c6dc57bd60d5587e.js +0 -1
- package/assets/esri/core/workers/chunks/0b679d5a1bfdbd006d6e.js +0 -1
- package/assets/esri/core/workers/chunks/0b7bbdc0d71ee6721751.js +0 -2
- package/assets/esri/core/workers/chunks/0d9e1ccc3ba8b5ed3287.js +0 -1
- package/assets/esri/core/workers/chunks/0f4e9846d074864b39c2.js +0 -1
- package/assets/esri/core/workers/chunks/0fc22ad791d3ec0a9c5e.js +0 -1
- package/assets/esri/core/workers/chunks/1037b38aade2a847bf24.js +0 -1
- package/assets/esri/core/workers/chunks/108a4ab28b6586e281d9.js +0 -1
- package/assets/esri/core/workers/chunks/12f9a55253084a910b2e.js +0 -1
- package/assets/esri/core/workers/chunks/13137f35b9ab299d07e3.js +0 -1
- package/assets/esri/core/workers/chunks/13839d220e5c62404923.js +0 -1
- package/assets/esri/core/workers/chunks/1484a7ef4fcbd748b197.js +0 -1
- package/assets/esri/core/workers/chunks/14dedd80fb797303f91f.js +0 -1
- package/assets/esri/core/workers/chunks/1694b9154df3eccf602e.js +0 -1
- package/assets/esri/core/workers/chunks/16a7edb381621085a631.js +0 -1
- package/assets/esri/core/workers/chunks/16cfa7031d6dbf5aa09b.js +0 -1
- package/assets/esri/core/workers/chunks/18ab5959ebf8689f8fe8.js +0 -1
- package/assets/esri/core/workers/chunks/18b0ce0bc2a9737ffb1b.js +0 -1
- package/assets/esri/core/workers/chunks/1a6d2f525dd30d08cf9b.js +0 -1
- package/assets/esri/core/workers/chunks/1b284a6f32effe28aafc.js +0 -1
- package/assets/esri/core/workers/chunks/1c58bd3275c849d44b13.js +0 -1
- package/assets/esri/core/workers/chunks/1c742018eb7dfd5d23e3.js +0 -1
- package/assets/esri/core/workers/chunks/1dfa949cc4f4c18ed4cf.js +0 -1
- package/assets/esri/core/workers/chunks/1e848d9da1c61a27cf18.js +0 -1
- package/assets/esri/core/workers/chunks/20f4c6d8b310ecab97be.js +0 -1
- package/assets/esri/core/workers/chunks/218b2b767b40d85fb713.js +0 -1
- package/assets/esri/core/workers/chunks/22c115ec003351c7d8ee.js +0 -1
- package/assets/esri/core/workers/chunks/23545a9adc75564ecf6e.js +0 -1
- package/assets/esri/core/workers/chunks/23cf4cbc389d2b50e968.js +0 -1
- package/assets/esri/core/workers/chunks/24527b61c8c216becbc4.js +0 -1
- package/assets/esri/core/workers/chunks/24dab877047369de13e2.js +0 -1
- package/assets/esri/core/workers/chunks/25f3ee666f545a7a7993.js +0 -2
- package/assets/esri/core/workers/chunks/29471e0b3f7296dee096.js +0 -1
- package/assets/esri/core/workers/chunks/2b27499fa9de22970b7a.js +0 -1
- package/assets/esri/core/workers/chunks/2bd59ece927b5c1c9f80.js +0 -1
- package/assets/esri/core/workers/chunks/2c7038a7ffaf75344b02.js +0 -1
- package/assets/esri/core/workers/chunks/2d8b8880e6bff4414e95.js +0 -1
- package/assets/esri/core/workers/chunks/2dfa7abf2d39fa5a3874.js +0 -1
- package/assets/esri/core/workers/chunks/2e6ae1ca07df442fc966.js +0 -1
- package/assets/esri/core/workers/chunks/2e6bd743b88e83d43137.js +0 -1
- package/assets/esri/core/workers/chunks/3001568a99fdd14aada9.js +0 -1
- package/assets/esri/core/workers/chunks/30dd4a7c93b33988a270.js +0 -1
- package/assets/esri/core/workers/chunks/312b3cc1c91d5b419faf.js +0 -1
- package/assets/esri/core/workers/chunks/31fa3dd983e9e73fcb65.js +0 -1
- package/assets/esri/core/workers/chunks/33a13e80badd20ed8de2.js +0 -1
- package/assets/esri/core/workers/chunks/355c8d0eadfff9f62dfb.js +0 -1
- package/assets/esri/core/workers/chunks/35c98ea99000f411175f.js +0 -1
- package/assets/esri/core/workers/chunks/35e1d0cfc3c5a484422f.js +0 -1
- package/assets/esri/core/workers/chunks/360f263f32aa2342a897.js +0 -1
- package/assets/esri/core/workers/chunks/369f37060608342a4262.js +0 -1
- package/assets/esri/core/workers/chunks/36ecf951c0c7dad84b69.js +0 -1
- package/assets/esri/core/workers/chunks/37002a46f03a9fc5f644.js +0 -2
- package/assets/esri/core/workers/chunks/37258b702fe06bbcf748.js +0 -1
- package/assets/esri/core/workers/chunks/37a3e91791a18ed8b8da.js +0 -1
- package/assets/esri/core/workers/chunks/3a04153ca9d8e4f01185.js +0 -1
- package/assets/esri/core/workers/chunks/3b1982bf7b44ff897a35.js +0 -1
- package/assets/esri/core/workers/chunks/3b25f5d9c8f78bb6e011.js +0 -1
- package/assets/esri/core/workers/chunks/3c5f07ebe1b09dcdc958.js +0 -1
- package/assets/esri/core/workers/chunks/3c66dd52ad156711a6a2.js +0 -1
- package/assets/esri/core/workers/chunks/3ed317900f0edf635508.js +0 -1
- package/assets/esri/core/workers/chunks/3f0959b1abafe516146e.js +0 -1
- package/assets/esri/core/workers/chunks/41f487713c6278d389a1.js +0 -1
- package/assets/esri/core/workers/chunks/4319b89cfa02894a8cae.js +0 -1
- package/assets/esri/core/workers/chunks/43e2c1d72cd9c8beed2f.js +0 -2
- package/assets/esri/core/workers/chunks/44c228388a95fa958827.js +0 -1
- package/assets/esri/core/workers/chunks/45a9cd722e98dd1548ae.js +0 -1
- package/assets/esri/core/workers/chunks/46daa1ff5b412a97edc9.js +0 -1
- package/assets/esri/core/workers/chunks/46e547691bca424f2bc9.js +0 -1
- package/assets/esri/core/workers/chunks/4750f55a289bc0cf3d77.js +0 -1
- package/assets/esri/core/workers/chunks/47d2103b876b01bc26fd.js +0 -1
- package/assets/esri/core/workers/chunks/495af366ec1defd89a72.js +0 -1
- package/assets/esri/core/workers/chunks/4b14ee37b5ac50a734f9.js +0 -1
- package/assets/esri/core/workers/chunks/4bcd74951477e8977ba1.js +0 -1
- package/assets/esri/core/workers/chunks/4cbe78d6a5ff617e15d6.js +0 -1
- package/assets/esri/core/workers/chunks/4ce28c936eaffe57c448.js +0 -1
- package/assets/esri/core/workers/chunks/4d5591c1b4ef37075921.js +0 -1
- package/assets/esri/core/workers/chunks/4ef97eb67dc42e0052d6.js +0 -1
- package/assets/esri/core/workers/chunks/4fa230dc6e5e87b0dec1.js +0 -1
- package/assets/esri/core/workers/chunks/4fcf035582fa6e93d264.js +0 -1
- package/assets/esri/core/workers/chunks/509307a2ef990ad1da8f.js +0 -301
- package/assets/esri/core/workers/chunks/50eb381b18b84b9c75a3.js +0 -1
- package/assets/esri/core/workers/chunks/50f03813fba4b752ca9f.js +0 -1
- package/assets/esri/core/workers/chunks/52a14266fe239b95c5ce.js +0 -1
- package/assets/esri/core/workers/chunks/52bcfb3ea563c1a301d4.js +0 -1
- package/assets/esri/core/workers/chunks/53b5c77832df7df4d4e3.js +0 -1
- package/assets/esri/core/workers/chunks/558822b700e8bd844052.js +0 -1
- package/assets/esri/core/workers/chunks/55a9ea536c64976c3409.js +0 -1
- package/assets/esri/core/workers/chunks/563933a84fc9b0e021f6.js +0 -1
- package/assets/esri/core/workers/chunks/56569d0c2cf5c5167651.js +0 -1
- package/assets/esri/core/workers/chunks/575a33924ec900f9e537.js +0 -1
- package/assets/esri/core/workers/chunks/584c4602d97a008afb83.js +0 -1
- package/assets/esri/core/workers/chunks/58b3a776ef129f7f86dc.js +0 -1
- package/assets/esri/core/workers/chunks/590a7fd4f5476224ec89.js +0 -1
- package/assets/esri/core/workers/chunks/59a45533e96cedf1c480.js +0 -1
- package/assets/esri/core/workers/chunks/5a66b7f1f4da75da8e7f.js +0 -1
- package/assets/esri/core/workers/chunks/5b9f2aa3ba1bf12c3240.js +0 -2
- package/assets/esri/core/workers/chunks/5bbf20135c87a1cc8a18.js +0 -1
- package/assets/esri/core/workers/chunks/5cc217f188fd56006158.js +0 -1
- package/assets/esri/core/workers/chunks/5dc2f2e28c30386efadf.js +0 -1
- package/assets/esri/core/workers/chunks/5df49e1f283e2e83de46.js +0 -1
- package/assets/esri/core/workers/chunks/60764ea501a3a1aacc63.js +0 -1
- package/assets/esri/core/workers/chunks/6087d5dc40bb62ec48c8.js +0 -1
- package/assets/esri/core/workers/chunks/6094bba52ddada48c7ed.js +0 -1
- package/assets/esri/core/workers/chunks/60eeeea671a523bb6b15.js +0 -1
- package/assets/esri/core/workers/chunks/60f363ee2add089e8f0b.js +0 -1
- package/assets/esri/core/workers/chunks/6387308c4add226e5b83.js +0 -1
- package/assets/esri/core/workers/chunks/63b8193ad90b2ebe6884.js +0 -1
- package/assets/esri/core/workers/chunks/657602e6a84e8b4576fb.js +0 -1
- package/assets/esri/core/workers/chunks/65fd971d0574d69cbc26.js +0 -1
- package/assets/esri/core/workers/chunks/679cd6424e0e2d7f372b.js +0 -1
- package/assets/esri/core/workers/chunks/6800647240b7968be225.js +0 -1
- package/assets/esri/core/workers/chunks/68074a484d7f9bc713c0.js +0 -1
- package/assets/esri/core/workers/chunks/680f9c29ca96ea8e01da.js +0 -1
- package/assets/esri/core/workers/chunks/68cb43f2fa8cc826e99b.js +0 -1
- package/assets/esri/core/workers/chunks/69a68a6d6736c4b97a27.js +0 -1
- package/assets/esri/core/workers/chunks/6a3d66d7c92f90cc2a17.js +0 -1
- package/assets/esri/core/workers/chunks/6a544fb44f7da0e80f43.js +0 -1
- package/assets/esri/core/workers/chunks/6a782e8475bff4d56dbc.js +0 -1
- package/assets/esri/core/workers/chunks/6b85a8776ec2beff63cb.js +0 -1
- package/assets/esri/core/workers/chunks/6be530ab81291745485b.js +0 -2
- package/assets/esri/core/workers/chunks/6d3ae7969ea86a2e0b13.js +0 -1
- package/assets/esri/core/workers/chunks/6df484faf54e90a6cc77.js +0 -1
- package/assets/esri/core/workers/chunks/6ea6ad894ac634aa4391.js +0 -1
- package/assets/esri/core/workers/chunks/6ffc1a0400298fca00ee.js +0 -1
- package/assets/esri/core/workers/chunks/729c2d26ae23d9c86547.js +0 -1
- package/assets/esri/core/workers/chunks/73bee5659414b3687cfc.js +0 -1
- package/assets/esri/core/workers/chunks/73c416ae0ec5a1815591.js +0 -2
- package/assets/esri/core/workers/chunks/74b825d4f0e7ab567b10.js +0 -1
- package/assets/esri/core/workers/chunks/75c66e38bdc1c786c599.js +0 -1
- package/assets/esri/core/workers/chunks/75fd2ef1236a9364ca7f.js +0 -1
- package/assets/esri/core/workers/chunks/760a759f9697adde6dd4.js +0 -1
- package/assets/esri/core/workers/chunks/77509bd20ac5bc190c94.js +0 -1039
- package/assets/esri/core/workers/chunks/7763cf4a9a4343c28591.js +0 -1
- package/assets/esri/core/workers/chunks/7972954801b82e7afc72.js +0 -1
- package/assets/esri/core/workers/chunks/798d227205bd958de6a7.js +0 -1
- package/assets/esri/core/workers/chunks/7bc09e80bf45fe137055.js +0 -1
- package/assets/esri/core/workers/chunks/7be9bbae23895d1cfa92.js +0 -1
- package/assets/esri/core/workers/chunks/7bf30c254228f9b7f224.js +0 -1
- package/assets/esri/core/workers/chunks/7bf491b468cd74a4166c.js +0 -1
- package/assets/esri/core/workers/chunks/7d631ebf8f79225cf0f6.js +0 -1
- package/assets/esri/core/workers/chunks/7d744554d14057d9b2b1.js +0 -1
- package/assets/esri/core/workers/chunks/7d8664aeff66e34138bd.js +0 -1
- package/assets/esri/core/workers/chunks/7db52d2451494835c160.js +0 -1
- package/assets/esri/core/workers/chunks/818b5b8027d6fe8999d6.js +0 -1
- package/assets/esri/core/workers/chunks/8195310b4c53db902fc1.js +0 -1
- package/assets/esri/core/workers/chunks/82ace0195b63790b22c9.js +0 -1
- package/assets/esri/core/workers/chunks/83117d2747bdaf480c7b.js +0 -1
- package/assets/esri/core/workers/chunks/83c5dea24e36ac2e3497.js +0 -1
- package/assets/esri/core/workers/chunks/84440efe2cc337dab81f.js +0 -1
- package/assets/esri/core/workers/chunks/84ec8ea3e40e0864798f.js +0 -1
- package/assets/esri/core/workers/chunks/852007720e3bc29532db.js +0 -1
- package/assets/esri/core/workers/chunks/85c92726121cb43a2216.js +0 -1
- package/assets/esri/core/workers/chunks/86832d94190150c70c11.js +0 -1
- package/assets/esri/core/workers/chunks/873008572c1f21cea122.js +0 -2
- package/assets/esri/core/workers/chunks/87c6470ee295d736b06d.js +0 -1
- package/assets/esri/core/workers/chunks/88379cd8e8e1c7ae3c7c.js +0 -1
- package/assets/esri/core/workers/chunks/88cbaa91c495d86f4bb0.js +0 -1
- package/assets/esri/core/workers/chunks/89853fccdf2bfcc290c0.js +0 -1
- package/assets/esri/core/workers/chunks/8c1f1eb36198ce40ef13.js +0 -1
- package/assets/esri/core/workers/chunks/8d58e59ea13ecafdd45c.js +0 -1
- package/assets/esri/core/workers/chunks/8db723b8468e408dda46.js +0 -1
- package/assets/esri/core/workers/chunks/8dca61f8ba6689379f86.js +0 -1
- package/assets/esri/core/workers/chunks/8e354c7b4858db5880a9.js +0 -1
- package/assets/esri/core/workers/chunks/8e556ff730ae96290a69.js +0 -1
- package/assets/esri/core/workers/chunks/8e62a5fcc4c7e83a903a.js +0 -1
- package/assets/esri/core/workers/chunks/9086a4933d3d3d9ffa72.js +0 -1
- package/assets/esri/core/workers/chunks/91d9ade78854f40a962d.js +0 -1
- package/assets/esri/core/workers/chunks/91fba3bebd78cb956941.js +0 -1
- package/assets/esri/core/workers/chunks/920b4def081c78c0d586.js +0 -1
- package/assets/esri/core/workers/chunks/92928c56b312e1514600.js +0 -1
- package/assets/esri/core/workers/chunks/92a4f56232f81ca457fa.js +0 -1
- package/assets/esri/core/workers/chunks/92ef6071ea87b7f940e2.js +0 -1
- package/assets/esri/core/workers/chunks/9319d57494482668ab19.js +0 -1
- package/assets/esri/core/workers/chunks/9361834d2c3064eb41fc.js +0 -1
- package/assets/esri/core/workers/chunks/9382af94bf6bf1b09c8c.js +0 -1
- package/assets/esri/core/workers/chunks/942c80c425b1f13cced5.js +0 -1
- package/assets/esri/core/workers/chunks/95cb062cae4c31c07124.js +0 -1
- package/assets/esri/core/workers/chunks/968335b28b895e19913b.js +0 -1
- package/assets/esri/core/workers/chunks/979bc762ccc0d3fc2467.js +0 -1
- package/assets/esri/core/workers/chunks/9828b07b5f8fd9f40935.js +0 -1
- package/assets/esri/core/workers/chunks/98739414c107ad78e4d8.js +0 -1
- package/assets/esri/core/workers/chunks/988f5e003377d734d282.js +0 -1
- package/assets/esri/core/workers/chunks/9921c8d4487a0f580b93.js +0 -1
- package/assets/esri/core/workers/chunks/9a6bdcedcb7d2798ba30.js +0 -1
- package/assets/esri/core/workers/chunks/9afe220b5b60cfa44c95.js +0 -1
- package/assets/esri/core/workers/chunks/9ba8a2e1c0fb4e1efc7c.js +0 -1
- package/assets/esri/core/workers/chunks/9c93eadbd19bef1191b4.js +0 -1
- package/assets/esri/core/workers/chunks/9c9d359caf8354a8ec52.js +0 -1
- package/assets/esri/core/workers/chunks/9cc2832d5f625f81c08d.js +0 -1
- package/assets/esri/core/workers/chunks/9ccabf8142fb5de4d3e2.js +0 -2
- package/assets/esri/core/workers/chunks/9cec9d09f3aa5c21660d.js +0 -37
- package/assets/esri/core/workers/chunks/9d258f14199181dee424.js +0 -1
- package/assets/esri/core/workers/chunks/9e869fd6450cf874783a.js +0 -1
- package/assets/esri/core/workers/chunks/9f34cf024231f574009c.js +0 -1
- package/assets/esri/core/workers/chunks/a1594486177015e8a6c3.js +0 -1
- package/assets/esri/core/workers/chunks/a16e75ff5cd9b22be197.js +0 -1
- package/assets/esri/core/workers/chunks/a1b8722c6acafdf1c2bf.js +0 -1
- package/assets/esri/core/workers/chunks/a3407ca77b0ff62c0e75.js +0 -1
- package/assets/esri/core/workers/chunks/a41073263af5eba3c16d.js +0 -1
- package/assets/esri/core/workers/chunks/a623676c74745e040a2a.js +0 -1
- package/assets/esri/core/workers/chunks/a64cd02ca959d511101c.js +0 -1
- package/assets/esri/core/workers/chunks/a6742abe3ebe371e85f1.js +0 -1
- package/assets/esri/core/workers/chunks/a6d4256c327f07221117.js +0 -1
- package/assets/esri/core/workers/chunks/a6f29d1a6356e2de5a79.js +0 -1
- package/assets/esri/core/workers/chunks/a79fad422d41019c8232.js +0 -1
- package/assets/esri/core/workers/chunks/a8dfd246c797f3b979f5.js +0 -1
- package/assets/esri/core/workers/chunks/ab0275669e28e7a34c38.js +0 -1
- package/assets/esri/core/workers/chunks/ab5e2f823960c33cefe4.js +0 -1
- package/assets/esri/core/workers/chunks/acdbe0299024d58e1421.js +0 -1
- package/assets/esri/core/workers/chunks/ad253136c1e12f733d15.js +0 -1
- package/assets/esri/core/workers/chunks/adc68e2c6d2698a52bfe.js +0 -1
- package/assets/esri/core/workers/chunks/adff1791ae44631ad34a.js +0 -1
- package/assets/esri/core/workers/chunks/ae16fe50a54b5c0f9811.js +0 -1
- package/assets/esri/core/workers/chunks/ae18de425548bb865702.js +0 -1
- package/assets/esri/core/workers/chunks/ae6066ea6cb373dc6db3.js +0 -1
- package/assets/esri/core/workers/chunks/aeb524eded012217a865.js +0 -1
- package/assets/esri/core/workers/chunks/af00081b78fc30ac556c.js +0 -1
- package/assets/esri/core/workers/chunks/b211b53aa7616a093b90.js +0 -1
- package/assets/esri/core/workers/chunks/b28e0b89603d8b03f9e1.js +0 -1
- package/assets/esri/core/workers/chunks/b4349db7155673329432.js +0 -1
- package/assets/esri/core/workers/chunks/b48033645091c91e0d88.js +0 -1
- package/assets/esri/core/workers/chunks/b5e4a36784d598ae6679.js +0 -1
- package/assets/esri/core/workers/chunks/b64cfd86d9204be743c6.js +0 -1
- package/assets/esri/core/workers/chunks/b8988771bfa4e785ebd6.js +0 -1
- package/assets/esri/core/workers/chunks/ba6452acee3d6defb37e.js +0 -1
- package/assets/esri/core/workers/chunks/bb92a9daa0c5b019561f.js +0 -1
- package/assets/esri/core/workers/chunks/bc731ec9d5136f1d9253.js +0 -1
- package/assets/esri/core/workers/chunks/bd1d159dce4094694c93.js +0 -1
- package/assets/esri/core/workers/chunks/bd2a28b14e5c0a55d783.js +0 -1
- package/assets/esri/core/workers/chunks/bdbb5b33f0f49661bf6d.js +0 -1
- package/assets/esri/core/workers/chunks/befeca51530bba5e8073.js +0 -1
- package/assets/esri/core/workers/chunks/bf05164b7a3e4f31e9db.js +0 -1
- package/assets/esri/core/workers/chunks/bf88bd763fd6442a95fd.js +0 -1
- package/assets/esri/core/workers/chunks/bfe052b386ec4874f350.js +0 -1
- package/assets/esri/core/workers/chunks/c042269586921e337be9.js +0 -1
- package/assets/esri/core/workers/chunks/c0b15510a8cab98df77f.js +0 -1
- package/assets/esri/core/workers/chunks/c27842a34e73ccb46116.js +0 -1
- package/assets/esri/core/workers/chunks/c3272b09bff886b08ce1.js +0 -1
- package/assets/esri/core/workers/chunks/c38a07e936226b361b63.js +0 -1
- package/assets/esri/core/workers/chunks/c59c1e52acb5ac8f78f9.js +0 -1
- package/assets/esri/core/workers/chunks/c5cc0fc652432a9264cc.js +0 -1
- package/assets/esri/core/workers/chunks/c605bf7d1e12917ac482.js +0 -1
- package/assets/esri/core/workers/chunks/c743e561e7d73a100576.js +0 -1
- package/assets/esri/core/workers/chunks/c7838ac0db8570a2d2c1.js +0 -1
- package/assets/esri/core/workers/chunks/c8182c2cbb0ead202af6.js +0 -1
- package/assets/esri/core/workers/chunks/c91ef3814e7f024043cf.js +0 -1
- package/assets/esri/core/workers/chunks/c96083838f919a8f64cd.js +0 -1
- package/assets/esri/core/workers/chunks/cad1d7e5ce89f51b3ac9.js +0 -1
- package/assets/esri/core/workers/chunks/cade149fa19b4d06dd24.js +0 -1
- package/assets/esri/core/workers/chunks/cc50f96321a7c12f300b.js +0 -1
- package/assets/esri/core/workers/chunks/ccc743e41854eb225c23.js +0 -1
- package/assets/esri/core/workers/chunks/cd788ed111e1e35cf9c8.js +0 -1
- package/assets/esri/core/workers/chunks/ce3870db25566cd93d8e.js +0 -1
- package/assets/esri/core/workers/chunks/cfbe9993263fa6f69363.js +0 -1
- package/assets/esri/core/workers/chunks/d129a5a34e9ad09bd39e.js +0 -1
- package/assets/esri/core/workers/chunks/d14e75b160aa432233c6.js +0 -1
- package/assets/esri/core/workers/chunks/d21480925a8bc9c7de96.js +0 -1
- package/assets/esri/core/workers/chunks/d32aad968798948946e4.js +0 -1
- package/assets/esri/core/workers/chunks/d364096493ceeff34c10.js +0 -1
- package/assets/esri/core/workers/chunks/d373986588f6b1b8f2d5.js +0 -1
- package/assets/esri/core/workers/chunks/d3b1d1c389d70919fb02.js +0 -1
- package/assets/esri/core/workers/chunks/d52a0c3a855029c48bd2.js +0 -1
- package/assets/esri/core/workers/chunks/d66973e926bc03e2359a.js +0 -1
- package/assets/esri/core/workers/chunks/d7cd1d879768df629716.js +0 -1
- package/assets/esri/core/workers/chunks/d7df5e4028d502712317.js +0 -1
- package/assets/esri/core/workers/chunks/d90564fbafc00df2d56d.js +0 -1
- package/assets/esri/core/workers/chunks/d9ca754f51b9812bb179.js +0 -1
- package/assets/esri/core/workers/chunks/d9ef0b3341e2744d8f2f.js +0 -1
- package/assets/esri/core/workers/chunks/da5ce19ecf3a5e92a2a9.js +0 -1
- package/assets/esri/core/workers/chunks/da7685ec2b6eaf00fd2d.js +0 -1
- package/assets/esri/core/workers/chunks/dae715b2b0094641e42f.js +0 -1
- package/assets/esri/core/workers/chunks/db04b0a30cce9e476551.js +0 -1
- package/assets/esri/core/workers/chunks/db28d00171240b4fffac.js +0 -1
- package/assets/esri/core/workers/chunks/db4661fd82dc61162115.js +0 -1
- package/assets/esri/core/workers/chunks/dbd382546837aa7709e2.js +0 -1
- package/assets/esri/core/workers/chunks/dddb6cb44cbe4dc1af97.js +0 -1
- package/assets/esri/core/workers/chunks/de60421029fbcebe2950.js +0 -1
- package/assets/esri/core/workers/chunks/df33d5a08e1b6dc00f45.js +0 -1
- package/assets/esri/core/workers/chunks/e0369ce0d729c9656488.js +0 -1
- package/assets/esri/core/workers/chunks/e03c706e327f4989280a.js +0 -1
- package/assets/esri/core/workers/chunks/e0648f5aed9d939928dc.js +0 -1
- package/assets/esri/core/workers/chunks/e071b912539304564b69.js +0 -1
- package/assets/esri/core/workers/chunks/e10d6e511921394474ca.js +0 -1
- package/assets/esri/core/workers/chunks/e34b7acc963288ca0f04.js +0 -1
- package/assets/esri/core/workers/chunks/e4b6aa8f67c2bd285020.js +0 -1
- package/assets/esri/core/workers/chunks/e572ffc1d000e4e6325f.js +0 -1
- package/assets/esri/core/workers/chunks/e615a935bbf1168fac43.js +0 -1
- package/assets/esri/core/workers/chunks/e8bf362b2631f977b1cb.js +0 -1
- package/assets/esri/core/workers/chunks/e8e4d48ab4024e17108d.js +0 -1
- package/assets/esri/core/workers/chunks/e97787de88e2992add13.js +0 -1
- package/assets/esri/core/workers/chunks/eaadcc43837c465342cc.js +0 -1
- package/assets/esri/core/workers/chunks/eb7eb3b3b8800fd73f3e.js +0 -1
- package/assets/esri/core/workers/chunks/ecb4c223c0278971cdc9.js +0 -1
- package/assets/esri/core/workers/chunks/ed7e353e290b3a272457.js +0 -1
- package/assets/esri/core/workers/chunks/ee361690b456c12c30d8.js +0 -1
- package/assets/esri/core/workers/chunks/ef639d31c94d2b55b8d4.js +0 -1
- package/assets/esri/core/workers/chunks/ef977be20a647aeded0a.js +0 -1
- package/assets/esri/core/workers/chunks/efb631371b6bb3f043bb.js +0 -1
- package/assets/esri/core/workers/chunks/f0100b34f8b13fb37157.js +0 -1
- package/assets/esri/core/workers/chunks/f0914715e90e43466f8c.js +0 -1
- package/assets/esri/core/workers/chunks/f0a667d8d33bc51c795d.js +0 -1
- package/assets/esri/core/workers/chunks/f1e5d52e550326e49d1e.js +0 -1
- package/assets/esri/core/workers/chunks/f25bebd2b6eb0d0f6626.js +0 -2
- package/assets/esri/core/workers/chunks/f2b63597ae956db74eb3.js +0 -1
- package/assets/esri/core/workers/chunks/f32d4813b450a3eb4262.js +0 -1
- package/assets/esri/core/workers/chunks/f3b2c81f5ad26a58a4bd.js +0 -1
- package/assets/esri/core/workers/chunks/f54ec21fa67db6fef5a6.js +0 -1
- package/assets/esri/core/workers/chunks/f57b5720ce827f5845cd.js +0 -1
- package/assets/esri/core/workers/chunks/f5a695dc51793b138b23.js +0 -1
- package/assets/esri/core/workers/chunks/f5f584d325f8f2ea825f.js +0 -1
- package/assets/esri/core/workers/chunks/f65d26588d2d80680a26.js +0 -1
- package/assets/esri/core/workers/chunks/f65f1798f398bc549463.js +0 -1
- package/assets/esri/core/workers/chunks/f72e6c903f55ce95a6c5.js +0 -1
- package/assets/esri/core/workers/chunks/f77b93bef06bae03c1c6.js +0 -1
- package/assets/esri/core/workers/chunks/f7dfbf24859f4ac2421b.js +0 -1
- package/assets/esri/core/workers/chunks/f8438642a9bdd8980b4b.js +0 -1
- package/assets/esri/core/workers/chunks/f98689562017583f73ee.js +0 -1
- package/assets/esri/core/workers/chunks/fdb5b5d8a7c99a0bf5f9.js +0 -1
- package/assets/esri/core/workers/chunks/fdbe16e3b23e01655c0c.js +0 -1
- package/assets/esri/core/workers/chunks/fe07390e27f8cd5e93a8.js +0 -1
- package/assets/esri/core/workers/chunks/fe33b11ec3f58a0f541a.js +0 -1
- package/assets/esri/core/workers/chunks/ff8e2f998169ca3a7a68.js +0 -1
- package/assets/esri/core/workers/chunks/ffdba51e7256ebf8ebd3.js +0 -1
- /package/assets/esri/core/workers/chunks/{43e2c1d72cd9c8beed2f.js.LICENSE.txt → 008a555ce169640e2a35.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{6be530ab81291745485b.js.LICENSE.txt → 21ac84b5c7dedcfd747d.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{5b9f2aa3ba1bf12c3240.js.LICENSE.txt → 534ed6574e4a1613ba05.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{37002a46f03a9fc5f644.js.LICENSE.txt → 5aee84e827e6fcc9c4c4.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{73c416ae0ec5a1815591.js.LICENSE.txt → 90a53bfe95ed687c28c1.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{873008572c1f21cea122.js.LICENSE.txt → 91e307ca0d11804a7a1d.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{25f3ee666f545a7a7993.js.LICENSE.txt → dc57400b835724204909.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{f25bebd2b6eb0d0f6626.js.LICENSE.txt → e3d3fc87789fd711f161.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{0b7bbdc0d71ee6721751.js.LICENSE.txt → ef519984fa691aad8d87.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{9ccabf8142fb5de4d3e2.js.LICENSE.txt → f5ed6953a9255f0bed6a.js.LICENSE.txt} +0 -0
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import has from"../../../../core/has.js";import{destroyMaybe as e}from"../../../../core/maybe.js";import{throwIfAborted as t,createResolver as s}from"../../../../core/promiseUtils.js";import{UpdatingHandles as r}from"../../../../core/support/UpdatingHandles.js";import{AFeatureContainer as i}from"../../engine/AFeatureContainer.js";import n from"../../engine/webgl/shaderGraph/techniques/FeatureInstanceStore.js";import{Techniques as
|
|
5
|
+
import has from"../../../../core/has.js";import{destroyMaybe as e}from"../../../../core/maybe.js";import{throwIfAborted as t,createResolver as s}from"../../../../core/promiseUtils.js";import{UpdatingHandles as r}from"../../../../core/support/UpdatingHandles.js";import{AFeatureContainer as i}from"../../engine/AFeatureContainer.js";import{effectFlag0 as n,filterFlag0 as a}from"../../engine/webgl/definitions.js";import o from"../../engine/webgl/shaderGraph/techniques/FeatureInstanceStore.js";import{Techniques as h}from"../../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import{RenderState as d}from"./RenderState.js";import{renderHighlight as l}from"../support/util.js";class u{constructor(e,t){this.id=e,this.version=t,this._resolver=s(),this._done=!1}get done(){return this._done}get promise(){return this._resolver.promise}end(){this._resolver.resolve(),this._done=!0}destroy(){this._resolver.reject()}}class c extends i{constructor(e){super(e.view.featuresTilingScheme),this.updatingHandles=new r,this._hitTestsRequests=[],this._store=new o,this._visibleTiles=new Set,this._subscriptions=new Map,this._updateStatisticsRequests=[],this._lockStatisticUpdates=!1,this._shouldUnlockAttributeView=!1,this._layerView=e,this.addTransitionable(this._layerView.featureEffectView)}destroy(){this.updatingHandles.destroy(),super.destroy(),this._renderState=e(this._renderState),this._renderStateNext=e(this._renderStateNext)}renderChildren(e){if(this._updateAttributeView(),this._renderState?.update(this.attributeView.currentEpoch),this._layerView.requestUpdate(),this._renderState){const e=Array.from(this._renderState.tiles()).filter(e=>e.needsUpload);if(e.length){e[Math.floor(Math.random()*e.length)].upload(),e.length>=2&&this.requestRender();for(const t of e.filter(e=>e.hasMetrics))t.upload()}for(const t of this._renderState.tiles())t.tryReady(this.attributeView.currentEpoch)&&(this._subscriptions.get(t.key.id)?.end(),this._layerView.requestUpdate(),this.hasLabels&&this._layerView.view.labelManager.requestUpdate(),this._layerView.view.labelManager.symbolFader.restartDeclutter(),this.requestRender())}const t=this._layerView.subscriptionManager.updateVisibility();this.setVisibleTiles(t);for(const s of this.children)s.setTransform(e.state);switch(super.renderChildren(e),e.drawPhase){case 1:return this._renderMapPhase(e);case 16:return this._renderHighlightPhase(e);case 2:return this._renderLabelPhase(e)}}subscriptions(){return this._subscriptions.values()}get hasLabels(){return this._layerView.labelingCollisionInfos.length>0}get hasHighlight(){return this._layerView.hasHighlight}get children(){return this._renderState?Array.from(this._renderState.tiles()).filter(e=>this._visibleTiles.has(e.key.id)):[]}get usedMemory(){let e=0;return this._renderState&&(e+=this._renderState.usedMemory),this._renderStateNext&&(e+=this._renderStateNext.usedMemory),e+=this.attributeView.usedMemory,e}get instanceStore(){return this._store}get labelingCollisionInfos(){return this._layerView.labelingCollisionInfos}get layerOrder(){return this._layerView.view.allLayerViews.items.indexOf(this._layerView)}get tiles(){return this._renderState?.tiles()}get _instanceStore(){return this._store}_getHeatmapInstance(e){if(null==this._instanceStore||!(e.drawPhase&h.heatmap.drawPhase))return null;for(const t of this._instanceStore.values())if(_(t))return t;return null}updateAttributeView(e){this.requestRender(),this.attributeView.requestUpdate(e),this.hasLabels&&(this._layerView.view.labelManager.requestUpdate(),this._layerView.view.labelManager.symbolFader.restartDeclutter())}updateSubscriptions(e){for(const{tileId:t,version:s}of e.subscribe){if(!this._subscriptions.has(t)){const e=new u(t,s);this._subscriptions.set(t,e),this.updatingHandles.addPromise(e.promise);continue}this._subscriptions.get(t).version=s}for(const t of e.unsubscribe){const e=this._subscriptions.get(t);e?.destroy(),this._subscriptions.delete(t),this.removeTile(t)}}isDone(e){return!!this._renderState&&this._renderState.isTileDone(e)}isFeatureFiltered(e){const t=this.attributeView.getFilterFlags(e),s=t&a,r=null==this._layerView.featureEffect||this._layerView.featureEffect.excludedLabelsVisible||t&n;return!(s&&r)}async updateRenderState(e){has("esri-2d-update-debug")&&console.debug(`Version[${e}] FeatureContainer.updateRenderState`),this._renderStateNext=new d(()=>this._stage,e=>this._subscriptions.get(e)?.version,e,this._layerView.view.labelManager.symbolFader,this,this.tilingScheme)}getDisplayStatistics(e,t){const s=this._statisticsByLevel.get(e);return s?s.get(t):null}updateStatistics(e,t){if(this._lockStatisticUpdates)return void this._updateStatisticsRequests.push({level:e,statistics:t});let s=this._statisticsByLevel.get(e);s||(s=new Map,this._statisticsByLevel.set(e,s));for(const r of t)s.set(r.fieldName,{minValue:r.minValue,maxValue:r.maxValue})}lockForOverrides(){this._renderState?.lockUploads(),this._lockStatisticUpdates=!0,this.attributeView.locked||(this.attributeView.lockTextureUploads(),this._shouldUnlockAttributeView=!0)}unlockForOverrides(){this._renderState?.unlockUploads(),this._shouldUnlockAttributeView&&(this.attributeView.unlockTextureUploads(),this._shouldUnlockAttributeView=!1),this._lockStatisticUpdates=!1;for(const e of this._updateStatisticsRequests)this.updateStatistics(e.level,e.statistics);this._updateStatisticsRequests=[],this._renderState?.flush(),this.requestRender()}trySwapRenderState(){if(this._renderStateNext){has("esri-2d-update-debug")&&console.debug(`Version[${this._renderStateNext.version}] FeatureContainer.update.swapRenderState`);const e=new Map;for(const t of this._renderState?.tiles()||[])e.set(t.id,t.metricsVisibility);this._renderState?.destroy(),this._renderState=this._renderStateNext,this._renderState.flush();for(const t of this._renderState.tiles())t.copyMetricsVisibility(e.get(t.id)||new Set);this._renderStateNext=null}this.requestRender()}setVisibleTiles(e){this._visibleTiles=e;for(const t of this.tiles??[])t.rendering=e.has(t.key.id)}async onMessage(e,s){t(s);const r=e.inner;if(!this._subscriptions.has(r.id))return;const i=this._subscriptions.get(r.id);if(i.version!==r.subscriptionVesrion){if(has("esri-2d-update-debug")){const e=`${r.subscriptionVesrion} != ${i.version}`;console.debug(`Version[${e}] Tile[${r.id}] FeatureContainer - Dropping message, outdated version]`,r)}return}const n=this._renderStateNext??this._renderState;if(!n)throw new Error("InternalError: No renderState defined");n.version!==r.version&&console.error(`InternalError: Version mismatch. [renderState: ${n.version}, message: ${r.version}]`),n.enqueueUpdate(e),this.requestRender(),this._layerView.view.labelManager.requestUpdate(),this._layerView.requestUpdate()}removeTile(e){(this._renderState||this._renderStateNext)&&(this._renderState&&this._renderState.removeTile(e),this._renderStateNext&&this._renderStateNext.removeTile(e))}hitTest(e){let t=this._hitTestsRequests.find(({x:t,y:s})=>t===e.x&&s===e.y);const r=s();return t?t.resolvers.push(r):(t={x:e.x,y:e.y,resolvers:[r]},this._hitTestsRequests.push(t)),this.requestRender(),r.promise}getSortKeys(e){const t=new Set(e),s=new Map;for(const r of this.children)if(r.getSortKeys(t).forEach((e,t)=>s.set(t,e)),s.size===t.size)break;return s}get hasAnimation(){return this.hasLabels}doRender(e){const{minScale:t,maxScale:s}=this._layerView.layer.effectiveScaleRange,r=e.state.scale;r<=(t||1/0)&&r>=s&&super.doRender(e)}afterRender(e){super.afterRender(e),this._hitTestsRequests.length&&this.requestRender()}setStencilReference(e){if(null==this._getHeatmapInstance(e))super.setStencilReference(e);else for(const t of this.children)t.stencilRef=h.heatmap.getStencilReference(t)}_renderMapPhase(e){this._layerView.featureEffectView.hasEffects?(this._renderOutsideEffect(e),this._renderInsideEffect(e)):this._renderFeatures(e,0),this._hitTestsRequests.length>0&&this._renderHittest(e)}_renderHighlightPhase(e){this.hasHighlight&&l(e,!1,e=>{this._renderFeatures(e,1)})}_renderLabelPhase(e){this._renderFeatures(e,0)}_renderInsideEffect(e){const t=e.painter.effects.insideEffect;t.bind(e),this._renderFeatures(e,2),t.draw(e,this._layerView.featureEffectView.includedEffects),t.unbind()}_renderOutsideEffect(e){const t=e.painter.effects.outsideEffect;t.bind(e),this._renderFeatures(e,3),t.draw(e,this._layerView.featureEffectView.excludedEffects),t.unbind()}_renderHittest(e){const{context:t}=e,s=e.painter.effects.hittest,r=t.getBoundFramebufferObject(),i=t.getViewport(),n=e.passOptions,a=e.drawPhase;s.bind(e),e.passOptions=s.createOptions(e,this._hitTestsRequests),e.drawPhase=8;const{distance:o,smallSymbolDistance:h}=e.passOptions,d=Math.max(o,h);for(const l of this.children)l.visible&&l.containsScreenPoint(e.state,e.passOptions.position,2*d)&&this._renderTile(l,e,0);s.draw(e),s.unbind(),t.bindFramebuffer(r),t.restoreViewport(i),e.passOptions=n,e.drawPhase=a}_renderFeatures(e,t){const s=this._getHeatmapInstance(e);null!=s?this._renderHeatmapFeatures(e,t,s):this._renderGeometryFeatures(e,t)}_renderGeometryFeatures(e,t){for(const s of this.children)s.visible&&this._renderTile(s,e,t)}_renderHeatmapFeatures(e,t,s){for(const r of this.children)r.visible&&this._renderTile(r,e,t,18);s.techniqueRef.renderResolvePass(e,s)}_renderTile(e,t,s,r){const i=has("featurelayer-strict-draw-order")?1:has("featurelayer-force-marker-text-draw-order")?2:0,n=e.getDisplayList(this._instanceStore,i);t.selection=s,n?.render(t,r)}}function _(e){return 18===e.techniqueRef.type}export{c as FeatureContainer};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import has from"../../../../core/has.js";import{destroyMaybe as t}from"../../../../core/maybe.js";import{notDeepEqual as e}from"../../../../core/object.js";import{throwIfNotAbortError as s,throwIfAborted as r,after as i}from"../../../../core/promiseUtils.js";import{diff as a}from"../../../../core/accessorSupport/diffUtils.js";import{ignoreConnectionErrors as o}from"../../../../core/workers/utils.js";import{MultiTileMeshData as n}from"../../engine/webgl/mesh/MultiTileMeshData.js";import{FeatureMeshFactory as c}from"../../engine/webgl/mesh/factories/FeatureMeshFactory.js";import{ResourceProxy as h}from"../../engine/webgl/mesh/factories/ResourceProxy.js";import{MeshWriterRegistry as u}from"../../engine/webgl/shaderGraph/techniques/mesh/MeshWriterRegistry.js";import{MatcherContext as g}from"../../engine/webgl/util/MatcherContext.js";import{ProcessorTileMessageQueue as p}from"./ProcessorTileMessageQueue.js";import{BinningStrategy as y}from"./processor/BinningStrategy.js";import{ClusterStrategy as d}from"./processor/ClusterStrategy.js";import{FeatureUpdateStrategy as _}from"./processor/FeatureUpdateStrategy.js";import{TrackStrategy as l}from"./processor/TrackStrategy.js";import{AttributeStore as m}from"./support/AttributeStore.js";import{ComputedAttributeStorage as f}from"./support/ComputedAttributeStorage.js";class b{constructor(t,e){this._connection=t,this._source=e,this._version=1,this._registry=new u,this._proxy=new h({fetch:(t,e)=>this._connection.layerView.fetch(t,e),fetchDictionary:(t,e)=>this._connection.layerView.fetchDictionary(t,e)}),this._attributeStore=new m({isLocal:!1,update:t=>o(this._connection.container.updateAttributeView(t))})}destroy(){this._proxy.destroy(),this._strategy?.destroy(),this._attributeStore.destroy()}get aggregateQueryEngine(){return this._strategy?.aggregateQueryEngine}get usedMemory(){let t=0;return t+=this._attributeStore.usedMemory,this._strategy&&(t+=this._strategy.usedMemory),t}get version(){return this._version}getDisplayFeatures(t){return this._strategy?this._strategy.getDisplayFeatures(t):{features:[],aggregates:[],tracks:[]}}getDisplayIds(t){const e={};return this._strategy?(this._strategy.displayMap(t,t=>t,(t,s,r)=>{e[r]=t}),e):e}getFeatureObjectIdsForAggregate(t){return this._strategy?this._strategy.getFeatureObjectIdsForAggregate(t):[]}onSubscribe(t){this._strategy?.onSubscribe(t)}onUnsubscribe(t){this._strategy?.onUnsubscribe(t)}requiresInvalidation(){return this._strategy?.requiresInvalidation()??!1}async update(t,s,r,i,o){const n=t.processor,h=e(this._schema?.storage,n.storage),u=e(this._schema?.mesh.properties,n.mesh.properties),p=e(this._schema?.mesh.factory,n.mesh.factory),y=e(this._schema?.mesh.strategy,n.mesh.strategy),d=w(this._schema?.expressionProperties,n.expressionProperties),_=d.some(t=>this._attributeStore.hasArcadeDependency(t)),l=d.some(t=>this._factory?.hasArcadeDependency(t)??!1),m=d.some(t=>this._strategy?.hasArcadeDependency(t))||this._strategy?.isAggregate&&_,b=l||m,
|
|
5
|
+
import has from"../../../../core/has.js";import{destroyMaybe as t}from"../../../../core/maybe.js";import{notDeepEqual as e}from"../../../../core/object.js";import{throwIfNotAbortError as s,throwIfAborted as r,after as i}from"../../../../core/promiseUtils.js";import{diff as a}from"../../../../core/accessorSupport/diffUtils.js";import{ignoreConnectionErrors as o}from"../../../../core/workers/utils.js";import{MultiTileMeshData as n}from"../../engine/webgl/mesh/MultiTileMeshData.js";import{FeatureMeshFactory as c}from"../../engine/webgl/mesh/factories/FeatureMeshFactory.js";import{ResourceProxy as h}from"../../engine/webgl/mesh/factories/ResourceProxy.js";import{MeshWriterRegistry as u}from"../../engine/webgl/shaderGraph/techniques/mesh/MeshWriterRegistry.js";import{MatcherContext as g}from"../../engine/webgl/util/MatcherContext.js";import{ProcessorTileMessageQueue as p}from"./ProcessorTileMessageQueue.js";import{BinningStrategy as y}from"./processor/BinningStrategy.js";import{ClusterStrategy as d}from"./processor/ClusterStrategy.js";import{FeatureUpdateStrategy as _}from"./processor/FeatureUpdateStrategy.js";import{TrackStrategy as l}from"./processor/TrackStrategy.js";import{AttributeStore as m}from"./support/AttributeStore.js";import{ComputedAttributeStorage as f}from"./support/ComputedAttributeStorage.js";class b{constructor(t,e){this._connection=t,this._source=e,this._version=1,this._registry=new u,this._proxy=new h({fetch:(t,e)=>this._connection.layerView.fetch(t,e),fetchDictionary:(t,e)=>this._connection.layerView.fetchDictionary(t,e)}),this._attributeStore=new m({isLocal:!1,update:t=>o(this._connection.container.updateAttributeView(t))})}destroy(){this._proxy.destroy(),this._strategy?.destroy(),this._attributeStore.destroy()}get aggregateQueryEngine(){return this._strategy?.aggregateQueryEngine}get usedMemory(){let t=0;return t+=this._attributeStore.usedMemory,this._strategy&&(t+=this._strategy.usedMemory),t}get version(){return this._version}getDisplayFeatures(t){return this._strategy?this._strategy.getDisplayFeatures(t):{features:[],aggregates:[],tracks:[]}}getDisplayIds(t){const e={};return this._strategy?(this._strategy.displayMap(t,t=>t,(t,s,r)=>{e[r]=t}),e):e}getFeatureObjectIdsForAggregate(t){return this._strategy?this._strategy.getFeatureObjectIdsForAggregate(t):[]}onSubscribe(t){this._strategy?.onSubscribe(t)}onUnsubscribe(t){this._strategy?.onUnsubscribe(t)}requiresInvalidation(){return this._strategy?.requiresInvalidation()??!1}async update(t,s,r,i,o){const n=t.processor,h=e(this._schema?.storage,n.storage),u=e(this._schema?.mesh.properties,n.mesh.properties),p=e(this._schema?.mesh.factory,n.mesh.factory),y=e(this._schema?.mesh.strategy,n.mesh.strategy),d=w(this._schema?.expressionProperties,n.expressionProperties),_=d.some(t=>this._attributeStore.hasArcadeDependency(t)),l=d.some(t=>this._factory?.hasArcadeDependency(t)??!1),m=d.some(t=>this._strategy?.hasArcadeDependency(t))||this._strategy?.isAggregate&&_,b=l||m,j=u||p||y;if(!(h||j||(l||_||m))&&!i)return!1;has("esri-2d-update-debug")&&console.debug(`Version[${this._version}] SymbolProcessor.update`,{changes:a(this._schema,n),schema:n}),this._schema=n;const I=new f({fields:this._source.metadata.fieldsIndex,spatialReference:this._source.metadata.outSpatialReference}),x={currentUser:n.mesh.properties.currentUser};if((h||j||_)&&(await this._attributeStore.update(n.storage,I,this._source.metadata,s),this._strategy?.invalidateAttributeData(S(n))),!i&&!j&&!b)return!1;(y||u||b)&&await this._updateStrategy(n.mesh.strategy,o,S(n),x),this._updateSortKey(I,"sortKey"in n.mesh.properties?n.mesh.properties.sortKey:null);const v="dictionary"===n.mesh.factory.symbology.type?n.mesh.factory.symbology.fieldMap:null,M=new g(I,this._proxy,r,this._registry,v);return(p||"dictionary"===n.mesh.factory.symbology.type)&&(this._factory=await c.create(M,n.mesh.factory)),this._version=s,!0}async applyOverrideUpdate(t){if(!this._strategy)return;const e=this._strategy.applyOverrideUpdate(t);for await(const r of e)try{await this._process(r)}catch(s){}}async updateChunks(){await this._doUpdateChunks(),this._strategy?.afterUpdateChunks()}async removeChunks(t){this._strategy?.removeChunks(t),this._attributeStore.incrementDisplayIdGeneration()}updateHighlight({highlights:t}){if(!this._strategy||!this._strategy.hasSubscribers)return void this._attributeStore.setHighlight(t.map(({objectId:t,highlightFlags:e})=>({objectId:t,highlightFlags:e,displayId:-1})),t);const e=this._strategy.displayMap(t,({objectId:t})=>t,(t,{highlightFlags:e},s)=>({objectId:s,displayId:t,highlightFlags:e}));this._attributeStore.setHighlight(e,t)}invalidate(){this._strategy&&this._strategy.invalidate()}async _doUpdateChunks(){if(!this._strategy)return;const t=this._strategy.updateChunks(),e=[],r=new Map;for await(const a of t){let t=r.get(a.id);null==t&&(t=new p({concurrency:16,process:t=>this._process(t)}),r.set(a.id,t));const i=t.push(a).catch(t=>s(t));e.push(i)}try{await Promise.all(e)}catch(i){}has("esri-2d-update-debug")&&console.log("SendUpdates"),this._attributeStore.sendUpdates(),has("esri-2d-update-debug")&&console.log("SendUpdates.await")}async _updateStrategy(t,e,s,r){switch(this._strategy?.destroy(),t.type){case"feature":this._strategy=new _(this._source,this._attributeStore,s,r);break;case"binning":this._strategy=await y.create(t,this._source,this._attributeStore,s,r);break;case"cluster":this._strategy=await d.create(this._connection,t,this._source,this._attributeStore,s,r);break;case"track":this._strategy=await l.create(t,this._source,this._attributeStore,s,r)}for(const i of e)this._strategy.onSubscribe(i)}async _updateSortKey(e,s){if(this._sortInfo=t(this._sortInfo?.computed),null!=s){const t=s.byRenderer?null:await e.createComputedField(s);this._sortInfo={...s,computed:t}}}async _process(t){const e=t.subscription;if(has("esri-2d-update-debug")){const s=e.tile;console.debug(`Version[${this._version}] Tile[${s.key.id}, end=${t.end}] Processor._process`)}const s={currentUser:this._schema?.mesh.properties.currentUser};await this._fetchResources(t,s),r(e.signal);const i=await this._write(t,e.tile.createArcadeEvaluationOptions(S(this._schema)),s),a=e.tile.tileInfoView.getLODInfoAt(e.tile.key);r(e.signal);const{message:o,transferList:n}=i.serialize(a),c={objectIdMap:null,inner:t.createMessage(o,this._version,this._attributeStore.epoch)};if(this._schema?.mesh.properties.returnMeshObjectId){c.objectIdMap={};const e=t.reader?.getCursor();if(e)for(;e.next();)c.objectIdMap[e.getDisplayId()]=e.getObjectId()}if(r(e.signal),await this._connection.container.onMessage(c,{signal:e.signal,transferList:n}),this._attributeStore.sendUpdates(),has("esri-2d-update-debug")){const s=e.tile;console.debug(`Version[${this._version}] Tile[${s.key.id}, end=${t.end}] Processor._process.await`)}}async _fetchResources(t,e){await this._fetchMatcherResources(t),await this._fetchWriterResources(t,e)}async _fetchMatcherResources(t){if(t.reader)return this._factory.enqueueMatcherRequests(this._proxy,t.reader)}async _fetchWriterResources(t,e){if(!t.reader)return;const s=t.reader.getCursor(),r=t.subscription.tile.createArcadeEvaluationOptions(S(this._schema));for(;s.next();)this._factory.enqueueWriterRequests(this._proxy,s,r,e);await this._proxy.fetchEnqueuedResources()}async _write(t,e,s){const a=t.subscription.tile,o=t.reader?.getCursor(),c=o?.getSize()??0,h=a.tileInfoView.tileInfo.isWrappable,u=a.tileInfoView.spatialReference.isWGS84,g=new n(a.key,this._strategy.enablePixelBuffering,h,u,c);if(!o)return g;const p=a.createArcadeEvaluationOptions(S(this._schema));let y=0;for(;o.next();){++y%1e3||(await i(0),r(t.subscription));const n=this._getSortKeyValue(o,e);g.entityStart(o.getDisplayId(),n);try{this._factory.write(g,this._proxy,o,p,s,a.level)}catch(d){}g.entityEnd()}return g}_getSortKeyValue(t,e){if(!this._sortInfo)return 0;const{computed:s,order:r,byRenderer:i}=this._sortInfo,a=i?this._factory.getSortKey(t,e):s?.read(t,e);return null==a||isNaN(a)?0:a*("asc"===r?-1:1)}}function w(t,e){const s=[];return t?.timeExtent?.start===e.timeExtent?.start&&t?.timeExtent?.end===e.timeExtent?.end||s.push("timeProperties"),s}function S(t){const{timeZone:e}=t?.mesh.properties??{},{timeExtent:s}=t?.expressionProperties??{};return{timeZone:e,timeExtent:s}}export{b 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../../../../../core/ArrayPool.js";import{create as e,toExtent as i}from"../../../../../geometry/support/aaBoundingRect.js";import{normalizeTransform as s}from"../../../../../geometry/support/quantizationUtils.js";import o from"../../../../../rest/support/QuantizationParameters.js";import{createArcadeEvaluationOptions as
|
|
5
|
+
import t from"../../../../../core/ArrayPool.js";import{create as e,toExtent as i}from"../../../../../geometry/support/aaBoundingRect.js";import{normalizeTransform as s}from"../../../../../geometry/support/quantizationUtils.js";import o from"../../../../../rest/support/QuantizationParameters.js";import{createArcadeEvaluationOptions as r}from"./arcadeUtils.js";import n from"../../../tiling/TileKey.js";class a{constructor(t,i){this.key=new n(0,0,0,0),this.bounds=e(),this.objectIds=new Set,this.key.set(i);const s=t.getLODInfoAt(this.key);this.tileInfoView=t,this.tileInfoView.getTileBounds(this.bounds,this.key,!0),this.resolution=s.resolution,this.level=s.level,this.scale=s.scale,this.minScale=t.zoomToScale(s.level-1),this.maxScale=t.zoomToScale(s.level+1)}get lod(){return this.tileInfoView.getLODInfoAt(this.key)}get id(){return this.key.id}get extent(){const[t,e,i,s]=this.bounds;return{xmin:t,ymin:e,xmax:i,ymax:s}}get hydratedExtent(){return i(this.bounds,this.tileInfoView.spatialReference)}get transform(){return{originPosition:"upperLeft",scale:[this.resolution,this.resolution],translate:[this.bounds[0],this.bounds[3]]}}get normalizedTransform(){return s(this.transform)}createArcadeEvaluationOptions(t){return r(this.scale,t)}createChildTiles(){const e=this.key.getChildKeys(),i=t.acquire();for(let t=0;t<e.length;t++)i[t]=new a(this.tileInfoView,e[t]);return i}getQuantizationParameters(){return o.fromJSON({mode:"view",originPosition:"upperLeft",tolerance:this.resolution,extent:{xmin:this.bounds[0],ymin:this.bounds[1],xmax:this.bounds[2],ymax:this.bounds[3],spatialReference:this.tileInfoView.spatialReference}})}}export{a as Tile};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import i from"../../../../core/Logger.js";import{assertIsSome as s}from"../../../../core/maybe.js";import{debounce as r,isAbortError as a}from"../../../../core/promiseUtils.js";import{property as o,subclass as l}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as n}from"../../../../core/support/UpdatingHandles.js";import h from"../../../../geometry/Extent.js";import c from"../../../../geometry/Point.js";import{update as u,unregister as d,getRasterId as p,register as y}from"../../../../layers/raster/datasets/RawBlockCache.js";import{getWorldWidth as m,computeProjectedScales as g}from"../../../../layers/raster/functions/rasterProjectionHelper.js";import _ from"../../../../layers/support/PixelBlock.js";import f from"../../../../layers/support/TileInfo.js";import b from"../../tiling/TileInfoView.js";import"../../tiling/TileKey.js";import w from"../../tiling/TileQueue.js";import P from"../../tiling/TileStrategy.js";import{tileSize as I}from"../../engine/webgl/definitions.js";import{TaskPriority as R}from"../../../support/Scheduler.js";import{getWebGLCapabilities as U}from"../../../webgl/capabilities.js";const C=[0,0];let S=class extends t{constructor(){super(...arguments),this._updatingHandles=new n,this._emptyTilePixelBlock=null,this._tileStrategy=null,this._tileInfoView=null,this._fetchQueue=null,this._blockCacheRegistryUrl=null,this._blockCacheRegistryId=null,this._srcResolutions=[],this.previousLOD=null,this._needBlockCacheUpdate=!1,this._globalSymbolizerParams=null,this._symbolizerParams=null,this._abortController=null,this._isCustomTilingScheme=!1,this._maxIndexedColormapSize=0,this._rasterFunctionState="na",this._globalUpdateRequested=!1,this.attached=!1,this.timeExtent=null,this.redrawOrRefetch=r(async(e={})=>{const t=this._rasterFunctionState,i=e.reprocess||"gpu"===t&&!this.canUseWebGLForProcessing||"cpu"===t&&this.canUseWebGLForProcessing;if(i&&(await this._updatingHandles.addPromise(this.layer.updateRasterFunction()),this.updateRasterFunctionParameters()),!this.previousLOD||this.layerView.suspended)return;const s=this._rasterFunctionState,{type:r}=this;return e.refetch||"raster"!==r&&!!i||"cpu"===s||"cpu"===t?this._updatingHandles.addPromise(this.doRefresh()):this._updatingHandles.addPromise(this._redrawImage(e.signal))})}destroy(){this._updatingHandles.destroy()}get canUseWebGLForProcessing(){return!1}get canUseLocalSymbolizerParams(){return(this.canUseWebGLForProcessing||"rasterVF"===this.type)&&!this.layerView.hasTilingEffects}get isCPUBasedDRA(){const{renderer:e}=this.layer;return"raster-stretch"===e?.type&&e.dynamicRangeAdjustment&&(!this.canUseWebGLForProcessing||!("min-max"===e.stretchType||"standard-deviation"===e.stretchType))}get useWebGLForProcessing(){return this._get("useWebGLForProcessing")??!0}set useWebGLForProcessing(e){this._set("useWebGLForProcessing",e)}get useProgressiveUpdate(){return this._get("useProgressiveUpdate")??!0}set useProgressiveUpdate(e){if(this._tileStrategy&&this.useProgressiveUpdate!==e){this._tileStrategy.destroy(),this.container.removeAllChildren();const t=this._getCacheSize(e);this._tileStrategy=new P({cachePolicy:"purge",acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),cacheSize:t,tileInfoView:this._tileInfoView}),this._set("useProgressiveUpdate",e),this.layerView.requestUpdate()}}update(e){this._fetchQueue.pause(),this._fetchQueue.state=e.state,this._tileStrategy.update(e),this._fetchQueue.resume();const{extent:t,resolution:i,scale:s}=e.state,r=this._tileInfoView.getClosestInfoForScale(s);if(this.layer.raster){if(!this.useProgressiveUpdate||this._needBlockCacheUpdate){const e=this._srcResolutions[r.level],s="toJSON"in t?t:h.fromJSON(t);u(this._blockCacheRegistryUrl,this._blockCacheRegistryId,s,i,e,this.layer.raster.ioConfig.sampling)}this._needBlockCacheUpdate=!1,this.previousLOD?.level!==r.level&&(this.previousLOD=r,null!=this._symbolizerParams&&this.canUseLocalSymbolizerParams&&this._updateSymbolizerParams(),this._tileStrategy.updateCacheSize(0))}}moveEnd(){!this.isCPUBasedDRA&&this.useProgressiveUpdate||(this._abortController&&this._abortController.abort(),this._abortController=new AbortController,0===this._fetchQueue.length&&this._redrawImage(this._abortController.signal).then(()=>{this._globalUpdateRequested=!1,this.layerView.requestUpdate()}));const e=this._getCacheSize(this.useProgressiveUpdate);this._tileStrategy.updateCacheSize(e),this.layerView.requestUpdate()}get updating(){return this._globalUpdateRequested||this._updatingHandles?.updating}attach(){const e=U();this._maxIndexedColormapSize=4*(e.maxTextureSize||4096),this._initializeTileInfo(),this._tileInfoView=new b(this.layerView.tileInfo,this.layerView.fullExtent);const t=this._computeFetchConcurrency();this._fetchQueue=new w({tileInfoView:this._tileInfoView,concurrency:t,process:(e,t)=>this._fetchTile(e,t),priority:R.MAPVIEW_FETCH_QUEUE,scheduler:this.scheduler});const i=this._getCacheSize(this.useProgressiveUpdate);this._tileStrategy=new P({cachePolicy:"purge",acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),cacheSize:i,tileInfoView:this._tileInfoView}),this._updateBlockCacheRegistry()}detach(){this._tileStrategy.destroy(),this._fetchQueue.clear(),this.container.removeAllChildren(),this._fetchQueue=this._tileStrategy=this._tileInfoView=null,d(this._blockCacheRegistryUrl,this._blockCacheRegistryId),this._blockCacheRegistryUrl=this._blockCacheRegistryId=null}acquireTile(e){const t=this.container.createTile(e);return this._updatingHandles.addPromise(this._enqueueTileFetch(t)),this.layerView.requestUpdate(),this._needBlockCacheUpdate=!0,this._globalUpdateRequested=this.isCPUBasedDRA||!this.useProgressiveUpdate,t}releaseTile(e){this._fetchQueue.abort(e.key.id),this.container.removeChild(e),e.once("detach",()=>{e.destroy(),this.layerView.requestUpdate()}),this.layerView.requestUpdate()}createEmptyTilePixelBlock(e=null){const t=null==e||e.join(",")===this._tileInfoView.tileInfo.size.join(",");if(t&&null!=this._emptyTilePixelBlock)return this._emptyTilePixelBlock;e=e||this._tileInfoView.tileInfo.size;const[i,s]=e,r=new _({width:i,height:s,pixels:[new Uint8Array(i*s)],mask:new Uint8Array(i*s),pixelType:"u8"});return t&&(this._emptyTilePixelBlock=r),r}_getBandIds(){if(this.container&&(!("rasterFunctionChain"in this.container)||!this.container.rasterFunctionChain))return this.layer.bandIds;const{bandIds:e,raster:t}=this.layer,i="rasterFunction"in t?t.rasterFunction.rawInputBandIds:null;return e?.length&&i?.length&&1!==t.rasterInfo.bandCount?e.map(e=>i[Math.min(e,i.length-1)]):"rasterFunction"in t?i:e}updateRasterFunctionParameters(){}_fetchTile(e,t){const i=this._getFetchOptions(e.level,t.signal);return this.fetchTile(e,i)}_getFetchOptions(e,t){const{canUseWebGLForProcessing:i}=this,{layerView:s}=this,{tileInfo:r}=s,a=!r.isWrappable&&null!=m(s.view.spatialReference),o=i&&this.layer.raster.hasUniqueSourceStorageInfo,{layer:l}=this.layerView,n=l.serviceRasterInfo?.storageInfo.isBsqTile?l.getRawDisplayBandIds():void 0;return{allowPartialFill:!0,datumTransformation:s.datumTransformation,interpolation:i?"nearest":this.layer.interpolation,registryId:this._blockCacheRegistryId,requestRawData:o,skipRasterFunction:"raster"===this.type&&null!=this.container.rasterFunctionChain,signal:t,srcResolution:this._srcResolutions[e],timeExtent:s.timeExtent,tileInfo:r,bandIds:n,disableWrapAround:a}}_getCacheSize(e){return e?40:0}_initializeTileInfo(){const{layerView:e}=this,t=e.view.spatialReference;if(this._canUseLayerLODs()){const{origin:i,lods:s}=this.layer.tileInfo,r=s.map(({scale:e})=>e),a=f.create({spatialReference:t,size:I,scales:r,origin:i});return e.set("tileInfo",a),void(this._srcResolutions=s.map(({resolution:e})=>({x:e,y:e})))}const{scales:i,srcResolutions:r,isCustomTilingScheme:a}=g(this.layer.serviceRasterInfo,t,{tileSize:I,alignGlobalDatasetWithAGOL:!0,limitToSrcResolution:!1}),o=f.create({spatialReference:t,size:I,scales:i}),l=0===o.origin.x;s(e.fullExtent);const{xmin:n,ymax:h}=e.fullExtent;(l||a&&o.origin.x>n)&&(o.origin=new c({x:n,y:h,spatialReference:t})),this._isCustomTilingScheme=a,e.set("tileInfo",o),this._srcResolutions=r??[]}_canUseLayerLODs(){const{layer:e,layerView:t}=this;if("Map"!==e.raster.tileType)return!1;const{lods:i}=e.tileInfo,s=t.view.constraints?.effectiveLODs;return s?.length===i.length&&s.every(({scale:e},t)=>Math.abs(e-i[t].scale)<.001)}_computeFetchConcurrency(){const{blockBoundary:e}=this.layer.serviceRasterInfo.storageInfo,t=e[e.length-1];return(t.maxCol-t.minCol+1)*(t.maxRow-t.minRow+1)>64?2:10}async _enqueueTileFetch(e,t){if(!this._fetchQueue.has(e.key.id)){try{let t=e.once("detach",()=>t=void 0);const r=await this._fetchQueue.push(e.key),o=this._getBandIds();let l=!this.useProgressiveUpdate||this.isCPUBasedDRA&&!this._globalSymbolizerParams;if(this._globalUpdateRequested&&!this.layerView.moving&&0===this._fetchQueue.length){l=!1;try{await this._redrawImage(this._abortController?.signal)}catch(s){a(s)&&i.getLogger(this).error(s)}this._globalUpdateRequested=!1}if(!t)return;this.canUseLocalSymbolizerParams&&null==this._symbolizerParams&&this._updateSymbolizerParams();const n=this._tileInfoView.getTileCoords(C,e.key),h=this._tileInfoView.getTileResolution(e.key);await this.updateTileSource(e,{source:r,symbolizerParams:this._symbolizerParams,globalSymbolizerParams:this._globalSymbolizerParams,suspended:l,bandIds:o,coords:n,resolution:h}),t&&(e.once("attach",()=>this.layerView.requestUpdate()),this.container.addChild(e),t.remove())}catch(s){a(s)||i.getLogger(this).error(s)}this.layerView.requestUpdate()}}async _redrawImage(e){if(!this.attached||0===this.container.children.length)return;if(await this.layer.updateRenderer(),this.isCPUBasedDRA?await this._updateGlobalSymbolizerParams(e):(this.canUseLocalSymbolizerParams&&this._updateSymbolizerParams(),this._globalSymbolizerParams=null),!this.attached||e?.aborted)return;const t=this.container.children.map(async t=>this.updateTileSymbolizerParameters(t,{local:this._symbolizerParams,global:this._globalSymbolizerParams},e));await Promise.allSettled(t),this.attached&&!e?.aborted&&this.container.requestRender()}async _updateGlobalSymbolizerParams(e){const t=this._getFetchOptions(this.previousLOD.level,e),i=await this.layer.fetchPixels(this.layerView.view.extent,this.layerView.view.width,this.layerView.view.height,{...t,interpolation:"nearest",requestRawData:!1,skipRasterFunction:!1});if(!i?.pixelBlock)return;const{resolution:s}=this.previousLOD,{isBsqTile:r}=this.layer.raster.rasterInfo.storageInfo,a=r?null:this._getBandIds(),o=this.layer.symbolizer.generateWebGLParameters({pixelBlock:i.pixelBlock.extractBands(a),isGCS:this.layerView.view.spatialReference.isGeographic,resolution:{x:s,y:s},bandIds:a});!this.canUseWebGLForProcessing&&o&&"stretch"===o.type&&"raster-stretch"===this.layer.renderer?.type&&(o.factor=o.factor.map(e=>255*e),o.minOutput=Math.round(255*o.minOutput),o.maxOutput=Math.round(255*o.maxOutput)),this._globalSymbolizerParams=o}_updateSymbolizerParams(){const{resolution:e}=this.previousLOD,t=this._getBandIds();this._symbolizerParams=this.layer.symbolizer.generateWebGLParameters({pixelBlock:null,isGCS:this.layerView.view.spatialReference.isGeographic,resolution:{x:e,y:e},bandIds:t})}_updateBlockCacheRegistry(e=!1){const{layer:t,layerView:i}=this,{raster:s}=t,{multidimensionalDefinition:r}=t.normalizeRasterFetchOptions({multidimensionalDefinition:t.multidimensionalDefinition,timeExtent:i.timeExtent}),a=s.rasterInfo.multidimensionalInfo?s.getSliceIndex(r):null,o=s.rasterInfo.storageInfo.isBsqTile?t.getRawDisplayBandIds():null,l=p(s.rasterId,a,o);if(l!==this._blockCacheRegistryUrl){if(null!=this._blockCacheRegistryUrl&&d(this._blockCacheRegistryUrl,this._blockCacheRegistryId),this._blockCacheRegistryId=y(l,s.rasterInfo),e){const{view:e}=i,t=this._tileInfoView.getClosestInfoForScale(e.scale),r=this._srcResolutions[t.level];u(l,this._blockCacheRegistryId,e.extent,e.resolution,r,s.ioConfig.sampling)}this._blockCacheRegistryUrl=l}}async doRefresh(){if(!this.attached||!this.previousLOD||this.layerView.suspended)return;await this.layer.updateRenderer(),this.canUseLocalSymbolizerParams&&this._updateSymbolizerParams(),this._updateBlockCacheRegistry(!0),this._fetchQueue.reset();const e=[];this._globalUpdateRequested=this.isCPUBasedDRA||!this.useProgressiveUpdate,this._tileStrategy.refresh(t=>e.push(this._enqueueTileFetch(t))),await this._updatingHandles.addPromise(Promise.allSettled(e))}};e([o()],S.prototype,"_globalUpdateRequested",void 0),e([o()],S.prototype,"attached",void 0),e([o()],S.prototype,"canUseWebGLForProcessing",null),e([o()],S.prototype,"canUseLocalSymbolizerParams",null),e([o()],S.prototype,"isCPUBasedDRA",null),e([o()],S.prototype,"container",void 0),e([o()],S.prototype,"layer",void 0),e([o()],S.prototype,"layerView",void 0),e([o()],S.prototype,"scheduler",void 0),e([o()],S.prototype,"type",void 0),e([o()],S.prototype,"useWebGLForProcessing",null),e([o()],S.prototype,"useProgressiveUpdate",null),e([o()],S.prototype,"timeExtent",void 0),e([o()],S.prototype,"updating",null),S=e([l("esri.views.2d.layers.imagery.BaseImageryTileSubView2D")],S);export{S as BaseImageryTileSubView2D};
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import i from"../../../../core/Logger.js";import{assertIsSome as s}from"../../../../core/maybe.js";import{debounce as r,isAbortError as a}from"../../../../core/promiseUtils.js";import{property as o,subclass as l}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as n}from"../../../../core/support/UpdatingHandles.js";import h from"../../../../geometry/Extent.js";import c from"../../../../geometry/Point.js";import{update as u,unregister as d,getRasterId as p,register as y}from"../../../../layers/raster/datasets/RawBlockCache.js";import{getWorldWidth as m,computeProjectedScales as g}from"../../../../layers/raster/functions/rasterProjectionHelper.js";import _ from"../../../../layers/support/PixelBlock.js";import f from"../../../../layers/support/TileInfo.js";import b from"../../tiling/TileInfoView.js";import"../../tiling/TileKey.js";import w from"../../tiling/TileQueue.js";import P from"../../tiling/TileStrategy.js";import{tileSize as I}from"../../engine/webgl/definitions.js";import{TaskPriority as R}from"../../../support/Scheduler.js";import{getWebGLCapabilities as U}from"../../../webgl/capabilities.js";const C=[0,0];let S=class extends t{constructor(){super(...arguments),this._updatingHandles=new n,this._emptyTilePixelBlock=null,this._tileStrategy=null,this._tileInfoView=null,this._fetchQueue=null,this._blockCacheRegistryUrl=null,this._blockCacheRegistryId=null,this._srcResolutions=[],this.previousLOD=null,this._needBlockCacheUpdate=!1,this._globalSymbolizerParams=null,this._symbolizerParams=null,this._abortController=null,this._isCustomTilingScheme=!1,this._maxIndexedColormapSize=0,this._rasterFunctionState="na",this._globalUpdateRequested=!1,this.attached=!1,this.timeExtent=null,this.redrawOrRefetch=r(async(e={})=>{const t=this._rasterFunctionState,i=e.reprocess||"gpu"===t&&!this.canUseWebGLForProcessing||"cpu"===t&&this.canUseWebGLForProcessing;if(i&&(await this._updatingHandles.addPromise(this.layer.updateRasterFunction()),this.updateRasterFunctionParameters()),!this.previousLOD||this.layerView.suspended)return;const s=this._rasterFunctionState,{type:r}=this;return e.refetch||"raster"!==r&&!!i||"cpu"===s||"cpu"===t?this._updatingHandles.addPromise(this.doRefresh()):this._updatingHandles.addPromise(this._redrawImage(e.signal))})}destroy(){this._updatingHandles.destroy()}get canUseWebGLForProcessing(){return!1}get canUseLocalSymbolizerParams(){return(this.canUseWebGLForProcessing||"rasterVF"===this.type)&&!this.layerView.hasTilingEffects}get isCPUBasedDRA(){const{renderer:e}=this.layer;return"raster-stretch"===e?.type&&e.dynamicRangeAdjustment&&(!this.canUseWebGLForProcessing||!("min-max"===e.stretchType||"standard-deviation"===e.stretchType))}get useWebGLForProcessing(){return this._get("useWebGLForProcessing")??!0}set useWebGLForProcessing(e){this._set("useWebGLForProcessing",e)}get useProgressiveUpdate(){return this._get("useProgressiveUpdate")??!0}set useProgressiveUpdate(e){if(this._tileStrategy&&this.useProgressiveUpdate!==e){this._tileStrategy.destroy(),this.container.removeAllChildren();const t=this._getCacheSize(e);this._tileStrategy=new P({cachePolicy:"purge",acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),cacheSize:t,tileInfoView:this._tileInfoView}),this._set("useProgressiveUpdate",e),this.layerView.requestUpdate()}}update(e){this._fetchQueue.pause(),this._fetchQueue.state=e.state,this._tileStrategy.update(e),this._fetchQueue.resume();const{extent:t,resolution:i,scale:s}=e.state,r=this._tileInfoView.getClosestInfoForScale(s);if(this.layer.raster){if(!this.useProgressiveUpdate||this._needBlockCacheUpdate){const e=this._srcResolutions[r.level],s="toJSON"in t?t:h.fromJSON(t);u(this._blockCacheRegistryUrl,this._blockCacheRegistryId,s,i,e,this.layer.raster.ioConfig.sampling)}this._needBlockCacheUpdate=!1,this.previousLOD?.level!==r.level&&(this.previousLOD=r,null!=this._symbolizerParams&&this.canUseLocalSymbolizerParams&&this._updateSymbolizerParams(),this._tileStrategy.updateCacheSize(0))}}moveEnd(){!this.isCPUBasedDRA&&this.useProgressiveUpdate||(this._abortController&&this._abortController.abort(),this._abortController=new AbortController,0===this._fetchQueue.length&&this._redrawImage(this._abortController.signal).then(()=>{this._globalUpdateRequested=!1,this.layerView.requestUpdate()}));const e=this._getCacheSize(this.useProgressiveUpdate);this._tileStrategy.updateCacheSize(e),this.layerView.requestUpdate()}get updating(){return this._globalUpdateRequested||this._updatingHandles?.updating}attach(){const e=U();this._maxIndexedColormapSize=4*(e.maxTextureSize||4096),this._initializeTileInfo(),this._tileInfoView=new b(this.layerView.tileInfo,this.layerView.fullExtent);const t=this._computeFetchConcurrency();this._fetchQueue=new w({tileInfoView:this._tileInfoView,concurrency:t,process:(e,t)=>this._fetchTile(e,t),priority:R.MAPVIEW_FETCH_QUEUE,scheduler:this.scheduler});const i=this._getCacheSize(this.useProgressiveUpdate);this._tileStrategy=new P({cachePolicy:"purge",acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),cacheSize:i,tileInfoView:this._tileInfoView}),this._updateBlockCacheRegistry()}detach(){this._tileStrategy.destroy(),this._fetchQueue.clear(),this.container.removeAllChildren(),this._fetchQueue=this._tileStrategy=this._tileInfoView=null,d(this._blockCacheRegistryUrl,this._blockCacheRegistryId),this._blockCacheRegistryUrl=this._blockCacheRegistryId=null}acquireTile(e){const t=this.container.createTile(e);return this._updatingHandles.addPromise(this._enqueueTileFetch(t)),this.layerView.requestUpdate(),this._needBlockCacheUpdate=!0,this._globalUpdateRequested=this.isCPUBasedDRA||!this.useProgressiveUpdate,t}releaseTile(e){this._fetchQueue.abort(e.key.id),this.container.removeChild(e),e.once("detach",()=>{e.destroy(),this.layerView.requestUpdate()}),this.layerView.requestUpdate()}createEmptyTilePixelBlock(e=null){const t=null==e||e.join(",")===this._tileInfoView.size.join(",");if(t&&null!=this._emptyTilePixelBlock)return this._emptyTilePixelBlock;e=e||this._tileInfoView.size;const[i,s]=e,r=new _({width:i,height:s,pixels:[new Uint8Array(i*s)],mask:new Uint8Array(i*s),pixelType:"u8"});return t&&(this._emptyTilePixelBlock=r),r}_getBandIds(){if(this.container&&(!("rasterFunctionChain"in this.container)||!this.container.rasterFunctionChain))return this.layer.bandIds;const{bandIds:e,raster:t}=this.layer,i="rasterFunction"in t?t.rasterFunction.rawInputBandIds:null;return e?.length&&i?.length&&1!==t.rasterInfo.bandCount?e.map(e=>i[Math.min(e,i.length-1)]):"rasterFunction"in t?i:e}updateRasterFunctionParameters(){}_fetchTile(e,t){const i=this._getFetchOptions(e.level,t.signal);return this.fetchTile(e,i)}_getFetchOptions(e,t){const{canUseWebGLForProcessing:i}=this,{layerView:s}=this,{tileInfo:r}=s,a=!r.isWrappable&&null!=m(s.view.spatialReference),o=i&&this.layer.raster.hasUniqueSourceStorageInfo,{layer:l}=this.layerView,n=l.serviceRasterInfo?.storageInfo.isBsqTile?l.getRawDisplayBandIds():void 0;return{allowPartialFill:!0,datumTransformation:s.datumTransformation,interpolation:i?"nearest":this.layer.interpolation,registryId:this._blockCacheRegistryId,requestRawData:o,skipRasterFunction:"raster"===this.type&&null!=this.container.rasterFunctionChain,signal:t,srcResolution:this._srcResolutions[e],timeExtent:s.timeExtent,tileInfo:r,bandIds:n,disableWrapAround:a}}_getCacheSize(e){return e?40:0}_initializeTileInfo(){const{layerView:e}=this,t=e.view.spatialReference;if(this._canUseLayerLODs()){const{origin:i,lods:s}=this.layer.tileInfo,r=s.map(({scale:e})=>e),a=f.create({spatialReference:t,size:I,scales:r,origin:i});return e.set("tileInfo",a),void(this._srcResolutions=s.map(({resolution:e})=>({x:e,y:e})))}const{scales:i,srcResolutions:r,isCustomTilingScheme:a}=g(this.layer.serviceRasterInfo,t,{tileSize:I,alignGlobalDatasetWithAGOL:!0,limitToSrcResolution:!1}),o=f.create({spatialReference:t,size:I,scales:i}),l=0===o.origin.x;s(e.fullExtent);const{xmin:n,ymax:h}=e.fullExtent;(l||a&&o.origin.x>n)&&(o.origin=new c({x:n,y:h,spatialReference:t})),this._isCustomTilingScheme=a,e.set("tileInfo",o),this._srcResolutions=r??[]}_canUseLayerLODs(){const{layer:e,layerView:t}=this;if("Map"!==e.raster.tileType)return!1;const{lods:i}=e.tileInfo,s=t.view.constraints?.effectiveLODs;return s?.length===i.length&&s.every(({scale:e},t)=>Math.abs(e-i[t].scale)<.001)}_computeFetchConcurrency(){const{blockBoundary:e}=this.layer.serviceRasterInfo.storageInfo,t=e[e.length-1];return(t.maxCol-t.minCol+1)*(t.maxRow-t.minRow+1)>64?2:10}async _enqueueTileFetch(e,t){if(!this._fetchQueue.has(e.key.id)){try{let t=e.once("detach",()=>t=void 0);const r=await this._fetchQueue.push(e.key),o=this._getBandIds();let l=!this.useProgressiveUpdate||this.isCPUBasedDRA&&!this._globalSymbolizerParams;if(this._globalUpdateRequested&&!this.layerView.moving&&0===this._fetchQueue.length){l=!1;try{await this._redrawImage(this._abortController?.signal)}catch(s){a(s)&&i.getLogger(this).error(s)}this._globalUpdateRequested=!1}if(!t)return;this.canUseLocalSymbolizerParams&&null==this._symbolizerParams&&this._updateSymbolizerParams();const n=this._tileInfoView.getTileCoords(C,e.key),h=this._tileInfoView.getTileResolution(e.key);await this.updateTileSource(e,{source:r,symbolizerParams:this._symbolizerParams,globalSymbolizerParams:this._globalSymbolizerParams,suspended:l,bandIds:o,coords:n,resolution:h}),t&&(e.once("attach",()=>this.layerView.requestUpdate()),this.container.addChild(e),t.remove())}catch(s){a(s)||i.getLogger(this).error(s)}this.layerView.requestUpdate()}}async _redrawImage(e){if(!this.attached||0===this.container.children.length)return;if(await this.layer.updateRenderer(),this.isCPUBasedDRA?await this._updateGlobalSymbolizerParams(e):(this.canUseLocalSymbolizerParams&&this._updateSymbolizerParams(),this._globalSymbolizerParams=null),!this.attached||e?.aborted)return;const t=this.container.children.map(async t=>this.updateTileSymbolizerParameters(t,{local:this._symbolizerParams,global:this._globalSymbolizerParams},e));await Promise.allSettled(t),this.attached&&!e?.aborted&&this.container.requestRender()}async _updateGlobalSymbolizerParams(e){const t=this._getFetchOptions(this.previousLOD.level,e),i=await this.layer.fetchPixels(this.layerView.view.extent,this.layerView.view.width,this.layerView.view.height,{...t,interpolation:"nearest",requestRawData:!1,skipRasterFunction:!1});if(!i?.pixelBlock)return;const{resolution:s}=this.previousLOD,{isBsqTile:r}=this.layer.raster.rasterInfo.storageInfo,a=r?null:this._getBandIds(),o=this.layer.symbolizer.generateWebGLParameters({pixelBlock:i.pixelBlock.extractBands(a),isGCS:this.layerView.view.spatialReference.isGeographic,resolution:{x:s,y:s},bandIds:a});!this.canUseWebGLForProcessing&&o&&"stretch"===o.type&&"raster-stretch"===this.layer.renderer?.type&&(o.factor=o.factor.map(e=>255*e),o.minOutput=Math.round(255*o.minOutput),o.maxOutput=Math.round(255*o.maxOutput)),this._globalSymbolizerParams=o}_updateSymbolizerParams(){const{resolution:e}=this.previousLOD,t=this._getBandIds();this._symbolizerParams=this.layer.symbolizer.generateWebGLParameters({pixelBlock:null,isGCS:this.layerView.view.spatialReference.isGeographic,resolution:{x:e,y:e},bandIds:t})}_updateBlockCacheRegistry(e=!1){const{layer:t,layerView:i}=this,{raster:s}=t,{multidimensionalDefinition:r}=t.normalizeRasterFetchOptions({multidimensionalDefinition:t.multidimensionalDefinition,timeExtent:i.timeExtent}),a=s.rasterInfo.multidimensionalInfo?s.getSliceIndex(r):null,o=s.rasterInfo.storageInfo.isBsqTile?t.getRawDisplayBandIds():null,l=p(s.rasterId,a,o);if(l!==this._blockCacheRegistryUrl){if(null!=this._blockCacheRegistryUrl&&d(this._blockCacheRegistryUrl,this._blockCacheRegistryId),this._blockCacheRegistryId=y(l,s.rasterInfo),e){const{view:e}=i,t=this._tileInfoView.getClosestInfoForScale(e.scale),r=this._srcResolutions[t.level];u(l,this._blockCacheRegistryId,e.extent,e.resolution,r,s.ioConfig.sampling)}this._blockCacheRegistryUrl=l}}async doRefresh(){if(!this.attached||!this.previousLOD||this.layerView.suspended)return;await this.layer.updateRenderer(),this.canUseLocalSymbolizerParams&&this._updateSymbolizerParams(),this._updateBlockCacheRegistry(!0),this._fetchQueue.reset();const e=[];this._globalUpdateRequested=this.isCPUBasedDRA||!this.useProgressiveUpdate,this._tileStrategy.refresh(t=>e.push(this._enqueueTileFetch(t))),await this._updatingHandles.addPromise(Promise.allSettled(e))}};e([o()],S.prototype,"_globalUpdateRequested",void 0),e([o()],S.prototype,"attached",void 0),e([o()],S.prototype,"canUseWebGLForProcessing",null),e([o()],S.prototype,"canUseLocalSymbolizerParams",null),e([o()],S.prototype,"isCPUBasedDRA",null),e([o()],S.prototype,"container",void 0),e([o()],S.prototype,"layer",void 0),e([o()],S.prototype,"layerView",void 0),e([o()],S.prototype,"scheduler",void 0),e([o()],S.prototype,"type",void 0),e([o()],S.prototype,"useWebGLForProcessing",null),e([o()],S.prototype,"useProgressiveUpdate",null),e([o()],S.prototype,"timeExtent",void 0),e([o()],S.prototype,"updating",null),S=e([l("esri.views.2d.layers.imagery.BaseImageryTileSubView2D")],S);export{S as BaseImageryTileSubView2D};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import has from"../../../../core/has.js";import{numberMaxFloat32 as t}from"../../../../core/mathUtils.js";import{property as r,subclass as
|
|
5
|
+
import{__decorate as e}from"tslib";import has from"../../../../core/has.js";import{numberMaxFloat32 as t}from"../../../../core/mathUtils.js";import{property as r,subclass as s}from"../../../../core/accessorSupport/decorators.js";import{isFunctionRaster as i}from"../../../../layers/raster/datasets/datasetUtils.js";import{getBytesPerPixel as n}from"../../../../layers/raster/formats/pixelRangeUtils.js";import{convertGeometryToMask as o}from"../../../../layers/raster/functions/clipUtils.js";import{maxMapSizeGpu as a}from"../../../../layers/raster/functions/pixelUtils.js";import{RasterTileContainer as l}from"../../engine/imagery/RasterTileContainer.js";import{BaseImageryTileSubView2D as c}from"./BaseImageryTileSubView2D.js";import{canUseMajorityInterpolationOnDataSource as p}from"../support/util.js";import{defaultColor as u}from"../../../support/HighlightDefaults.js";import{getHighlightName as d}from"../../../support/highlightOptionsUtils.js";const h=[1024,1024];let m=class extends c{constructor(){super(...arguments),this.type="raster"}get canUseWebGLForProcessing(){const{loaded:e,symbolizer:t}=this.layer;if(!e||!t)return!1;const r=t.lookup.colormapLut?.indexedColormap,s=r&&r.length>this._maxIndexedColormapSize,i=n(this.layer.serviceRasterInfo);return!(has("ios")&&i>4)&&this.useWebGLForProcessing&&t.canRenderInWebGL&&!s&&!("majority"===this.layer.interpolation&&p(this.layer))}attach(){super.attach(),this.container=new l(this._tileInfoView),this.container.isCustomTilingScheme=this._isCustomTilingScheme,this.updateRasterFunctionParameters()}detach(){super.detach(),this.container.removeAllChildren(),this.container=null}fetchTile(e,t){return this.layer.fetchTile(e.level,e.row,e.col,t)}updateRasterFunctionParameters(){const{raster:e,type:t}=this.layer,{container:r}=this;if("Function"!==e.datasetFormat||"wcs"===t)return r.rasterFunctionChain=null,r.children.forEach(e=>{const{bitmap:t}=e;t&&(t.suspended=!0,t.processed=!1,t.projected&&(t.invalidateTexture(),t.rasterTexture=null))}),void(this._rasterFunctionState="na");const s=this._rasterFunctionState,{rasterFunction:i,primaryRasters:n}=e,o=i.supportsGPU&&(!n||n.rasters.length<=1),a=o?i.flatWebGLFunctionChain:null,{renderer:l}=this.layer,c=!o||!a?.functions.length||"raster-stretch"===l?.type&&l.dynamicRangeAdjustment||!this.canUseWebGLForProcessing;r.rasterFunctionChain=c?null:this._addProjection(a);const p=null==i?"na":r.rasterFunctionChain?"gpu":"cpu",u=s===p||"na"===s&&"cpu"===p&&0===a?.functions?.length;r.children.forEach(e=>{const{bitmap:t}=e;t&&(t.suspended=!u,t.processed=!1,t.processedTexture=null)}),this._rasterFunctionState=p}async updateTileSource(e,t){const r=this._getBandIds(),s=this._getLayerInterpolation(),{canUseWebGLForProcessing:n}=this,{source:a,globalSymbolizerParams:l,suspended:c,coords:p,resolution:u}=t,d=this.isCPUBasedDRA?l:t.symbolizerParams,{bitmap:h}=e;if([h.x,h.y]=p,h.resolution=u,null!=a?.pixelBlock){const e={extent:a.extent,pixelBlock:a.pixelBlock,srcPixelSize:a.srcTilePixelSize};if(h.rawPixelData=e,n)h.source=a.pixelBlock,h.isRendereredSource=!1;else{const t=await this.layer.applyRenderer(e,"stretch"===l?.type?l:void 0);h.source=t,h.isRendereredSource=!0}h.symbolizerParameters=n?d:null,h.transformGrid=n?a.transformGrid:null}else{const e=this.createEmptyTilePixelBlock();h.source=e,h.symbolizerParameters=n?d:null,h.transformGrid=null}const{isBsqTile:m}=this.layer.raster.rasterInfo.storageInfo;h.bandIds=n&&!m?r:null,h.width=this._tileInfoView.size[0],h.height=this._tileInfoView.size[1],h.interpolation=s,h.suspended=c;const{raster:y}=this.layer;if(i(y)){const t=y.getClippingGeometry(this.layerView.view.spatialReference);if(t){const r=y.getTileExtentFromTileInfo(e.key.level,e.key.row,e.key.col,this._tileInfoView.tileInfo);r&&(h.mask=o({srcExtent:r,geometry:t,size:[h.width,h.height]}))}}h.invalidateTexture()}async updateTileSymbolizerParameters(e,t,r){const{local:s,global:i}=t,n=this._getBandIds(),o=this._getLayerInterpolation(),{canUseWebGLForProcessing:a}=this,{bitmap:l}=e,{rawPixelData:c}=l;a||null==c?(l.isRendereredSource&&null!=c&&(l.source=c.pixelBlock),l.isRendereredSource=!1):(l.source=await this.layer.applyRenderer(c,"stretch"===i?.type?i:void 0,{signal:r}),l.isRendereredSource=!0),l.symbolizerParameters=a?this.layerView.hasTilingEffects?i:s:null;const{isBsqTile:p}=this.layer.raster.rasterInfo.storageInfo;l.bandIds=a&&!p?n:null,l.interpolation=o,l.suspended=!1}updateHighlightOptions(e){if(!e.length)return void(this.container.pixelHighlights=void 0);const r=[],{highlights:s}=this.layerView.view;e.sort((e,t)=>s.findIndex(({name:e})=>e===d(t.options))-s.findIndex(({name:t})=>t===d(e.options)));for(const{target:i,options:n}of e){const{pixelRanges:e}=i,l=d(n),c=(s.find(e=>e.name===l)?.color??u).toUnitRGBA();if(Array.isArray(e)){const s=Array.from({length:2*a},()=>0);for(let t=0;t<e.length;t++)s[2*t]=e[t][0],s[2*t+1]=e[t][1];for(let r=e.length;r<a;r++)s[2*r]=t,s[2*r+1]=-t;const n=i.bandId??0;r.push({ranges:s,bandId:n,color:c,type:"single-band"})}else{const t="extent"===e.type?e:e.extent;if(!t)continue;const s=[t.xmin,t.xmax],n=[t.ymin,t.ymax],{xBandId:a,yBandId:l}=i,p={xRange:s,yRange:n,bandIds:[a,l],color:c,type:"xy-band"};"polygon"===e.type&&(p.maskSize=h,p.mask=o({srcExtent:t,geometry:e,size:h})),r.push(p)}}this.container.pixelHighlights=r}_getLayerInterpolation(){const{interpolation:e,renderer:t}=this.layer;if(!t)return e;const r=t.type;return"raster-colormap"===r||"unique-value"===r?"nearest":"raster-stretch"===t.type&&null!=t.colorRamp?"bilinear"===e||"cubic"===e?"bilinear":"nearest":e}_addProjection(e){return e?.functions?.length&&!e.hasFocalFunction&&e.functions.unshift({name:"Reproject",parameters:{targetImageSize:this._tileInfoView.size,requireNNEdge:e.isSourceSingleBand},pixelType:"f32",id:0,isNoopProcess:!1}),e}};e([r()],m.prototype,"canUseWebGLForProcessing",null),e([r()],m.prototype,"container",void 0),e([r()],m.prototype,"layer",void 0),e([r()],m.prototype,"type",void 0),m=e([s("esri.views.2d.layers.imagery.ImageryTileView2D")],m);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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{watch as t}from"../../../../core/reactiveUtils.js";import{property as i,subclass as r}from"../../../../core/accessorSupport/decorators.js";import{sampleVectorField as
|
|
5
|
+
import{__decorate as e}from"tslib";import{watch as t}from"../../../../core/reactiveUtils.js";import{property as i,subclass as r}from"../../../../core/accessorSupport/decorators.js";import{sampleVectorField as s}from"../../../../layers/raster/functions/vectorFieldUtils.js";import{RasterVFTileContainer as l}from"../../engine/imagery/RasterVFTileContainer.js";import{BaseImageryTileSubView2D as o}from"./BaseImageryTileSubView2D.js";let a=class extends o{constructor(){super(...arguments),this._handle=null,this.type="rasterVF"}async fetchTile(e,t){t={...t,interpolation:"nearest",requestProjectedLocalDirections:!0};const i=await this.layer.fetchTile(e.level,e.row,e.col,t);return"vector-magdir"===this.layer.serviceRasterInfo?.dataType&&i?.pixelBlock&&(i.pixelBlock=await this.layer.convertVectorFieldData(i.pixelBlock,"vector-magdir",t)),i}updateTileSource(e,t){const i=t.symbolizerParams,{tileData:r}=e;r.key=e.key,r.width=this._tileInfoView.size[0],r.height=this._tileInfoView.size[1];const{symbolTileSize:s}=i,{source:l}=t;if(r.offset=this._getTileSymbolOffset(r.key,s),null!=l?.pixelBlock){const e={extent:l.extent,pixelBlock:l.pixelBlock};r.rawPixelData=e,r.symbolizerParameters=i,r.source=this._sampleVectorFieldData(l.pixelBlock,i,r.offset)}else{const e=[Math.round((this._tileInfoView.size[0]-r.offset[0])/s),Math.round((this._tileInfoView.size[1]-r.offset[1])/s)],t=this.createEmptyTilePixelBlock(e);r.source=t,r.symbolizerParameters=i}return r.invalidateVAO(),Promise.resolve()}updateTileSymbolizerParameters(e,t){const i=t.local,{symbolTileSize:r}=i,{tileData:s}=e;s.offset=this._getTileSymbolOffset(s.key,r);const l=s.symbolizerParameters.symbolTileSize;s.symbolizerParameters=i;const o=s.rawPixelData?.pixelBlock;return null!=o&&l!==r&&(s.source=this._sampleVectorFieldData(o,s.symbolizerParameters,s.offset)),Promise.resolve()}attach(){super.attach(),this.container=new l(this._tileInfoView),this.container.isCustomTilingScheme=this._isCustomTilingScheme,this._updateSymbolType(this.layer.renderer),this._handle=t(()=>this.layer.renderer,e=>this._updateSymbolType(e))}detach(){super.detach(),this.container.removeAllChildren(),this._handle?.remove(),this._handle=null,this.container=null}_getTileSymbolOffset(e,t){const i=e.col*this._tileInfoView.size[0]%t,r=e.row*this._tileInfoView.size[1]%t;return[i>t/2?t-i:-i,r>t/2?t-r:-r]}_sampleVectorFieldData(e,t,i){const{symbolTileSize:r}=t;return s(e,"vector-uv",r,i)}_updateSymbolType(e){"vector-field"===e?.type&&(this.container.symbolTypes="wind-barb"===e.style?["scalar","triangle"]:"simple-scalar"===e.style?["scalar"]:["triangle"])}};e([i()],a.prototype,"container",void 0),e([i()],a.prototype,"layer",void 0),e([i()],a.prototype,"type",void 0),a=e([r("esri.views.2d.layers.imagery.VectorFieldTileView2D")],a);export{a 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
function e(e){return e instanceof HTMLImageElement?e.naturalWidth:e.width}function t(e){return e instanceof HTMLImageElement?e.naturalHeight:e.height}function n(n,l,r,u){if(r.level===u.level)return l;const i=n.
|
|
5
|
+
function e(e){return e instanceof HTMLImageElement?e.naturalWidth:e.width}function t(e){return e instanceof HTMLImageElement?e.naturalHeight:e.height}function n(n,l,r,u){if(r.level===u.level)return l;const i=n.size,a=n.getTileResolution(r.level),c=n.getTileResolution(u.level);let g=n.getLODInfoAt(u.level);const h=g.getXForColumn(u.col),d=g.getYForRow(u.row);g=n.getLODInfoAt(r.level);const s=g.getXForColumn(r.col),f=g.getYForRow(r.row),m=e(l)/i[0],v=t(l)/i[1],w=Math.round(m*((h-s)/a)),M=Math.round(v*(-(d-f)/a)),I=Math.round(m*i[0]*(c/a)),F=Math.round(v*i[1]*(c/a)),L=o(i);return L.getContext("2d").drawImage(l,w,M,I,F,0,0,i[0],i[1]),L}function o(e){const t=document.createElement("canvas");return[t.width,t.height]=e,t}export{o as createBlankImage,n as resampleImage};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{squaredDistance as e}from"../../../core/libs/gl-matrix-2/math/vec2.js";class t{constructor(e,t,i){this.maxSize=e,this.
|
|
5
|
+
import{squaredDistance as e}from"../../../core/libs/gl-matrix-2/math/vec2.js";class t{constructor(e,t,i){this.maxSize=e,this._tilingScheme=t,this._removedFunc=i,this._tilePerId=new Map,this._tileKeysPerLevel=[]}clear(){this._tilePerId.clear(),this._tileKeysPerLevel=[]}has(e){return this._tilePerId.has(e)}get(e){return this._tilePerId.get(e)}pop(e){const t=this._tilePerId.get(e);if(!t)return;const r=t.key.level,s=this._tileKeysPerLevel[r];i(this._tilePerId,e);for(let i=0;i<s.length;i++)if(s[i].id===e){s.splice(i,1);break}return t.visible=!0,t}add(e){e.visible=!1;const t=e.key,i=t.id;if(this._tilePerId.has(i))return;this._tilePerId.set(i,e);const r=t.level;this._tileKeysPerLevel[r]||(this._tileKeysPerLevel[r]=[]),this._tileKeysPerLevel[r].push(t)}prune(e,t,i){let r=this._tilePerId.size;if(r<=this.maxSize)return;let s=this._tileKeysPerLevel.length-1;for(;r>this.maxSize&&s>=0;)s!==e&&(r=this._pruneAroundCenterTile(r,t,i,s)),s--;r>this.maxSize&&(r=this._pruneAroundCenterTile(r,t,i,e))}_pruneAroundCenterTile(t,i,r,s){const l=this._tileKeysPerLevel[s];if(!l||0===l.length)return t;const{size:h,origin:n}=this._tilingScheme,o=r*h[0],_=r*h[1],c=[0,0],d=[0,0];for(l.sort((t,r)=>(c[0]=n.x+o*(t.col+.5),c[1]=n.y-_*(t.row+.5),d[0]=n.x+o*(r.col+.5),d[1]=n.y-_*(r.row+.5),e(c,i)-e(d,i)));l.length>0;){const e=l.pop();if(this._removeTile(e.id),--t===this.maxSize)break}return t}_removeTile(e){const t=this._tilePerId.get(e);this._removedFunc&&t&&this._removedFunc(t),i(this._tilePerId,e)}}function i(e,t){e.delete(t)}export{t 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{getInfo as e}from"../../../geometry/support/spatialReferenceUtils.js";import t from"./LODInfo.js";import o from"./TileCoverage.js";import l from"./TileKey.js";import s from"./TileSpan.js";const i=new l("0/0/0/0");class n{static create(e,t){e[1]>t[1]&&([e,t]=[t,e]);const[o,l]=e,[s,i]=t,r=s-o,a=i-l,h=0!==a?r/a:0,c=(Math.ceil(l)-l)*h,f=(Math.floor(l)-l)*h;return new n(o,Math.floor(l),Math.ceil(i),h,r<0?c:f,r<0?f:c,r<0?s:o,r<0?o:s)}constructor(e,t,o,l,s,i,n,r){this.x=e,this.ymin=t,this.ymax=o,this.invM=l,this.leftAdjust=s,this.rightAdjust=i,this.leftBound=n,this.rightBound=r}incrRow(){this.x+=this.invM}getLeftCol(){return Math.max(this.x+this.leftAdjust,this.leftBound)}getRightCol(){return Math.min(this.x+this.rightAdjust,this.rightBound)}}const r=[[0,0],[0,0],[0,0],[0,0]],a=1e-6;class h{constructor(e,o=null,l=e.lods[0].level,s=e.lods[e.lods.length-1].level){this.tileInfo=e,this.fullExtent=o,this.scales=[],this._infoByScale={},this._infoByLevel={};const i=e.lods.filter(e=>e.level>=l&&e.level<=s);this.minScale=i[0].scale,this.maxScale=i[i.length-1].scale;const n=this._lodInfos=i.map(l=>t.create(e,l,o));i.forEach((e,t)=>{this._infoByLevel[e.level]=n[t],this._infoByScale[e.scale]=n[t],this.scales[t]=e.scale},this),this._wrap=e.isWrappable}get spatialReference(){return this.tileInfo.spatialReference}getLODInfoAt(e){return this._infoByLevel["number"==typeof e?e:e.level]}getTileBounds(e,t,o=!1){i.set(t);const l=this._infoByLevel[i.level];return l?l.getTileBounds(e,i,o):e}getTileCoords(e,t,o=!1){i.set(t);const l=this._infoByLevel[i.level];return l?l.getTileCoords(e,i,o):e}getTileCoverage(e,t=192,l=!0,i="closest"){if(!l&&(e.scale>this.minScale||e.scale<this.maxScale))return null;const a="closest"===i?this.getClosestInfoForScale(e.scale):this.getSmallestInfoForScale(e.scale),h=o.pool.acquire(a),c=this._wrap;let f,u,m,g=1/0,d=-1/0;const v=h.spans;r[0][0]=r[0][1]=r[1][1]=r[3][0]=-t,r[1][0]=r[2][0]=e.size[0]+t,r[2][1]=r[3][1]=e.size[1]+t;for(const o of r)e.toMap(o,o),o[0]=a.getColumnForX(o[0]),o[1]=a.getRowForY(o[1]);const y=[];let _=3;for(let o=0;o<4;o++){if(r[o][1]===r[_][1]){_=o;continue}const e=n.create(r[o],r[_]);g=Math.min(e.ymin,g),d=Math.max(e.ymax,d),void 0===y[e.ymin]&&(y[e.ymin]=[]),y[e.ymin].push(e),_=o}if(null==g||null==d||d-g>100)return null;let p=[];for(f=g;f<d;){null!=y[f]&&(p=p.concat(y[f])),u=1/0,m=-1/0;for(let e=p.length-1;e>=0;e--){const t=p[e];u=Math.min(u,t.getLeftCol()),m=Math.max(m,t.getRightCol())}if(u=Math.floor(u),m=Math.floor(m),f>=a.first[1]&&f<=a.last[1])if(c)if(a.size[0]<a.worldSize[0]){const e=Math.floor(m/a.worldSize[0]);for(let t=Math.floor(u/a.worldSize[0]);t<=e;t++)v.push(new s(f,Math.max(a.getFirstColumnForWorld(t),u),Math.min(a.getLastColumnForWorld(t),m)))}else v.push(new s(f,u,m));else u>a.last[0]||m<a.first[0]||(u=Math.max(u,a.first[0]),m=Math.min(m,a.last[0]),v.push(new s(f,u,m)));f+=1;for(let e=p.length-1;e>=0;e--){const t=p[e];t.ymax>=f?t.incrRow():p.splice(e,1)}}return h}getTileParentId(e){i.set(e);const t=this._infoByLevel[i.level],o=this._lodInfos.indexOf(t)-1;return o<0?null:(this._getTileIdAtLOD(i,this._lodInfos[o],i),i.id)}getTileResolution(e){const t=this._infoByLevel["object"==typeof e?e.level:e];return t?t.resolution:-1}getTileScale(e){const t=this._infoByLevel[e.level];return t?t.scale:-1}intersects(e,t){i.set(t);const o=this._infoByLevel[i.level],l=e.lodInfo;if(l.resolution>o.resolution){this._getTileIdAtLOD(i,l,i);const t=l.denormalizeCol(i.col,i.world);for(const o of e.spans)if(o.row===i.row&&o.colFrom<=t&&o.colTo>=t)return!0}if(l.resolution<o.resolution){const[t,s,n,r]=e.spans.reduce((e,t)=>(e[0]=Math.min(e[0],t.row),e[1]=Math.max(e[1],t.row),e[2]=Math.min(e[2],t.colFrom),e[3]=Math.max(e[3],t.colTo),e),[1/0,-1/0,1/0,-1/0]),a=o.denormalizeCol(i.col,i.world),h=l.getColumnForX(o.getXForColumn(a)),c=l.getRowForY(o.getYForRow(i.row)),f=l.getColumnForX(o.getXForColumn(a+1))-1,u=l.getRowForY(o.getYForRow(i.row+1))-1;return!(h>r||f<n||c>s||u<t)}const s=l.denormalizeCol(i.col,i.world);return e.spans.some(e=>e.row===i.row&&e.colFrom<=s&&e.colTo>=s)}normalizeBounds(t,o,l){if(t[0]=o[0],t[1]=o[1],t[2]=o[2],t[3]=o[3],this._wrap){const o=e(this.tileInfo.spatialReference),s=-l*(o.valid[1]-o.valid[0]);t[0]+=s,t[2]+=s}return t}getSmallestInfoForScale(e){const t=this.scales;if(this._infoByScale[e])return this._infoByScale[e];if(e>t[0])return this._infoByScale[t[0]];for(let o=1;o<t.length-1;o++)if(e>t[o]+a)return this._infoByScale[t[o-1]];return this._infoByScale[t[t.length-1]]}getClosestInfoForScale(e){const t=this.scales;return this._infoByScale[e]||(e=t.reduce((t,o)=>Math.abs(o-e)<Math.abs(t-e)?o:t,t[0])),this._infoByScale[e]}scaleToLevel(e){const t=this.scales;if(this._infoByScale[e])return this._infoByScale[e].level;for(let o=t.length-1;o>=0;o--)if(e<t[o]){if(o===t.length-1)return this._infoByScale[t[t.length-1]].level;return this._infoByScale[t[o]].level+(t[o]-e)/(t[o]-t[o+1])}return this._infoByScale[t[0]].level}scaleToZoom(e){return this.tileInfo.scaleToZoom(e)}zoomToScale(e){return this.tileInfo.zoomToScale(e)}_getTileIdAtLOD(e,t,o){const l=this._infoByLevel[o.level];return e.set(o),t.resolution<l.resolution?null:(t.resolution===l.resolution||(e.level=t.level,e.col=Math.floor(o.col*l.resolution/t.resolution+.01),e.row=Math.floor(o.row*l.resolution/t.resolution+.01)),e)}}export{h as default};
|
|
5
|
+
import{getInfo as e}from"../../../geometry/support/spatialReferenceUtils.js";import t from"./LODInfo.js";import o from"./TileCoverage.js";import l from"./TileKey.js";import s from"./TileSpan.js";const i=new l("0/0/0/0");class n{static create(e,t){e[1]>t[1]&&([e,t]=[t,e]);const[o,l]=e,[s,i]=t,r=s-o,a=i-l,h=0!==a?r/a:0,c=(Math.ceil(l)-l)*h,f=(Math.floor(l)-l)*h;return new n(o,Math.floor(l),Math.ceil(i),h,r<0?c:f,r<0?f:c,r<0?s:o,r<0?o:s)}constructor(e,t,o,l,s,i,n,r){this.x=e,this.ymin=t,this.ymax=o,this.invM=l,this.leftAdjust=s,this.rightAdjust=i,this.leftBound=n,this.rightBound=r}incrRow(){this.x+=this.invM}getLeftCol(){return Math.max(this.x+this.leftAdjust,this.leftBound)}getRightCol(){return Math.min(this.x+this.rightAdjust,this.rightBound)}}const r=[[0,0],[0,0],[0,0],[0,0]],a=1e-6;class h{constructor(e,o=null,l=e.lods[0].level,s=e.lods[e.lods.length-1].level){this.tileInfo=e,this.fullExtent=o,this.scales=[],this._infoByScale={},this._infoByLevel={};const i=e.lods.filter(e=>e.level>=l&&e.level<=s);this.minScale=i[0].scale,this.maxScale=i[i.length-1].scale;const n=this._lodInfos=i.map(l=>t.create(e,l,o));i.forEach((e,t)=>{this._infoByLevel[e.level]=n[t],this._infoByScale[e.scale]=n[t],this.scales[t]=e.scale},this),this._wrap=e.isWrappable}get spatialReference(){return this.tileInfo.spatialReference}get origin(){return this.tileInfo.origin}get size(){return this.tileInfo.size}getLODInfoAt(e){return this._infoByLevel["number"==typeof e?e:e.level]}getTileBounds(e,t,o=!1){i.set(t);const l=this._infoByLevel[i.level];return l?l.getTileBounds(e,i,o):e}getTileCoords(e,t,o=!1){i.set(t);const l=this._infoByLevel[i.level];return l?l.getTileCoords(e,i,o):e}getTileCoverage(e,t=192,l=!0,i="closest"){if(!l&&(e.scale>this.minScale||e.scale<this.maxScale))return null;const a="closest"===i?this.getClosestInfoForScale(e.scale):this.getSmallestInfoForScale(e.scale),h=o.pool.acquire(a),c=this._wrap;let f,u,m,g=1/0,d=-1/0;const v=h.spans;r[0][0]=r[0][1]=r[1][1]=r[3][0]=-t,r[1][0]=r[2][0]=e.size[0]+t,r[2][1]=r[3][1]=e.size[1]+t;for(const o of r)e.toMap(o,o),o[0]=a.getColumnForX(o[0]),o[1]=a.getRowForY(o[1]);const y=[];let _=3;for(let o=0;o<4;o++){if(r[o][1]===r[_][1]){_=o;continue}const e=n.create(r[o],r[_]);g=Math.min(e.ymin,g),d=Math.max(e.ymax,d),void 0===y[e.ymin]&&(y[e.ymin]=[]),y[e.ymin].push(e),_=o}if(null==g||null==d||d-g>100)return null;let p=[];for(f=g;f<d;){null!=y[f]&&(p=p.concat(y[f])),u=1/0,m=-1/0;for(let e=p.length-1;e>=0;e--){const t=p[e];u=Math.min(u,t.getLeftCol()),m=Math.max(m,t.getRightCol())}if(u=Math.floor(u),m=Math.floor(m),f>=a.first[1]&&f<=a.last[1])if(c)if(a.size[0]<a.worldSize[0]){const e=Math.floor(m/a.worldSize[0]);for(let t=Math.floor(u/a.worldSize[0]);t<=e;t++)v.push(new s(f,Math.max(a.getFirstColumnForWorld(t),u),Math.min(a.getLastColumnForWorld(t),m)))}else v.push(new s(f,u,m));else u>a.last[0]||m<a.first[0]||(u=Math.max(u,a.first[0]),m=Math.min(m,a.last[0]),v.push(new s(f,u,m)));f+=1;for(let e=p.length-1;e>=0;e--){const t=p[e];t.ymax>=f?t.incrRow():p.splice(e,1)}}return h}getTileParentId(e){i.set(e);const t=this._infoByLevel[i.level],o=this._lodInfos.indexOf(t)-1;return o<0?null:(this._getTileIdAtLOD(i,this._lodInfos[o],i),i.id)}getTileResolution(e){const t=this._infoByLevel["object"==typeof e?e.level:e];return t?t.resolution:-1}getTileScale(e){const t=this._infoByLevel[e.level];return t?t.scale:-1}intersects(e,t){i.set(t);const o=this._infoByLevel[i.level],l=e.lodInfo;if(l.resolution>o.resolution){this._getTileIdAtLOD(i,l,i);const t=l.denormalizeCol(i.col,i.world);for(const o of e.spans)if(o.row===i.row&&o.colFrom<=t&&o.colTo>=t)return!0}if(l.resolution<o.resolution){const[t,s,n,r]=e.spans.reduce((e,t)=>(e[0]=Math.min(e[0],t.row),e[1]=Math.max(e[1],t.row),e[2]=Math.min(e[2],t.colFrom),e[3]=Math.max(e[3],t.colTo),e),[1/0,-1/0,1/0,-1/0]),a=o.denormalizeCol(i.col,i.world),h=l.getColumnForX(o.getXForColumn(a)),c=l.getRowForY(o.getYForRow(i.row)),f=l.getColumnForX(o.getXForColumn(a+1))-1,u=l.getRowForY(o.getYForRow(i.row+1))-1;return!(h>r||f<n||c>s||u<t)}const s=l.denormalizeCol(i.col,i.world);return e.spans.some(e=>e.row===i.row&&e.colFrom<=s&&e.colTo>=s)}normalizeBounds(t,o,l){if(t[0]=o[0],t[1]=o[1],t[2]=o[2],t[3]=o[3],this._wrap){const o=e(this.tileInfo.spatialReference),s=-l*(o.valid[1]-o.valid[0]);t[0]+=s,t[2]+=s}return t}getSmallestInfoForScale(e){const t=this.scales;if(this._infoByScale[e])return this._infoByScale[e];if(e>t[0])return this._infoByScale[t[0]];for(let o=1;o<t.length-1;o++)if(e>t[o]+a)return this._infoByScale[t[o-1]];return this._infoByScale[t[t.length-1]]}getClosestInfoForScale(e){const t=this.scales;return this._infoByScale[e]||(e=t.reduce((t,o)=>Math.abs(o-e)<Math.abs(t-e)?o:t,t[0])),this._infoByScale[e]}scaleToLevel(e){const t=this.scales;if(this._infoByScale[e])return this._infoByScale[e].level;for(let o=t.length-1;o>=0;o--)if(e<t[o]){if(o===t.length-1)return this._infoByScale[t[t.length-1]].level;return this._infoByScale[t[o]].level+(t[o]-e)/(t[o]-t[o+1])}return this._infoByScale[t[0]].level}scaleToZoom(e){return this.tileInfo.scaleToZoom(e)}zoomToScale(e){return this.tileInfo.zoomToScale(e)}_getTileIdAtLOD(e,t,o){const l=this._infoByLevel[o.level];return e.set(o),t.resolution<l.resolution?null:(t.resolution===l.resolution||(e.level=t.level,e.col=Math.floor(o.col*l.resolution/t.resolution+.01),e.row=Math.floor(o.row*l.resolution/t.resolution+.01)),e)}}export{h 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../layers/support/TileInfo.js";import l from"./TileInfoView.js";import s from"./TileKey.js";class t extends l{constructor(){super(...arguments),this._fullCacheLodInfos=null,this._levelByScale={}}getTileParentId(e){const l=s.pool.acquire(e),t=0===l.level?null:s.getId(l.level-1,l.row>>1,l.col>>1,l.world);return s.pool.release(l),t}getTileCoverage(e,l,s=!0,t){const o=super.getTileCoverage(e,l,s,t);if(!o)return o;const
|
|
5
|
+
import e from"../../../layers/support/TileInfo.js";import l from"./TileInfoView.js";import s from"./TileKey.js";class t extends l{constructor(){super(...arguments),this._fullCacheLodInfos=null,this._levelByScale={}}getTileParentId(e){const l=s.pool.acquire(e),t=0===l.level?null:s.getId(l.level-1,l.row>>1,l.col>>1,l.world);return s.pool.release(l),t}getTileCoverage(e,l,s=!0,t){const o=super.getTileCoverage(e,l,s,t);if(!o)return o;const r=1<<o.lodInfo.level;return o.spans=o.spans.filter(e=>e.row>=0&&e.row<r),o}scaleToLevel(e){if(this._fullCacheLodInfos||this._initializeFullCacheLODs(this._lodInfos),this._levelByScale[e])return this._levelByScale[e];{const l=this._fullCacheLodInfos;if(e>l[0].scale)return l[0].level;let s,t;for(let o=0;o<l.length-1;o++)if(t=l[o+1],e>t.scale)return s=l[o],s.level+(s.scale-e)/(s.scale-t.scale);return l[l.length-1].level}}_initializeFullCacheLODs(l){let s;if(0===l[0].level)s=l.map(e=>({level:e.level,resolution:e.resolution,scale:e.scale}));else{const l=this.size[0],t=this.spatialReference;s=e.create({size:l,spatialReference:t}).lods.map(e=>({level:e.level,resolution:e.resolution,scale:e.scale}))}for(let e=0;e<s.length;e++)this._levelByScale[s[e].scale]=s[e].level;this._fullCacheLodInfos=s}}export{t 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import o from"../../core/Accessor.js";import{equals as r}from"../../core/arrayUtils.js";import t from"../../core/Collection.js";import s from"../../core/Error.js";import i from"../../core/Logger.js";import{mapCollection as n}from"../../core/mapCollectionUtils.js";import{watch as a,initial as m}from"../../core/reactiveUtils.js";import{convertToSpatialReferenceUnit as l,convertFromSpatialReferenceUnit as c}from"../../core/units.js";import{property as p,subclass as u}from"../../core/accessorSupport/decorators.js";import{e as d}from"../../chunks/earcut.js";import{create as h}from"../../core/libs/gl-matrix-2/factories/mat4f64.js";import{create as f}from"../../core/libs/gl-matrix-2/factories/vec3f64.js";import{getReferenceEllipsoid as g}from"../../geometry/ellipsoidUtils.js";import y from"../../geometry/Point.js";import{project as w}from"../../geometry/projectionUtils.js";import{execute as v}from"../../geometry/operators/gx/operatorDensify.js";import{execute as j}from"../../geometry/operators/gx/operatorSimplify.js";import{fromSpatialReference as _,fromPolygon as A,toPolygon as x}from"../../geometry/operators/support/apiConverter.js";import{computeTranslationToOriginAndRotation as R}from"../../geometry/projection/computeTranslationToOriginAndRotation.js";import{newDoubleArray as b}from"../../geometry/support/DoubleArray.js";import{earth as N}from"../../geometry/support/Ellipsoid.js";import{newIndexArray as M}from"../../geometry/support/Indices.js";import{t as C}from"../../chunks/vec3.js";import{ElevationContext as
|
|
5
|
+
import{__decorate as e}from"tslib";import o from"../../core/Accessor.js";import{equals as r}from"../../core/arrayUtils.js";import t from"../../core/Collection.js";import s from"../../core/Error.js";import i from"../../core/Logger.js";import{mapCollection as n}from"../../core/mapCollectionUtils.js";import{watch as a,initial as m}from"../../core/reactiveUtils.js";import{convertToSpatialReferenceUnit as l,convertFromSpatialReferenceUnit as c}from"../../core/units.js";import{property as p,subclass as u}from"../../core/accessorSupport/decorators.js";import{e as d}from"../../chunks/earcut.js";import{create as h}from"../../core/libs/gl-matrix-2/factories/mat4f64.js";import{create as f}from"../../core/libs/gl-matrix-2/factories/vec3f64.js";import{getReferenceEllipsoid as g}from"../../geometry/ellipsoidUtils.js";import y from"../../geometry/Point.js";import{project as w}from"../../geometry/projectionUtils.js";import{execute as v}from"../../geometry/operators/gx/operatorDensify.js";import{execute as j}from"../../geometry/operators/gx/operatorSimplify.js";import{fromSpatialReference as _,fromPolygon as A,toPolygon as x}from"../../geometry/operators/support/apiConverter.js";import{computeTranslationToOriginAndRotation as R}from"../../geometry/projection/computeTranslationToOriginAndRotation.js";import{newDoubleArray as b}from"../../geometry/support/DoubleArray.js";import{earth as N}from"../../geometry/support/Ellipsoid.js";import{newIndexArray as M}from"../../geometry/support/Indices.js";import{t as C}from"../../chunks/vec3.js";import{ElevationContext as U}from"./layers/graphics/ElevationContext.js";import{extrudePolygon as k}from"./layers/graphics/extrudeUtils.js";import{computeCentroid as V}from"./layers/graphics/graphicUtils.js";import{polygonToRenderInfo as H}from"./support/renderInfoUtils/polygon.js";import{FocusAreaColorNode as F}from"./webgl-engine/effects/focusArea/FocusAreaColorNode.js";import{FocusAreaMaskNode as I}from"./webgl-engine/effects/focusArea/FocusAreaMaskNode.js";import{FocusAreaOutlineItem as P}from"./webgl-engine/effects/focusArea/FocusAreaOutlineItem.js";const E=2e4;let G=class extends o{constructor(e){super(e),this._volumes=new Map,this._elevationContext=new U,this._outlineMap=new t}initialize(){this.addHandles([a(()=>({polygons:this.polygons,ready:this.view.groundView?.ready}),({polygons:e,ready:o})=>{o&&this._updateVolumes(e)},m)]),this._outlineMap=n(()=>this.areas?.areas,e=>new P({area:e,view:this.view}),{recycleItems:!0})}destroy(){this.removeAllHandles(),this._outlineMap.destroy()}get areas(){return this.view.map?.focusAreas}get enabledAreas(){return this.areas?.areas.toArray().filter(({enabled:e})=>e)??[]}get style(){return this.areas?.style??"bright"}get polygons(){return this.enabledAreas.reduce((e,o)=>e.concat(o.geometries.toArray()),new Array)}containsGeometry(e){if(0===this.polygons.length)return!0;const o=new y(e);return this.polygons.some(e=>e.contains(o))}_updateVolumes(e){this._extrude(e),this._ensureRenderNodes()}_extrude(e){if(!this.view.renderCoordsHelper||r(Array.from(this._volumes.keys()),e))return;const o=this.view.renderCoordsHelper,t=f(),n=1===o.viewingMode,a=h(),m=h(),p=this.view.spatialReference,u=_(p),y=g(p).radius/N.radius,U=l(5e5*y,"meters",p,!0);n||o.worldUpAtPosition([0,0,0],t);const F=new Map;for(const r of e){const e=this._volumes.get(r);if(e)F.set(r,e);else try{const e=p.equals(r.spatialReference)?r:w(r,p),s=Math.max(e.extent.width,e.extent.height),i=c(s,p,"meters",!0),l=Math.max(5*i,E*y),h=n?y/10:y,f=this._reduceGeometryHeight(e,l,h),g=V(f);if(null==g)continue;const _=A(f),N=j(_,u,!1)??_,I=v(N,U,0,0),P=x(I,p);if(null==P)continue;R(p,[g.x,g.y,0],a,o.spatialReference),m[12]=-a[12],m[13]=-a[13],m[14]=-a[14];const G=H(P,this.view.elevationProvider,o,this._elevationContext),{polygons:q,mapPositions:D,position:L}=G,S=new Array,T=new O(S,[a[12],a[13],a[14]]);for(const o of q){const e=o.count,r=d(o.mapPositions,o.holeIndices,3);if(0===r.length)continue;const s=r.length,i=6*e,a=i+s,c=b(3*i),p=M(a),u=M(s);k(L,D,r,o,c,null,null,null,p,u,l,t,n),C(c,c,m);const h=new z(c,u,p,l);S.push(h)}F.set(r,T)}catch(I){i.getLogger(this).error(new s("focusareasview:projection-failed","Failed to project focus area geometry to view spatial reference",{geometry:r,error:I}))}}this._volumes=F,0!==this.volumes.size&&this._maskRenderNode?.updateGeometries()}_ensureRenderNodes(){if(this.view.stage)if(0===this.volumes.size){const{_maskRenderNode:e,_colorRenderNode:o}=this;this._maskRenderNode=this._colorRenderNode=null,o?.fadeOut(()=>{e?.destroy(),o?.destroy()})}else this._maskRenderNode??=new I({focusAreasView:this}),this._colorRenderNode??=new F({focusAreasView:this}),this.view.stage.renderView.requestRender()}_reduceGeometryHeight(e,o,r){const t=-12e5*r,s=Math.max(-o/2,t),i=e.rings.map(e=>e.map(e=>[e[0],e[1],s])),n=e.clone();return n.rings=i,n.hasZ=!0,n}get volumes(){return this._volumes}};e([p()],G.prototype,"_volumes",void 0),e([p({constructOnly:!0})],G.prototype,"view",void 0),G=e([u("esri.views.3d.FocusAreasView")],G);class O{constructor(e,o){this.geometryVolumes=e,this.origin=o}}class z{constructor(e,o,r,t){this.positions=e,this.indicesBottom=o,this.indicesExtruded=r,this.height=t}}export{G as FocusAreasView};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{onLocaleChange as t,substitute as i,fetchMessageBundle as s}from"../../../../intl.js";import{volumeMeasurementConfiguration as o}from"../../../../analysis/VolumeMeasurement/volumeMeasurementConfiguration.js";import r from"../../../../core/Accessor.js";import{equals as l}from"../../../../core/arrayUtils.js";import{cyclicalPI as n}from"../../../../core/Cyclical.js";import{destroyMaybe as a}from"../../../../core/maybe.js";import{formatDecimal as c,preferredVolumePrecision as u}from"../../../../core/quantityFormatUtils.js";import{watch as m,initial as d}from"../../../../core/reactiveUtils.js";import{adaptiveVolumeUnit as h}from"../../../../core/units.js";import{property as p,subclass as y}from"../../../../core/accessorSupport/decorators.js";import{e as g}from"../../../../chunks/earcut.js";import{create as _}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{set as v,normalize as f,subtract as j,cross as b,dot as L}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as C,fromValues as w}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{computeTranslationToOriginAndRotation as G}from"../../../../geometry/projection/computeTranslationToOriginAndRotation.js";import{newDoubleArray as P}from"../../../../geometry/support/DoubleArray.js";import{newIndexArray as V}from"../../../../geometry/support/Indices.js";import{angleAroundAxis as R}from"../../../../geometry/support/vector.js";import{t as F}from"../../../../chunks/vec3.js";import A from"../../../../symbols/support/ElevationInfo.js";import{LabelVisualElement as x}from"../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as O}from"../../interactive/visualElements/LineVisualElement.js";import{OutlineVisualElement as D}from"../../interactive/visualElements/OutlineVisualElement.js";import{EuclideanSegment as M}from"../../interactive/visualElements/support/Segment.js";import{ElevationContext as S}from"../../layers/graphics/ElevationContext.js";import{extrudePolygon as U}from"../../layers/graphics/Graphics3DExtrudeSymbolLayer.js";import{polygonToRenderInfo as E}from"../../support/renderInfoUtils/polygon.js";import{CutFillColor as B,VolumeGeometry as N}from"../../webgl-engine/lib/CutFillColor.js";import{createStipplePatternSimple as T}from"../../webgl-engine/materials/lineStippleUtils.js";let H=class extends r{get visible(){return this.analysisViewData.visible&&null!=this.analysisViewData.elevationAlignedGeometry&&null!=this.analysisViewData.targetGeometry}get updating(){return this.loadingMessages}get hasUnsupportedError(){const{error:e}=this.analysisViewData;return!!e&&["unsupported-coordinate-system","unsupported-layer-transparency"].includes(e.name)}constructor(e){super(e),this.unitsMessages=null,this.messages=null,this.loadingMessages=!0,this._elevationContext=S.fromElevationInfo(new A({mode:"absolute-height"})),this._extrusionHeight=o.targetElevationRange,this._projectionLines=[]}initialize(){const{view:e}=this,i={view:e,isDecoration:!0},s=o,r={...i,width:s.geometryOutlineWidth};this._elevationAlignedGeometry=new D({...r,isDraped:!0,color:s.geometryOutlineColor.toUnitRGBA()}),this._targetGeometry=new D(r);const l={...i,attached:!0,width:s.projectionLineWidth,renderOccluded:4,polygonOffset:!0},n={...l,stipplePattern:T(s.projectionLineStippleSize)},a=s.cutProjectionLineColor.toUnitRGBA(),c=s.fillProjectionLineColor.toUnitRGBA();this._cutProjectionLines=new O({...l,color:a}),this._occludedCutProjectionLines=new O({...n,color:a}),this._fillProjectionLines=new O({...l,color:c}),this._occludedFillProjectionLines=new O({...n,color:c});const u={...i,attached:!0};this._cutVolumeLabel=new x({...u,distance:s.labelDistance}),this._fillVolumeLabel=new x({...u,distance:-s.labelDistance}),this._cutFillRenderNode=new B({view:e,cutColor:s.cutColor,fillColor:s.fillColor,borderColor:s.geometryOutlineColor}),this.addHandles([m(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry}),({elevationAlignedGeometry:e,targetGeometry:t})=>{this._elevationAlignedGeometry.geometry=e,this._targetGeometry.geometry=t},d),m(()=>({interactive:this.analysisViewData.interactive,measureType:this.analysis.measureType,visible:this.visible}),({visible:e,interactive:t,measureType:i})=>{this._elevationAlignedGeometry.visible=e&&!t,this._targetGeometry.visible=e&&"cut-fill"===i,this._cutFillRenderNode.measureType=i},d),m(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry,visible:this.visible}),({elevationAlignedGeometry:e,targetGeometry:t,visible:i})=>this._updateProjectionLines(e,t,i),d),m(()=>({interactive:this.analysisViewData.interactive,accentColor:this.view.effectiveTheme.accentColor,hasResult:!!this.analysisViewData.result}),({interactive:e,accentColor:t,hasResult:i})=>{this._updateColors(e,t,i)},d),m(()=>this.analysisViewData.targetGeometry,()=>this._updateCutFillGeometry(),d),m(()=>this.visible&&!this.hasUnsupportedError,e=>this._updateCutFillVisibility(e),d),m(()=>{const{messages:e,unitsMessages:t,visible:i,analysisViewData:s}=this;return{labelAnchors:s.labelAnchors,effectiveDisplayUnits:s.effectiveDisplayUnits,messages:e,unitsMessages:t,result:s.result,visible:i&&!!s.result}},e=>this._updateLabels(e)),m(()=>this.view.state.camera,e=>this._updateProjectionLineOcclusion(e),d),t(()=>this._updateMessageBundle())]),this._updateMessageBundle()}destroy(){this._elevationAlignedGeometry=a(this._elevationAlignedGeometry),this._targetGeometry=a(this._targetGeometry),this._cutProjectionLines=a(this._cutProjectionLines),this._occludedCutProjectionLines=a(this._occludedCutProjectionLines),this._fillProjectionLines=a(this._fillProjectionLines),this._occludedFillProjectionLines=a(this._occludedFillProjectionLines),this._cutVolumeLabel=a(this._cutVolumeLabel),this._fillVolumeLabel=a(this._fillVolumeLabel),this._cutFillRenderNode.destroy()}_updateProjectionLines(e,t,i){if(this._cutProjectionLines.visible=i,this._occludedCutProjectionLines.visible=i,this._fillProjectionLines.visible=i,this._occludedFillProjectionLines.visible=i,!e||!t)return;const{renderCoordsHelper:s}=this.view,o=[],r=e.spatialReference,n=e.rings[0],a=n.length>1&&l(n[0],n[n.length-1]),c=n.length-(a?1:0);for(let l=0;l<c;++l){const e=n[l],i=v(C(),e[0],e[1],e[2]);s.toRenderCoords(i,r,i);const a=t.rings[0][l],c=v(C(),a[0],a[1],a[2]);s.toRenderCoords(c,r,c);const u=new M(i,c);o.push(u)}e.isClockwise(n)||o.reverse();const u=[],m=[],d=[],h=[],p=[],y=this.view.state.camera;for(let l=0;l<o.length;++l){const i=o[l],s=o[0===l?o.length-1:l-1],r=o[l===o.length-1?0:l+1],n=e.rings[0][l],a=t.rings[0][l],c=n[2]>a[2],g=new k(i,s,r,c);u.push(g),g.updateOccluded(y);const _=g.isOccluded;c?(_?d:m).push(i):(_?p:h).push(i)}this._projectionLines=u,this._cutProjectionLines.setGeometryFromSegments(m),this._occludedCutProjectionLines.setGeometryFromSegments(d),this._fillProjectionLines.setGeometryFromSegments(h),this._occludedFillProjectionLines.setGeometryFromSegments(p)}_updateProjectionLineOcclusion(e){const t=[],i=[],s=[],o=[];let r=!1,l=!1;for(const n of this._projectionLines){n.updateOccluded(e)&&(r||=n.isCut,l||=!n.isCut);const a=n.isOccluded;(n.isCut?a?i:t:a?o:s).push(n.segment)}l&&(this._fillProjectionLines.setGeometryFromSegments(s),this._occludedFillProjectionLines.setGeometryFromSegments(o)),r&&(this._cutProjectionLines.setGeometryFromSegments(t),this._occludedCutProjectionLines.setGeometryFromSegments(i))}_updateColors(e,t,i){const{geometryOutlineColor:s,cutColor:r,fillColor:l,cutColorMuted:n,fillColorMuted:a,cutProjectionLineColor:c,fillProjectionLineColor:u}=o;if(this._cutFillRenderNode.cutColor=i?r:n,this._cutFillRenderNode.fillColor=i?l:a,e){const e=t.toUnitRGBA();this._targetGeometry.color=e,this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e,this._fillProjectionLines.color=e,this._occludedFillProjectionLines.color=e,this._cutFillRenderNode.borderColor=t}else{this._targetGeometry.color=s.toUnitRGBA();const e=(i?c:n).toUnitRGBA();this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e;const t=(i?u:a).toUnitRGBA();this._fillProjectionLines.color=t,this._occludedFillProjectionLines.color=t,this._cutFillRenderNode.borderColor=s}}_updateLabels(e){const{effectiveDisplayUnits:t,labelAnchors:s,messages:o,unitsMessages:r,result:l,visible:n}=e;if(this._cutVolumeLabel.visible=n,this._fillVolumeLabel.visible=n,this._cutVolumeLabel.geometry=s?{type:"point",point:s.cut}:null,this._fillVolumeLabel.geometry=s?{type:"point",point:s.fill}:null,null==l||null==o||null==r)return this._cutVolumeLabel.text="-",void(this._fillVolumeLabel.text="-");const a=t.volume,c=i(o.labels.cut,{volume:I(r,l.cutVolume,a)}),u=i(o.labels.fill,{volume:I(r,l.fillVolume,a)});this._cutVolumeLabel.text=c,this._fillVolumeLabel.text=u}_updateCutFillVisibility(e){e?this._cutFillRenderNode.enable():this._cutFillRenderNode.disable()}_updateCutFillGeometry(){const{renderCoordsHelper:e}=this.view,{targetGeometry:t}=this.analysisViewData;if(!t?.extent)return;const{center:i}=t.extent,s=w(i.x,i.y,0),o=C();e.toRenderCoords(s,t.spatialReference,o);const r=this._getExtrudedVolume(t,this._extrusionHeight,s,o),l=this._getExtrudedVolume(t,-this._extrusionHeight,s,o);this._cutFillRenderNode.updateGeometries(r,l,o)}_getExtrudedVolume(e,t,i,s){const{renderCoordsHelper:o,spatialReference:r,elevationProvider:l}=this.view,n=C(),a=1===o.viewingMode;o.worldUpAtPosition(s,n);const c=E(e,l,o,this._elevationContext),{polygons:u,mapPositions:m,position:d}=c,h=u[0],p=h.count,y=g(h.mapPositions,h.holeIndices,3),v=y.length,f=6*p,j=V(f+v),b=V(v),L=P(3*f),w=P(3*f);U(d,m,y,h,L,null,w,null,j,b,t,n,a);const R=_(),A=_();if(G(r,i,R,o.spatialReference),A[12]=-R[12],A[13]=-R[13],A[14]=-R[14],F(L,L,A),"stockpile"===this.analysis.measureType)for(let g=0;g<w.length;g+=3)w[g]=n[0],w[g+1]=n[1],w[g+2]=n[2];return new N(L,b,j,w)}async _updateMessageBundle(){this.loadingMessages=!0;try{this.unitsMessages=await s("esri/core/t9n/Units"),this.messages=await s("esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis")}finally{this.loadingMessages=!1}}};function I(e,t,i){if(!t||!e)return null;const s=h(t.value,t.unit,i),o=u(s);return c(e,t,s,o)}e([p({constructOnly:!0})],H.prototype,"view",void 0),e([p({constructOnly:!0})],H.prototype,"analysis",void 0),e([p({constructOnly:!0})],H.prototype,"analysisViewData",void 0),e([p()],H.prototype,"unitsMessages",void 0),e([p()],H.prototype,"messages",void 0),e([p()],H.prototype,"loadingMessages",void 0),e([p({readOnly:!0})],H.prototype,"visible",null),e([p()],H.prototype,"updating",null),e([p()],H.prototype,"hasUnsupportedError",null),H=e([y("esri.views.3d.analysis.VolumeMeasurement.VolumeMeasurementCutFillVisualization")],H);class k{constructor(e,t,i,s){this.segment=e,this.previous=t,this.next=i,this.isCut=s,this._isOccluded=!1,this._n1=C(),this._n2=C();const o=f(z,j(z,e.endRenderSpace,e.startRenderSpace));f(this._n1,b(this._n1,o,f(W,j(W,t.startRenderSpace,e.startRenderSpace)))),f(this._n2,b(this._n2,o,f(W,j(W,e.startRenderSpace,i.startRenderSpace)))),this._isConvex=n.normalize(R(this._n1,this._n2,o))<0}get isOccluded(){return this._isOccluded}updateOccluded(e){j(z,this.segment.startRenderSpace,e.eye);const t=L(this._n1,z)<0,i=L(this._n2,z)<0,s=this._isOccluded;return this._isOccluded=this._isConvex?t&&i:t||i,this._isOccluded!==s}}const z=C(),W=C();export{H as VolumeMeasurementCutFillVisualization};
|
|
5
|
+
import{__decorate as e}from"tslib";import{onLocaleChange as t,substitute as i,fetchMessageBundle as s}from"../../../../intl.js";import{volumeMeasurementConfiguration as o}from"../../../../analysis/VolumeMeasurement/volumeMeasurementConfiguration.js";import r from"../../../../core/Accessor.js";import{equals as l}from"../../../../core/arrayUtils.js";import{cyclicalPI as n}from"../../../../core/Cyclical.js";import{destroyMaybe as a}from"../../../../core/maybe.js";import{formatDecimal as c,preferredVolumePrecision as u}from"../../../../core/quantityFormatUtils.js";import{watch as m,initial as d}from"../../../../core/reactiveUtils.js";import{adaptiveVolumeUnit as h}from"../../../../core/units.js";import{property as p,subclass as g}from"../../../../core/accessorSupport/decorators.js";import{e as y}from"../../../../chunks/earcut.js";import{create as _}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{set as v,normalize as f,subtract as j,cross as b,dot as L}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as C,fromValues as w}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{computeTranslationToOriginAndRotation as G}from"../../../../geometry/projection/computeTranslationToOriginAndRotation.js";import{newDoubleArray as P}from"../../../../geometry/support/DoubleArray.js";import{newIndexArray as V}from"../../../../geometry/support/Indices.js";import{angleAroundAxis as R}from"../../../../geometry/support/vector.js";import{t as F}from"../../../../chunks/vec3.js";import A from"../../../../symbols/support/ElevationInfo.js";import{LabelVisualElement as x}from"../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as O}from"../../interactive/visualElements/LineVisualElement.js";import{OutlineVisualElement as D}from"../../interactive/visualElements/OutlineVisualElement.js";import{EuclideanSegment as M}from"../../interactive/visualElements/support/Segment.js";import{ElevationContext as U}from"../../layers/graphics/ElevationContext.js";import{extrudePolygon as S}from"../../layers/graphics/extrudeUtils.js";import{polygonToRenderInfo as E}from"../../support/renderInfoUtils/polygon.js";import{CutFillColor as B,VolumeGeometry as N}from"../../webgl-engine/lib/CutFillColor.js";import{createStipplePatternSimple as T}from"../../webgl-engine/materials/lineStippleUtils.js";let H=class extends r{get visible(){return this.analysisViewData.visible&&null!=this.analysisViewData.elevationAlignedGeometry&&null!=this.analysisViewData.targetGeometry}get updating(){return this.loadingMessages}get hasUnsupportedError(){const{error:e}=this.analysisViewData;return!!e&&["unsupported-coordinate-system","unsupported-layer-transparency"].includes(e.name)}constructor(e){super(e),this.unitsMessages=null,this.messages=null,this.loadingMessages=!0,this._elevationContext=U.fromElevationInfo(new A({mode:"absolute-height"})),this._extrusionHeight=o.targetElevationRange,this._projectionLines=[]}initialize(){const{view:e}=this,i={view:e,isDecoration:!0},s=o,r={...i,width:s.geometryOutlineWidth};this._elevationAlignedGeometry=new D({...r,isDraped:!0,color:s.geometryOutlineColor.toUnitRGBA()}),this._targetGeometry=new D(r);const l={...i,attached:!0,width:s.projectionLineWidth,renderOccluded:4,polygonOffset:!0},n={...l,stipplePattern:T(s.projectionLineStippleSize)},a=s.cutProjectionLineColor.toUnitRGBA(),c=s.fillProjectionLineColor.toUnitRGBA();this._cutProjectionLines=new O({...l,color:a}),this._occludedCutProjectionLines=new O({...n,color:a}),this._fillProjectionLines=new O({...l,color:c}),this._occludedFillProjectionLines=new O({...n,color:c});const u={...i,attached:!0};this._cutVolumeLabel=new x({...u,distance:s.labelDistance}),this._fillVolumeLabel=new x({...u,distance:-s.labelDistance}),this._cutFillRenderNode=new B({view:e,cutColor:s.cutColor,fillColor:s.fillColor,borderColor:s.geometryOutlineColor}),this.addHandles([m(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry}),({elevationAlignedGeometry:e,targetGeometry:t})=>{this._elevationAlignedGeometry.geometry=e,this._targetGeometry.geometry=t},d),m(()=>({interactive:this.analysisViewData.interactive,measureType:this.analysis.measureType,visible:this.visible}),({visible:e,interactive:t,measureType:i})=>{this._elevationAlignedGeometry.visible=e&&!t,this._targetGeometry.visible=e&&"cut-fill"===i,this._cutFillRenderNode.measureType=i},d),m(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry,visible:this.visible}),({elevationAlignedGeometry:e,targetGeometry:t,visible:i})=>this._updateProjectionLines(e,t,i),d),m(()=>({interactive:this.analysisViewData.interactive,accentColor:this.view.effectiveTheme.accentColor,hasResult:!!this.analysisViewData.result}),({interactive:e,accentColor:t,hasResult:i})=>{this._updateColors(e,t,i)},d),m(()=>this.analysisViewData.targetGeometry,()=>this._updateCutFillGeometry(),d),m(()=>this.visible&&!this.hasUnsupportedError,e=>this._updateCutFillVisibility(e),d),m(()=>{const{messages:e,unitsMessages:t,visible:i,analysisViewData:s}=this;return{labelAnchors:s.labelAnchors,effectiveDisplayUnits:s.effectiveDisplayUnits,messages:e,unitsMessages:t,result:s.result,visible:i&&!!s.result}},e=>this._updateLabels(e)),m(()=>this.view.state.camera,e=>this._updateProjectionLineOcclusion(e),d),t(()=>this._updateMessageBundle())]),this._updateMessageBundle()}destroy(){this._elevationAlignedGeometry=a(this._elevationAlignedGeometry),this._targetGeometry=a(this._targetGeometry),this._cutProjectionLines=a(this._cutProjectionLines),this._occludedCutProjectionLines=a(this._occludedCutProjectionLines),this._fillProjectionLines=a(this._fillProjectionLines),this._occludedFillProjectionLines=a(this._occludedFillProjectionLines),this._cutVolumeLabel=a(this._cutVolumeLabel),this._fillVolumeLabel=a(this._fillVolumeLabel),this._cutFillRenderNode.destroy()}_updateProjectionLines(e,t,i){if(this._cutProjectionLines.visible=i,this._occludedCutProjectionLines.visible=i,this._fillProjectionLines.visible=i,this._occludedFillProjectionLines.visible=i,!e||!t)return;const{renderCoordsHelper:s}=this.view,o=[],r=e.spatialReference,n=e.rings[0],a=n.length>1&&l(n[0],n[n.length-1]),c=n.length-(a?1:0);for(let l=0;l<c;++l){const e=n[l],i=v(C(),e[0],e[1],e[2]);s.toRenderCoords(i,r,i);const a=t.rings[0][l],c=v(C(),a[0],a[1],a[2]);s.toRenderCoords(c,r,c);const u=new M(i,c);o.push(u)}e.isClockwise(n)||o.reverse();const u=[],m=[],d=[],h=[],p=[],g=this.view.state.camera;for(let l=0;l<o.length;++l){const i=o[l],s=o[0===l?o.length-1:l-1],r=o[l===o.length-1?0:l+1],n=e.rings[0][l],a=t.rings[0][l],c=n[2]>a[2],y=new k(i,s,r,c);u.push(y),y.updateOccluded(g);const _=y.isOccluded;c?(_?d:m).push(i):(_?p:h).push(i)}this._projectionLines=u,this._cutProjectionLines.setGeometryFromSegments(m),this._occludedCutProjectionLines.setGeometryFromSegments(d),this._fillProjectionLines.setGeometryFromSegments(h),this._occludedFillProjectionLines.setGeometryFromSegments(p)}_updateProjectionLineOcclusion(e){const t=[],i=[],s=[],o=[];let r=!1,l=!1;for(const n of this._projectionLines){n.updateOccluded(e)&&(r||=n.isCut,l||=!n.isCut);const a=n.isOccluded;(n.isCut?a?i:t:a?o:s).push(n.segment)}l&&(this._fillProjectionLines.setGeometryFromSegments(s),this._occludedFillProjectionLines.setGeometryFromSegments(o)),r&&(this._cutProjectionLines.setGeometryFromSegments(t),this._occludedCutProjectionLines.setGeometryFromSegments(i))}_updateColors(e,t,i){const{geometryOutlineColor:s,cutColor:r,fillColor:l,cutColorMuted:n,fillColorMuted:a,cutProjectionLineColor:c,fillProjectionLineColor:u}=o;if(this._cutFillRenderNode.cutColor=i?r:n,this._cutFillRenderNode.fillColor=i?l:a,e){const e=t.toUnitRGBA();this._targetGeometry.color=e,this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e,this._fillProjectionLines.color=e,this._occludedFillProjectionLines.color=e,this._cutFillRenderNode.borderColor=t}else{this._targetGeometry.color=s.toUnitRGBA();const e=(i?c:n).toUnitRGBA();this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e;const t=(i?u:a).toUnitRGBA();this._fillProjectionLines.color=t,this._occludedFillProjectionLines.color=t,this._cutFillRenderNode.borderColor=s}}_updateLabels(e){const{effectiveDisplayUnits:t,labelAnchors:s,messages:o,unitsMessages:r,result:l,visible:n}=e;if(this._cutVolumeLabel.visible=n,this._fillVolumeLabel.visible=n,this._cutVolumeLabel.geometry=s?{type:"point",point:s.cut}:null,this._fillVolumeLabel.geometry=s?{type:"point",point:s.fill}:null,null==l||null==o||null==r)return this._cutVolumeLabel.text="-",void(this._fillVolumeLabel.text="-");const a=t.volume,c=i(o.labels.cut,{volume:I(r,l.cutVolume,a)}),u=i(o.labels.fill,{volume:I(r,l.fillVolume,a)});this._cutVolumeLabel.text=c,this._fillVolumeLabel.text=u}_updateCutFillVisibility(e){e?this._cutFillRenderNode.enable():this._cutFillRenderNode.disable()}_updateCutFillGeometry(){const{renderCoordsHelper:e}=this.view,{targetGeometry:t}=this.analysisViewData;if(!t?.extent)return;const{center:i}=t.extent,s=w(i.x,i.y,0),o=C();e.toRenderCoords(s,t.spatialReference,o);const r=this._getExtrudedVolume(t,this._extrusionHeight,s,o),l=this._getExtrudedVolume(t,-this._extrusionHeight,s,o);this._cutFillRenderNode.updateGeometries(r,l,o)}_getExtrudedVolume(e,t,i,s){const{renderCoordsHelper:o,spatialReference:r,elevationProvider:l}=this.view,n=C(),a=1===o.viewingMode;o.worldUpAtPosition(s,n);const c=E(e,l,o,this._elevationContext),{polygons:u,mapPositions:m,position:d}=c,h=u[0],p=h.count,g=y(h.mapPositions,h.holeIndices,3),v=g.length,f=6*p,j=V(f+v),b=V(v),L=P(3*f),w=P(3*f);S(d,m,g,h,L,null,w,null,j,b,t,n,a);const R=_(),A=_();if(G(r,i,R,o.spatialReference),A[12]=-R[12],A[13]=-R[13],A[14]=-R[14],F(L,L,A),"stockpile"===this.analysis.measureType)for(let y=0;y<w.length;y+=3)w[y]=n[0],w[y+1]=n[1],w[y+2]=n[2];return new N(L,b,j,w)}async _updateMessageBundle(){this.loadingMessages=!0;try{this.unitsMessages=await s("esri/core/t9n/Units"),this.messages=await s("esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis")}finally{this.loadingMessages=!1}}};function I(e,t,i){if(!t||!e)return null;const s=h(t.value,t.unit,i),o=u(s);return c(e,t,s,o)}e([p({constructOnly:!0})],H.prototype,"view",void 0),e([p({constructOnly:!0})],H.prototype,"analysis",void 0),e([p({constructOnly:!0})],H.prototype,"analysisViewData",void 0),e([p()],H.prototype,"unitsMessages",void 0),e([p()],H.prototype,"messages",void 0),e([p()],H.prototype,"loadingMessages",void 0),e([p({readOnly:!0})],H.prototype,"visible",null),e([p()],H.prototype,"updating",null),e([p()],H.prototype,"hasUnsupportedError",null),H=e([g("esri.views.3d.analysis.VolumeMeasurement.VolumeMeasurementCutFillVisualization")],H);class k{constructor(e,t,i,s){this.segment=e,this.previous=t,this.next=i,this.isCut=s,this._isOccluded=!1,this._n1=C(),this._n2=C();const o=f(z,j(z,e.endRenderSpace,e.startRenderSpace));f(this._n1,b(this._n1,o,f(W,j(W,t.startRenderSpace,e.startRenderSpace)))),f(this._n2,b(this._n2,o,f(W,j(W,e.startRenderSpace,i.startRenderSpace)))),this._isConvex=n.normalize(R(this._n1,this._n2,o))<0}get isOccluded(){return this._isOccluded}updateOccluded(e){j(z,this.segment.startRenderSpace,e.eye);const t=L(this._n1,z)<0,i=L(this._n2,z)<0,s=this._isOccluded;return this._isOccluded=this._isConvex?t&&i:t||i,this._isOccluded!==s}}const z=C(),W=C();export{H as VolumeMeasurementCutFillVisualization};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import"../../../core/has.js";import t from"../../../core/Logger.js";import{removeMaybe as s}from"../../../core/maybe.js";import{watch as i,syncAndInitial as a}from"../../../core/reactiveUtils.js";import{convertUnit as r}from"../../../core/units.js";import{property as n,subclass as o}from"../../../core/accessorSupport/decorators.js";import{fromValues as l}from"../../../core/libs/gl-matrix-2/factories/quatf64.js";import{isCompatible as h}from"../../../geometry/support/heightModelInfoUtils.js";import{isPlateCarree as u,isWebMercator as d,equals as m}from"../../../geometry/support/spatialReferenceUtils.js";import{getHeightModelInfoFromVCS as p}from"../../../layers/support/tiles3DUtils.js";import{getElevationOffsetInMeters as c}from"../../../support/elevationInfoUtils.js";import{getMetersPerUnit as f}from"../../../symbols/support/unitConversionUtils.js";import{GaussianSplatLayerViewPerformanceInfo as _}from"./GaussianSplatLayerViewPerformanceInfo.js";import{LayerView3D as y}from"./LayerView3D.js";import{addLayerViewToWasm as g,getLyr3DWasm as w,removeLayerViewFromWasm as S}from"./Lyr3DWasm.js";import{Obb as b}from"../support/orientedBoundingBox.js";import{splatPageSizeInU32 as v,elementsPerSplatPage as C,packedGaussianSizeInU32 as M,splatPageSizeInU32WithoutHeader as x,gaussiansPerSplatPage as H,splatAtlasTextureWidth as U}from"../support/gaussianSplatting/GaussianSplatAtlasPages.js";import{GaussianSplatFadeHelper as T}from"../support/gaussianSplatting/GaussianSplatFadeHelper.js";import{GaussianTile as A}from"../support/gaussianSplatting/GaussianTile.js";import{GaussianSplatRenderNode as
|
|
5
|
+
import{__decorate as e}from"tslib";import"../../../core/has.js";import t from"../../../core/Logger.js";import{removeMaybe as s}from"../../../core/maybe.js";import{watch as i,syncAndInitial as a}from"../../../core/reactiveUtils.js";import{convertUnit as r}from"../../../core/units.js";import{property as n,subclass as o}from"../../../core/accessorSupport/decorators.js";import{fromValues as l}from"../../../core/libs/gl-matrix-2/factories/quatf64.js";import{isCompatible as h}from"../../../geometry/support/heightModelInfoUtils.js";import{isPlateCarree as u,isWebMercator as d,equals as m}from"../../../geometry/support/spatialReferenceUtils.js";import{getHeightModelInfoFromVCS as p}from"../../../layers/support/tiles3DUtils.js";import{getElevationOffsetInMeters as c}from"../../../support/elevationInfoUtils.js";import{getMetersPerUnit as f}from"../../../symbols/support/unitConversionUtils.js";import{GaussianSplatLayerViewPerformanceInfo as _}from"./GaussianSplatLayerViewPerformanceInfo.js";import{LayerView3D as y}from"./LayerView3D.js";import{addLayerViewToWasm as g,getLyr3DWasm as w,removeLayerViewFromWasm as S}from"./Lyr3DWasm.js";import{Obb as b}from"../support/orientedBoundingBox.js";import{splatPageSizeInU32 as v,elementsPerSplatPage as C,packedGaussianSizeInU32 as M,splatPageSizeInU32WithoutHeader as x,gaussiansPerSplatPage as H,splatAtlasTextureWidth as U}from"../support/gaussianSplatting/GaussianSplatAtlasPages.js";import{GaussianSplatFadeHelper as T}from"../support/gaussianSplatting/GaussianSplatFadeHelper.js";import{GaussianTile as A}from"../support/gaussianSplatting/GaussianTile.js";import{GaussianSplatRenderNode as G}from"../webgl-engine/lib/GaussianSplatRenderNode.js";import j from"../../layers/LayerView.js";import{spatialReferenceIncompatibleError as V,isInEffectiveScaleRange as L}from"../../support/layerViewUtils.js";import{TaskPriority as E}from"../../support/Scheduler.js";const I=()=>t.getLogger("esri.views.3d.layers.GaussianSplatLayerView3D");let O=class extends(y(j)){constructor(e){super(e),this.type="gaussian-splat-3d",this.ignoresMemoryFactor=!1,this._tileHandles=new Map,this._pageBuffer=new Uint32Array(v),this._frameTask=null,this._wasmLayerId=-1,this._metersPerVCSUnit=1,this._usedMemory=0,this._cacheMemory=0,this._useEsriCrs=!1,this.fullExtentInLocalViewSpatialReference=null,this._suspendedHandle=null,this._conversionBuffer=new ArrayBuffer(4),this._u32View=new Uint32Array(this._conversionBuffer),this._f32View=new Float32Array(this._conversionBuffer);const{view:t}=e;this._memCache=t.resourceController.memoryController.newCache(`GaussianSplat-${this.uid}`,e=>this._deleteTile(e)),this._fadeHelper=new T(this),this._renderNode=new G({view:t,fadeHelper:this._fadeHelper})}initialize(){if(!this._canProjectWithoutEngine())throw V("layer",this.layer.spatialReference.wkid,this.view.renderSpatialReference?.wkid);const e=g(this).then(e=>{this._wasmLayerId=e,this.addHandles([i(()=>this.layer.elevationInfo,e=>this._elevationInfoChanged(e))]),this._suspendedHandle=i(()=>this.suspended,e=>this._wasm?.setEnabled(this,!e),a),this.setMaximumGaussianCount(this.view.qualitySettings.gaussianSplat.maximumNumberOfGaussians)});this.addHandles([i(()=>this.view.qualitySettings.fadeDuration,e=>{this._fadeHelper.onFadeDurationChanged(e),this.data.fadingTexture.updateTexture(this.data.textureAtlas.pageAllocator.pageCount)}),i(()=>this.view.qualitySettings.gaussianSplat.maximumNumberOfGaussians,e=>this.setMaximumGaussianCount(e*this.view.quality)),i(()=>this.view.quality,e=>this.setMaximumGaussianCount(this.view.qualitySettings.gaussianSplat.maximumNumberOfGaussians*e))]),this.addResolvingPromise(e),this._frameTask=this.view.resourceController.scheduler.registerTask(E.GAUSSIAN_SPLAT_TEXTURE_ATLAS)}get wasmLayerId(){return this._wasmLayerId}get metersPerVCSUnit(){return this._metersPerVCSUnit}get tileHandles(){return this._tileHandles}get _wasm(){return w(this.view)}get usedMemory(){return this._usedMemory}get cachedMemory(){return this._cacheMemory}get unloadedMemory(){return 0}get useEsriCrs(){return this._useEsriCrs}get data(){return this._renderNode.data}get visibleAtCurrentScale(){return L(this.layer.effectiveScaleRange,this.view.scale)}isUpdating(){const e=this._wasm;return!(this._wasmLayerId<0||null==e)&&(e.isUpdating(this._wasmLayerId)||this._renderNode.data.isUpdating()||this._fadeHelper.isUpdating())}updatingFlagChanged(){this.notifyChange("updating")}async createRenderable(e){const t=e.meshData;if(null==t.data)throw new Error("meshData.data undefined");if(t.desc=JSON.parse(t.desc),null==t.desc)throw new Error("meshData.desc undefined");const s=t.desc.prims[0],i=s.vertexCount,a=s.atrbs[0].view,r=s.atrbs[0].view.byteCount,n=s.atrbs[0].view.byteOffset;let o=null;if("U32"!==a.type)return I().warnOnce("unexpected meshData.data format"),{memUsageBytes:0,numGaussians:0};o=new Uint32Array(t.data.buffer,n,r/4);const h=this.extractHeader(o),u=Math.ceil(i/H),d=new Uint32Array(i),m=new Array;let p=!1,c=0;const f=async e=>{for(;c<u&&!e.done&&!p;c++){let t=this.data.textureAtlas.requestPage();if(null===t&&(this._freeInvisibleTiles(),t=this.data.textureAtlas.requestPage()),null!==t){m.push(t);const s=i-c*H,a=Math.min(s,H),r=c*H;for(let e=0;e<a;e++)d[e+r]=e+C*t;const n=c*x;this._pageBuffer.set(o.subarray(n,n+a*M)),this._pageBuffer.set(h.packedHeader,x);const l=t*C,u=l%U,p=Math.floor(l/U);this.data.textureAtlas.update(u,p,this._pageBuffer),e.madeProgress()}else p=!0}c<u&&!p&&await this._frameTask.schedule(f)};if(await this._frameTask.schedule(f),p)return I().warnOnce("ran out of gaussian splat memory"),{memUsageBytes:0,numGaussians:0};const _=new Float64Array(3*i),y=new Float64Array(i),g=2.048,w=h.tileOrigin.x*g,S=h.tileOrigin.y*g,v=h.tileOrigin.z*g,T=h.invPosScale;let G=0,j=0,V=0;const L=async e=>{for(;V<i&&!e.done;V++){const t=V*M,{rawX:s,rawY:i,rawZ:a}=this._extractGaussianPosition(o,t),r=this._extractGaussianSphericalScale(o,t);_[G]=s*T+w,_[G+1]=i*T+S,_[G+2]=a*T+v,y[V]=r*r,j=Math.max(j,r),G+=3,e.madeProgress()}V<i&&await this._frameTask.schedule(L)};await this._frameTask.schedule(L);let E=null;if(t.desc.obb){const e=t.desc.obb.quaternion;E=new b(t.desc.obb.center,t.desc.obb.halfSize,l(...e))}E||(I().warnOnce("encountered tile without a bounding box"),E=new b);const O=new A(e.handle,E,d,m,_,y,j);return this._memCache.put(`${O.handle}`,O),this._tileHandles.set(e.handle,O),this._cacheMemory+=O.usedMemory,{memUsageBytes:O.usedMemory,numGaussians:i}}_extractGaussianPosition(e,t){const s=e[t+1];return{rawX:16383&s,rawY:s>>>14&16383,rawZ:s>>>28&15|(1023&e[t+2])<<4}}_extractGaussianSphericalScale(e,t){const s=e[t+2],i=s>>>10&255,a=s>>>18&255,r=s>>>26&63|(3&e[t+3])<<6,n=Math.exp(i/16-10),o=Math.exp(a/16-10),l=Math.exp(r/16-10);return Math.max(n,o,l)}freeRenderable(e){const t=this._tileHandles.get(e);t&&(t.isVisible&&!this._fadeHelper.isTileFadingOut(t)?this._usedMemory-=t.usedMemory:this._cacheMemory-=t.usedMemory,t.pageIds.forEach(e=>this.data.textureAtlas.freePage(e)),this.freeObject(t),this._tileHandles.delete(e)),this.updateGaussians()}freeObject(e){this._memCache.pop(`${e.handle}`)}setRenderableVisibility(e,t,s){for(let i=0;i<s;i++){if(!t[i])continue;const s=e[i],a=this._tileHandles.get(s);a&&(a.isVisible&&!this._fadeHelper.isTileFadingOut(a)||(a.isVisible=!0,this._fadeHelper.isTileFadingOut(a)||this._popTileFromCache(a),this._fadeHelper.fadeTile(a,0)))}for(let i=0;i<s;i++){if(t[i])continue;const s=e[i],a=this._tileHandles.get(s);a&&a.isVisible&&this._fadeHelper.fadeTile(a,1)}this.updateGaussians()}_popTileFromCache(e){this._usedMemory+=e.usedMemory,this._cacheMemory-=e.usedMemory,this._memCache.pop(`${e.handle}`)}moveTileToCache(e){this._usedMemory-=e.usedMemory,this._cacheMemory+=e.usedMemory,this._memCache.put(`${e.handle}`,e)}destroy(){S(this),this._suspendedHandle&&(this._suspendedHandle=s(this._suspendedHandle)),this._frameTask.remove(),this._renderNode.destroy(),this._memCache.destroy()}_canProjectWithoutEngine(){if(1===this.view.state.viewingMode)return!0;if(u(this.view.renderSpatialReference)||d(this.view.renderSpatialReference))return!0;if(this.layer.esriCrsSpatialReference&&m(this.layer.esriCrsSpatialReference,this.view.renderSpatialReference)){const e=p(this.layer.esriCrsSpatialReference),t=this.view.heightModelInfo;return this._useEsriCrs=0===h(e,t,!1),this._useEsriCrs&&e&&(this._metersPerVCSUnit=r(1,"meters",e.heightUnit),this.fullExtentInLocalViewSpatialReference=this.layer.esriCrsFullExtent),this._useEsriCrs}return!1}_elevationInfoChanged(e){if(e?.offset)if(this._useEsriCrs){const t=f(e?.unit)/this._metersPerVCSUnit,s=e?.offset??0;this._wasm?.setLayerOffset(this,s*t)}else this._wasm?.setLayerOffset(this,c(e));else this._wasm?.setLayerOffset(this,0)}updateGaussians(){const e=new Array;for(const t of this._tileHandles.values())t.isVisible&&e.push(t);this.data.updateGaussianVisibility(e),this.notifyChange("updating")}setMaximumGaussianCount(e){this._wasm?.setMaximumGaussianSplatCount(e)}_freeInvisibleTiles(){for(const e of this._tileHandles.values())e.isVisible||this._deleteTile(e)}extractHeader(e){const t=e.length-4,s=this.reinterpretU32AsFloat(e[t]),i=this.reinterpretU32AsFloat(e[t+1]),a=this.reinterpretU32AsFloat(e[t+2]),r=1/(1<<(255&e[t+3]));return{packedHeader:e.subarray(t,t+4),tileOrigin:{x:s,y:i,z:a},invPosScale:r}}_deleteTile(e){this._wasm?.onRenderableEvicted(this,e.handle,e.usedMemory),this.freeRenderable(e.handle)}reinterpretU32AsFloat(e){return this._u32View[0]=e,this._f32View[0]}get performanceInfo(){let e=0,t=0;return this._tileHandles.forEach(s=>{s.isVisible?e++:t++}),new _(this.usedMemory,e,t,this.cachedMemory)}get test(){}};e([n()],O.prototype,"layer",void 0),e([n({readOnly:!0})],O.prototype,"visibleAtCurrentScale",null),e([n()],O.prototype,"fullExtentInLocalViewSpatialReference",void 0),O=e([o("esri.views.3d.layers.GaussianSplatLayerView3D")],O);const R=O;export{R 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../core/Error.js";import"../../../core/has.js";import{whenOnce as i,watch as r,sync as s}from"../../../core/reactiveUtils.js";import{property as
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../../core/Error.js";import"../../../core/has.js";import{whenOnce as i,watch as r,sync as s}from"../../../core/reactiveUtils.js";import{property as l,subclass as a}from"../../../core/accessorSupport/decorators.js";import{computeSrcResolutions as o,projectDatasetExtent as n}from"../../../layers/raster/functions/rasterProjectionHelper.js";import{LayerView3D as h}from"./LayerView3D.js";import{TiledLayerView3D as m}from"./TiledLayerView3D.js";import d from"../support/flow/FlowSubViewTiles3D.js";import{RasterTile as u}from"../terrain/RasterTile.js";import{ImageryTileLayerViewMixin as p}from"../../layers/ImageryTileLayerViewMixin.js";import y from"../../layers/LayerView.js";import{RefreshableLayerView as c}from"../../layers/RefreshableLayerView.js";import{createQueryGeometry as f}from"../../support/drapedUtils.js";import{getWebGLCapabilities as b}from"../../webgl/capabilities.js";let g=class extends(p(c(m(h(y))))){constructor(){super(...arguments),this._srcResolutions=[],this.type="imagery-tile-3d",this._isAlignedMapTile=!0,this._flowSubView=null,this.ignoresMemoryFactor=!1,this.unloadedMemory=0}initialize(){this.layer.increaseRasterJobHandlerUsage(),null==this.fullExtent&&this.addResolvingPromise(Promise.reject(new t("layerview:spatial-reference-incompatible","The layer extent cannot be projected to the view's spatial reference",{layer:this.layer})));const e=i(()=>this.view?.basemapTerrain?.tilingSchemeLocked).then(()=>{const e=this.view.basemapTerrain.tilingScheme,t=this.layer.tileInfo;this._isAlignedMapTile=["png","png24","png32","jpg","mixed"].includes(t.format)&&e.compatibleWith(t),this.tileInfo=this._isAlignedMapTile?t:e.toTileInfo(),this._srcResolutions=o(this.layer.serviceRasterInfo,this.tileInfo),this.addHandles([r(()=>this.layer.renderer,e=>{this._setSubView(e),this._updatingHandles.addPromise(this.doRefresh())},s),r(()=>[this.layer.interpolation,this.layer.bandIds,this.layer.multidimensionalDefinition,this.layer.multidimensionalSubset,this.layer.rasterFunction,this.timeExtent],()=>this._updatingHandles.addPromise(this.doRefresh()),s)])});this._setSubView(this.layer.renderer),this.addResolvingPromise(e)}destroy(){this.layer.decreaseRasterJobHandlerUsage(),this._flowSubView?.destroy()}_setSubView(e){if("wcs"===this.layer.type)return;const t="flow"===e?.type,i=this._flowSubView;t&&null!=i||(i?.destroy(),this._flowSubView=t?new d({layerView:this}):null)}get _blankTile(){const e=document.createElement("canvas"),t=e.getContext("2d"),[i,r]=this.tileInfo.size;return e.width=i,e.height=r,t.clearRect(0,0,i,r),t.getImageData(0,0,i,r)}get _hasFlow(){return null!=this._flowSubView}get imageFormatIsOpaque(){return"jpg"===this.layer.tileInfo.format}get hasMixedImageFormats(){return"mixed"===this.layer.tileInfo.format}get dataLevelRange(){const e=this.layer.tileInfo,t=this.tileInfo.lodAt(0)?.scale,i=e.lodAt(e.lods.length-1)?.scale;return this.levelRangeFromScaleRange(t,i)}get visibleAtCurrentScale(){return this._flowSubView?.visibleAtCurrentScale??this.tilesVisibleAtCurrentScale()}_getFullExtent(){return n(this.layer.serviceRasterInfo,this.view.basemapTerrain?.spatialReference??this.view.spatialReference)}async fetchTile(e,t){const i=this.tileInfo,r=this._canSymbolizeInWebGL(),s={tileInfo:i,requestRawData:r&&!this._hasFlow,signal:t.signal,timeExtent:this.timeExtent,requestAsImageElement:this._isAlignedMapTile,requestProjectedLocalDirections:this._hasFlow,srcResolution:this._srcResolutions[e[0]],noClip:!1},{layer:l}=this,[a,o,n]=e,h=await l.fetchTile(a,o,n,s);if(h instanceof HTMLImageElement)return h;let m=h?.pixelBlock;if(null==m)return this._blankTile;if(!r&&!this._hasFlow&&(m=await l.applyRenderer(h),null==m))return this._blankTile;const d=new u([a,o,n],m,i.size[0],i.size[1]);return r?(d.symbolizerRenderer=l.symbolizer.rendererJSON,d.symbolizerParameters=l.symbolizer.generateWebGLParameters(this._getSymbolizerOptions(a)),d.transformGrid=h.transformGrid,d.bandIds=l.bandIds):(d.isRendereredSource=!0,d.bandIds=null),d.interpolation=l.interpolation,d}_getSymbolizerOptions(e){const t=this.tileInfo.lodAt(e).resolution;return{pixelBlock:null,isGCS:null!=this.view.basemapTerrain?.spatialReference?this.view.basemapTerrain.spatialReference.isGeographic:this.view.spatialReference.isGeographic,resolution:{x:t,y:t},bandIds:this.layer.bandIds}}ensureSymbolizerParameters(e){this._canSymbolizeInWebGL()&&JSON.stringify(e.symbolizerRenderer)!==JSON.stringify(this.layer.symbolizer.rendererJSON)&&(e.symbolizerParameters=this.layer.symbolizer.generateWebGLParameters(this._getSymbolizerOptions(e.lij[0])))}createFetchPopupFeaturesQueryGeometry(e,t){return f(e,t,this.view)}async doRefresh(){this.suspended||(this._flowSubView?.doRefresh(),this.emit("data-changed"))}isUpdating(){return this._flowSubView?.updating??!1}_canSymbolizeInWebGL(){const e=b(),{symbolizer:t}=this.layer,i=t.lookup.colormapLut?.indexedColormap,r=!!this.layer.rasterFunction?.hasClipFunction,s=i&&i.length>4*(e.maxTextureSize||4096);return t.canRenderInWebGL&&!s&&!r}get usedMemory(){return this._flowSubView?.usedMemory??0}get test(){}};e([l({readOnly:!0})],g.prototype,"_blankTile",null),e([l()],g.prototype,"_hasFlow",null),e([l({readOnly:!0})],g.prototype,"imageFormatIsOpaque",null),e([l({readOnly:!0})],g.prototype,"hasMixedImageFormats",null),e([l()],g.prototype,"_flowSubView",void 0),e([l({readOnly:!0})],g.prototype,"dataLevelRange",null),e([l({readOnly:!0})],g.prototype,"visibleAtCurrentScale",null),g=e([a("esri.views.3d.layers.ImageryTileLayerView3D")],g);const w=g;export{w 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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{remove as e}from"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{createAbortError as t,createResolver as r,onAbort as s}from"../../../../core/promiseUtils.js";import i from"../../../../geometry/Multipoint.js";import{TaskPriority as o,noBudget as n}from"../../../support/Scheduler.js";class a{constructor(e,t){this.spatialReference=e,this._view=t}getElevation(e,t,r){return this._view.elevationProvider.getElevation(e,t,0,this.spatialReference,r)}async queryElevation(e,t,r,s,i){return this._view.elevationProvider.queryElevation(e,t,0,this.spatialReference,i,r,s)}}class l{constructor(e,t,r,s){this.spatialReference=t,this._getElevationQueryProvider=r,this._queries=new Array,this._queryOptions={...s,ignoreInvisibleLayers:!0},this._frameTask=e.registerTask(o.ELEVATION_QUERY,this)}destroy({completeTasks:e}={completeTasks:!1}){if(this._frameTask.remove(),this.readyToRun)if(e)this.runTask(n);else for(const r of this._queries)r.result.reject(t())}queryElevation(i,o,n,a=0){const l=r(),u={x:i,y:o,minDemResolution:a,result:l,signal:n};return this._queries.push(u),s(n,()=>{e(this._queries,u),l.reject(t())}),l.promise}get readyToRun(){return this._queries.length>0}runTask(e){const r=this._queries;this._queries=[];const o=this._getElevationQueryProvider();if(!o)return r.forEach(e=>e.result.reject()),void e.madeProgress();const n=r.map(e=>[e.x,e.y]),a=r.reduce((e,t)=>Math.min(e,t.minDemResolution),1/0),l=new i({points:n,spatialReference:this.spatialReference}),u=r.length>1&&r.some(e=>!!e.signal)?new AbortController:null,c=null!=u?u.signal:r[0].signal;if(null!=u){let e=0;r.forEach(i=>s(i.signal,()=>{e++,i.result.reject(t()),e===r.length&&u.abort()}))}const h={...this._queryOptions,minDemResolution:a,signal:c};o.queryElevation(l,h).then(e=>{r.forEach((r,s)=>{null!=r.signal&&r.signal.aborted
|
|
5
|
+
import{remove as e}from"../../../../core/arrayUtils.js";import"../../../../core/has.js";import{createAbortError as t,createResolver as r,onAbort as s}from"../../../../core/promiseUtils.js";import i from"../../../../geometry/Multipoint.js";import{TaskPriority as o,noBudget as n}from"../../../support/Scheduler.js";class a{constructor(e,t){this.spatialReference=e,this._view=t}getElevation(e,t,r){return this._view.elevationProvider.getElevation(e,t,0,this.spatialReference,r)}async queryElevation(e,t,r,s,i){return this._view.elevationProvider.queryElevation(e,t,0,this.spatialReference,i,r,s)}}class l{constructor(e,t,r,s){this.spatialReference=t,this._getElevationQueryProvider=r,this._queries=new Array,this._queryOptions={...s,ignoreInvisibleLayers:!0},this._frameTask=e.registerTask(o.ELEVATION_QUERY,this)}destroy({completeTasks:e}={completeTasks:!1}){if(this._frameTask.remove(),this.readyToRun)if(e)this.runTask(n);else for(const r of this._queries)r.result.reject(t())}queryElevation(i,o,n,a=0){const l=r(),u={x:i,y:o,minDemResolution:a,result:l,signal:n};return this._queries.push(u),s(n,()=>{e(this._queries,u),l.reject(t())}),l.promise}get readyToRun(){return this._queries.length>0}runTask(e){const r=this._queries;this._queries=[];const o=this._getElevationQueryProvider();if(!o)return r.forEach(e=>e.result.reject()),void e.madeProgress();const n=r.map(e=>[e.x,e.y]),a=r.reduce((e,t)=>Math.min(e,t.minDemResolution),1/0),l=new i({points:n,spatialReference:this.spatialReference}),u=r.length>1&&r.some(e=>!!e.signal)?new AbortController:null,c=null!=u?u.signal:r[0].signal;if(null!=u){let e=0;r.forEach(i=>s(i.signal,()=>{e++,i.result.reject(t()),e===r.length&&u.abort()}))}const h={...this._queryOptions,minDemResolution:a,signal:c};o.queryElevation(l,h).then(e=>{r.forEach((r,s)=>{if(null!=r.signal&&r.signal.aborted)r.result.reject(t());else{const t=e.geometry.points[s][2],i=void 0!==h.noDataValue&&t===h.noDataValue?null:t;r.result.resolve(i)}})}).catch(e=>{r.forEach(t=>t.result.reject(e))}),e.madeProgress()}get test(){}}export{l as ElevationQuery,a as ViewElevationProvider};
|