@arcgis/core 5.2.0-next.136 → 5.2.0-next.138
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/analysis/LineOfSightAnalysisObserver.d.ts +12 -0
- package/analysis/LineOfSightAnalysisObserver.js +1 -1
- package/analysis/LineOfSightAnalysisTarget.d.ts +12 -0
- package/analysis/LineOfSightAnalysisTarget.js +1 -1
- package/arcade/featureset/sources/FeatureLayerParquet.js +1 -1
- package/arcgisGlobal.d.ts +4 -0
- package/assets/components/assets/icon/blockHeightMedium16.json +1 -0
- package/assets/components/assets/icon/blockHeightMedium24.json +1 -0
- package/assets/components/assets/icon/blockHeightMedium32.json +1 -0
- package/assets/components/assets/icon/blockHeightShort16.json +1 -0
- package/assets/components/assets/icon/blockHeightShort24.json +1 -0
- package/assets/components/assets/icon/blockHeightShort32.json +1 -0
- package/assets/components/assets/icon/blockHeightTall16.json +1 -0
- package/assets/components/assets/icon/blockHeightTall24.json +1 -0
- package/assets/components/assets/icon/blockHeightTall32.json +1 -0
- package/assets/components/assets/icon/cursorCircle16.json +1 -0
- package/assets/components/assets/icon/cursorCircle24.json +1 -0
- package/assets/components/assets/icon/cursorCircle32.json +1 -0
- package/assets/components/assets/icon/dictionary16.json +1 -0
- package/assets/components/assets/icon/dictionary24.json +1 -0
- package/assets/components/assets/icon/dictionary32.json +1 -0
- package/assets/components/assets/icon/jobDependency16.json +1 -0
- package/assets/components/assets/icon/jobDependency24.json +1 -0
- package/assets/components/assets/icon/jobDependency32.json +1 -0
- package/assets/components/assets/icon/referenceChip16.json +1 -0
- package/assets/components/assets/icon/referenceChip24.json +1 -0
- package/assets/components/assets/icon/referenceChip32.json +1 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{4e6f95d8c624d513849a.js → 05963f57cbe5a5249496.js} +1 -1
- package/assets/esri/core/workers/chunks/{0b8681ca4a83e97f1f71.js → 067de1910190da228291.js} +1 -1
- package/assets/esri/core/workers/chunks/{3c0fd1c6cda44e9f40ab.js → 070684943698fa43c2b4.js} +1 -1
- package/assets/esri/core/workers/chunks/{bc1cb4b9a02e6c78deb7.js → 076e8d2e08ff2a013736.js} +1 -1
- package/assets/esri/core/workers/chunks/{c10e040368065411506a.js → 10445313d0d57b34511b.js} +1 -1
- package/assets/esri/core/workers/chunks/{d537c59b46cdaaf66034.js → 1188d0a136fffc009643.js} +1 -1
- package/assets/esri/core/workers/chunks/{20af3f085f60c32c6c53.js → 178083d8ed7707b45ca2.js} +1 -1
- package/assets/esri/core/workers/chunks/{f5efe3e800c6e23efcf3.js → 1819c45655c836b9a8d7.js} +1 -1
- package/assets/esri/core/workers/chunks/1b946714ca4a1a7359d4.js +2 -0
- package/assets/esri/core/workers/chunks/{d8d8b38ac8a91d9e45fc.js → 1cc744ab5eee5ee3bed8.js} +1 -1
- package/assets/esri/core/workers/chunks/{05e39b4de7f62c5b22cc.js → 20f75cc777af13fa249b.js} +1 -1
- package/assets/esri/core/workers/chunks/2a1ec30f9ad305763f81.js +2 -0
- package/assets/esri/core/workers/chunks/34570e6bbf559f18c1a5.js +1 -0
- package/assets/esri/core/workers/chunks/{60f6d5da9480dd36e877.js → 3dddae78286d05eb10fc.js} +1 -1
- package/assets/esri/core/workers/chunks/{9efd30bbd02ec0d1031b.js → 3ec3589f6e74d7cb87cf.js} +1 -1
- package/assets/esri/core/workers/chunks/{0bec054fca104f3bf141.js → 3f776d9fd2ab68b21fca.js} +1 -1
- package/assets/esri/core/workers/chunks/402a82c77420254831bc.js +1 -0
- package/assets/esri/core/workers/chunks/{e2ebf0ea3af2e6907987.js → 406f24ec13eb30d43405.js} +1 -1
- package/assets/esri/core/workers/chunks/43fc42405167a5537039.js +1 -0
- package/assets/esri/core/workers/chunks/{ddedc414bb478b376221.js → 46b2d4addfc73f9183a4.js} +1 -1
- package/assets/esri/core/workers/chunks/498d6dfd3bb0d3490548.js +1 -0
- package/assets/esri/core/workers/chunks/{36ef86701883a20dd6f6.js → 4a640548032355e57acd.js} +1 -1
- package/assets/esri/core/workers/chunks/5566f14afb63065e438f.js +1 -0
- package/assets/esri/core/workers/chunks/{c3b96d1d43afccd23e45.js → 590e6c70206122e4cc3c.js} +2 -2
- package/assets/esri/core/workers/chunks/{54860dd53a46cf4c47f3.js → 59295b99bdff4045a0e7.js} +1 -1
- package/assets/esri/core/workers/chunks/5aeb5e18514644fe2cf9.js +1 -0
- package/assets/esri/core/workers/chunks/{5da86409d70098fc6a10.js → 5b3cfe95314a75a735c1.js} +1 -1
- package/assets/esri/core/workers/chunks/{a54678bfa0f1807b61cd.js → 5c855af73ee3c3e764fb.js} +1 -1
- package/assets/esri/core/workers/chunks/{06da3409992bb1fa85b0.js → 5e90c1b49f2b7e21d05a.js} +39 -31
- package/assets/esri/core/workers/chunks/5fd099ca1024707387b2.js +1 -0
- package/assets/esri/core/workers/chunks/{30f808cac8a34f95ea6e.js → 6079d27f4ab319fb8f0c.js} +1 -1
- package/assets/esri/core/workers/chunks/66c2a28a851130b87c04.js +1 -0
- package/assets/esri/core/workers/chunks/{dac90b3631f7f7158f68.js → 67f15538c51838201fc7.js} +1 -1
- package/assets/esri/core/workers/chunks/{cfaba0470619786e1ef8.js → 68d8ae42ab71d01a70a5.js} +2 -2
- package/assets/esri/core/workers/chunks/6aebf7cfd294e88bf926.js +1 -0
- package/assets/esri/core/workers/chunks/{864e7030c4ddbfcf0114.js → 6ccf9535013fe672c93b.js} +1 -1
- package/assets/esri/core/workers/chunks/{ba7f0cf7e495d3ec2d55.js → 6e62581d933e7298d1f6.js} +1 -1
- package/assets/esri/core/workers/chunks/{83b5dd4029e00abd80bf.js → 700b1d5bc67b7e1b3ff3.js} +1 -1
- package/assets/esri/core/workers/chunks/{f9fea72cc222a30ef2f9.js → 72399062767abdfb0bee.js} +1 -1
- package/assets/esri/core/workers/chunks/{2a7fbfd77002a24bf737.js → 747461bb6a1bc2f0a64d.js} +1 -1
- package/assets/esri/core/workers/chunks/{c333f6ed42985bb2b11f.js → 7851aef196eea5d6c94e.js} +1 -1
- package/assets/esri/core/workers/chunks/{f0b6bd6fab5320c3082f.js → 7a05b18f655c1167ce0a.js} +1 -1
- package/assets/esri/core/workers/chunks/{04296b75d0f81fbd1bb5.js → 864194927d05ebc4cc31.js} +1 -1
- package/assets/esri/core/workers/chunks/{3c4a13a9f0b305394a26.js → 876f7633c15f1e31078d.js} +1 -1
- package/assets/esri/core/workers/chunks/{62298dba3f6cbdc3f4ae.js → 879b2f0ff1977bca9376.js} +1 -1
- package/assets/esri/core/workers/chunks/{b547b3bce729c9dac90d.js → 898359be6996fd9763b8.js} +1 -1
- package/assets/esri/core/workers/chunks/8cb716f110d164030309.js +1 -0
- package/assets/esri/core/workers/chunks/8dc1c3042267618fd710.js +2 -0
- package/assets/esri/core/workers/chunks/{625f02db93d7fbf175ca.js → 9001e9a1e81bce175ddd.js} +1 -1
- package/assets/esri/core/workers/chunks/{9ffa6c8d93d3443834c6.js → 912080c90b5cc2e817cf.js} +1 -1
- package/assets/esri/core/workers/chunks/96c50a0dda0f1503ef92.js +2 -0
- package/assets/esri/core/workers/chunks/{13e4379441499599c3b5.js → 9cbde13e536676767900.js} +1 -1
- package/assets/esri/core/workers/chunks/{408db4f32850b77264ae.js → 9cd3fcb5fca6f9dbbcd8.js} +1 -1
- package/assets/esri/core/workers/chunks/a054da6cbd8ee4774a57.js +1 -0
- package/assets/esri/core/workers/chunks/a05790444115e4cf1bcc.js +1 -0
- package/assets/esri/core/workers/chunks/{d1f2685782b423ef87a6.js → a556dd4e9e6d35e33a2c.js} +1 -1
- package/assets/esri/core/workers/chunks/{00d576d355599c88931e.js → bc38def1983089514e4b.js} +1 -1
- package/assets/esri/core/workers/chunks/{0725e515f3004bdd5c56.js → ca2adcbcf44454484fd5.js} +1 -1
- package/assets/esri/core/workers/chunks/{f3507b9e831ffd7a6bf8.js → cca8bd07bcd1d267a2e8.js} +1 -1
- package/assets/esri/core/workers/chunks/cfae60b9d2f2939e9c16.js +1 -0
- package/assets/esri/core/workers/chunks/{1d6b2a64f4e40e5cc13d.js → d201fbf3ceff946d2bd6.js} +1 -1
- package/assets/esri/core/workers/chunks/{4439078780d9ba49fd26.js → d51bb11baadc741c46bc.js} +1 -1
- package/assets/esri/core/workers/chunks/db1ab9b9c8bf5c7635d3.js +1 -0
- package/assets/esri/core/workers/chunks/de02a6a1f4810f99e9bb.js +1 -0
- package/assets/esri/core/workers/chunks/e630f3c56c077cb2bd8e.js +1 -0
- package/assets/esri/core/workers/chunks/e81173724e8de8c1e65b.js +1 -0
- package/assets/esri/core/workers/chunks/{2025288bed125594ceda.js → f6e62d2d279a328cbed7.js} +1 -1
- package/assets/esri/core/workers/chunks/{47c19778fcee7154ca38.js → f8bc474434fd365ab174.js} +1 -1
- package/assets/esri/core/workers/chunks/{9a20dc26cb9c7b2087cf.js → f95a1f878c9c1146180e.js} +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ar.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.bg.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.bs.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ca.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.cs.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.da.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.de.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.el.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.en.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.es.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.et.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.fi.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.fr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.he.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.hr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.hu.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.id.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.it.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ja.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ko.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.lt.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.lv.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.nl.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.no.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pl.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pt-BR.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pt-PT.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ro.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ru.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sk.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sl.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sv.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.th.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.tr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.uk.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.vi.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-CN.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-HK.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-TW.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.ar.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.bg.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.bs.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.ca.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.cs.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.da.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.de.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.el.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.es.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.et.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.fi.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.fr.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.he.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.hr.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.hu.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.id.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.it.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.ja.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.ko.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.lt.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.lv.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.nl.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.no.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.pl.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.pt-BR.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.pt-PT.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.ro.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.ru.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.sk.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.sl.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.sr.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.sv.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.th.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.tr.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.uk.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.vi.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.zh-CN.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.zh-HK.json +1 -1
- package/assets/esri/widgets/FeatureForm/t9n/messages.zh-TW.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ar.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.bg.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.bs.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ca.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.cs.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.da.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.de.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.el.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.en.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.es.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.et.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.fi.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.fr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.he.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.hr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.hu.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.id.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.it.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ja.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ko.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.lt.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.lv.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.nl.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.no.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.pl.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.pt-BR.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.pt-PT.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ro.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.ru.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sk.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sl.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.sv.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.th.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.tr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.uk.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.vi.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.zh-CN.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.zh-HK.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/messages.zh-TW.json +1 -1
- package/chunks/Bufferer-CclWhXVb.js +1 -1
- package/chunks/Component.glsl.js +3 -3
- package/chunks/DefaultMaterial.glsl.js +2 -2
- package/chunks/Distance2DCalculator-DjIp2uQi.js +1 -1
- package/chunks/Envelope.js +1 -1
- package/chunks/Envelope2D.js +1 -1
- package/chunks/FocusArea.glsl.js +8 -10
- package/chunks/GaussianSplat.glsl.js +2 -2
- package/chunks/GeodeticDistanceCalculator-zRp89-dW.js +1 -1
- package/chunks/GeodeticUtils.js +1 -1
- package/chunks/Geometry.js +1 -1
- package/chunks/GeometryCleaner-CIE8Wfmb.js +1 -1
- package/chunks/GlobalIllumination.glsl.js +3 -3
- package/chunks/LineMarker.glsl.js +35 -42
- package/chunks/MultiPathImpl.js +1 -1
- package/chunks/OperatorAffineTransform.js +1 -1
- package/chunks/OperatorClip.js +1 -1
- package/chunks/OperatorDensify.js +1 -1
- package/chunks/OperatorDistance.js +1 -1
- package/chunks/OperatorGeneralize.js +1 -1
- package/chunks/OperatorGeodesicBuffer.js +1 -1
- package/chunks/OperatorGeodeticArea.js +1 -1
- package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
- package/chunks/OperatorGeodeticDistance.js +1 -1
- package/chunks/OperatorGeodeticLength.js +1 -1
- package/chunks/OperatorGraphicBuffer.js +1 -1
- package/chunks/OperatorIntegrate.js +1 -1
- package/chunks/OperatorMultiPartToSinglePart.js +1 -1
- package/chunks/OperatorProximity.js +1 -1
- package/chunks/OperatorProximityGeodesic.js +1 -1
- package/chunks/OperatorShapePreservingLength.js +1 -1
- package/chunks/OperatorShapePreservingProject.js +1 -1
- package/chunks/OperatorSimplifyOGC.js +1 -1
- package/chunks/Path.glsl.js +2 -2
- package/chunks/Point2D.js +1 -1
- package/chunks/RealisticTree.glsl.js +2 -2
- package/chunks/RibbonLine.glsl.js +51 -57
- package/chunks/SideCalculator2D-DX0718xq.js +1 -1
- package/chunks/Terrain.glsl.js +2 -2
- package/chunks/Transformation2D.js +1 -1
- package/chunks/UnitFactory.js +1 -1
- package/config.js +1 -1
- package/core/workers/RemoteClient.js +1 -1
- package/core/workers/workerFactory.js +1 -1
- package/editing/fieldUtils.d.ts +12 -0
- package/editing/sharedTemplates/templateDefinitions/TemplateDefinitionBase.js +1 -1
- package/geometry/operators/extendOperator.js +1 -1
- package/geometry/operators/gx/operatorAlphaShape.js +1 -1
- package/geometry/operators/gx/operatorBoundary.js +1 -1
- package/geometry/operators/gx/operatorBuffer.js +1 -1
- package/geometry/operators/gx/operatorConvexHull.js +1 -1
- package/geometry/operators/gx/operatorLabelPoint.js +1 -1
- package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
- package/geometry/operators/gx/operatorLocateBetween.js +1 -1
- package/geometry/operators/gx/operatorMinimumBoundingCircle.js +1 -1
- package/geometry/operators/gx/operatorOffset.js +1 -1
- package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
- package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
- package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
- package/geometry/operators/isNearOperator.js +1 -1
- package/geometry/operators/reshapeOperator.js +1 -1
- package/geometry/operators/support/jsonConverter.js +1 -1
- package/geometry/support/curves/ellipticArc7Utils.js +1 -1
- package/geometry/support/ellipseUtils.js +2 -0
- package/interfaces.d.ts +15 -18
- package/kernel.js +1 -1
- package/layers/LinkChartLayer.js +1 -1
- package/layers/ParquetLayer.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/list/LayerItemCollection.d.ts +1 -0
- package/layers/list/types.d.ts +5 -1
- package/layers/orientedImagery/core/coverageUtils.js +1 -1
- package/layers/orientedImagery/queries.js +1 -1
- package/layers/support/TimeSeriesCalculation.d.ts +1 -1
- package/layers/support/TimeSeriesCalculation.js +1 -1
- package/layers/support/dataSeriesUtils.d.ts +10 -0
- package/layers/support/timeSeriesUtils.js +17 -6
- package/libs/lyr3d/Lyr3DModule.js +1 -1
- package/networks/UtilityNetwork.d.ts +15 -0
- package/networks/UtilityNetwork.js +1 -1
- package/package.json +4 -4
- package/popup/FeatureContent.d.ts +14 -1
- package/popup/FeatureContent.js +1 -1
- package/popup/FeatureContentCollection.d.ts +4 -10
- package/popup/FeatureContentCollection.js +1 -1
- package/popup/actions.js +1 -1
- package/popup/support/featureUtils.js +1 -1
- package/renderers/support/RenderingInfo.js +1 -1
- package/renderers/support/renderingInfoUtils.js +1 -1
- package/renderers/visualVariables/SizeVariable.d.ts +16 -20
- package/renderers/visualVariables/support/SizeStop.d.ts +6 -2
- package/rest/networks/support/TraceLocation.js +1 -1
- package/rest/networks/support/TraceResult.d.ts +7 -0
- package/rest/networks/support/TraceResult.js +1 -1
- package/smartMapping/renderers/color.js +1 -1
- package/smartMapping/renderers/opacity.js +1 -1
- package/smartMapping/renderers/size.js +1 -1
- package/smartMapping/renderers/support/timeSeriesUtils.js +1 -1
- package/smartMapping/statistics/histogramForTimeSeries.d.ts +11 -0
- package/smartMapping/statistics/histogramForTimeSeries.js +2 -0
- package/smartMapping/statistics/summaryStatisticsForTimeSeries.d.ts +11 -0
- package/smartMapping/statistics/summaryStatisticsForTimeSeries.js +2 -0
- package/smartMapping/statistics/support/timeSeriesUtils.js +24 -0
- package/smartMapping/statistics/types.d.ts +50 -0
- package/support/tests/serviceMockDependencies.js +1 -1
- package/support/tests/setupServiceMocksMesh.js +1 -1
- package/symbols/cim/CIMPlacements.js +1 -1
- package/symbols/cim/callouts/calloutAnalysisUtils.js +1 -1
- package/symbols/cim/callouts/effects/BackgroundCallout.js +1 -1
- package/symbols/cim/callouts/effects/BalloonCallout.js +1 -1
- package/symbols/cim/callouts/effects/PointSymbolCallout.js +1 -1
- package/symbols/cim/callouts/effects/calloutUtils.js +1 -1
- package/symbols/cim/cimAnalyzer.js +1 -1
- package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
- package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
- package/views/2d/engine/vectorTiles/decluttering/CollisionJob.js +1 -1
- package/views/2d/engine/vectorTiles/decluttering/SymbolFader.js +1 -1
- package/views/2d/engine/vectorTiles/decluttering/jobsUtil.js +1 -1
- package/views/2d/engine/webgl/collisions/LabelMetric.js +1 -1
- package/views/2d/engine/webgl/definitions.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedPolyMeshWriters.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/animated/ComputedAnimatedParams.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/markers/ComputedMarkerParams.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/mesh/CalloutMeshWriterPolicy.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/AFeatureShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextParams.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
- package/views/2d/layers/SketchLayerView2D.js +1 -1
- package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/labelingUtils.js +1 -1
- package/views/2d/layers/features/schema/ExceedsLimitCache.js +1 -1
- package/views/2d/layers/features/schema/TimeSchema.js +2 -0
- package/views/2d/layers/features/schema/processor/LabelMatcherSchema.js +1 -1
- package/views/2d/layers/features/schema/processor/MatcherSchema.js +1 -1
- package/views/2d/layers/features/schema/processor/symbols/SymbolSchema.js +1 -1
- package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
- package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
- package/views/2d/layers/support/annodime/cimAnnotations.js +1 -1
- package/views/2d/layers/support/vectorTileDebugUtils.js +1 -1
- package/views/2d/layers/support/visualVariableSimpleUtils.js +1 -1
- package/views/2d/types.d.ts +2 -1
- package/views/3d/analysis/LineOfSight/LineOfSightEditTool.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightItemManipulatedObject3D.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightItemTool.js +1 -1
- package/views/3d/analysis/LineOfSightAnalysisView3D.d.ts +24 -0
- package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedObserverManipulatedObject3D.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
- package/views/3d/camera/constraintUtils.js +1 -1
- package/views/3d/input/handlers/ground/GroundDoubleClickMove.js +1 -1
- package/views/3d/input/handlers/ground/GroundNavigation.js +1 -1
- package/views/3d/interactive/editingTools/tooltipUtils3D.js +1 -1
- package/views/3d/interactive/placementTools/GroundNavigationPlacementTool3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
- package/views/3d/layers/i3s/I3SOverrides.js +1 -1
- package/views/3d/layers/support/FastSymbolUpdates.js +1 -1
- package/views/3d/state/controllers/GroundNavigationController.js +1 -1
- package/views/3d/state/controllers/momentum/GroundNavigationMomentumController.js +1 -1
- package/views/3d/state/utils/OffsetCorrectionController.js +1 -1
- package/views/3d/state/utils/groundNavigationUtils.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +16 -8
- package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +5 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/evaluateSceneLightingFragment.glsl.js +12 -0
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +2 -2
- package/views/3d/webgl-engine/effects/focusArea/FocusArea.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
- package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/SelectionManager.d.ts +3 -3
- package/views/draw/support/Reshape.js +1 -1
- package/views/interactive/options/bindViewToolOptions.js +1 -1
- package/views/interactive/sketch/SketchLabelOptions.d.ts +3 -0
- package/views/interactive/sketch/SketchLabelOptions.js +1 -1
- package/views/interactive/sketch/SketchTooltipOptions.d.ts +3 -0
- package/views/interactive/sketch/SketchTooltipOptions.js +1 -1
- package/views/interactive/sketch/SketchValueOptions.d.ts +3 -0
- package/views/interactive/sketch/SketchValueOptions.js +1 -1
- package/views/interactive/snapping/SnappingOptions.d.ts +3 -0
- package/views/interactive/snapping/SnappingOptions.js +1 -1
- package/views/interactive/snapping/snappingUtils.js +1 -1
- package/views/interactive/tooltip/fields/parsingAndFormattingUtils.js +1 -1
- package/views/layers/SketchLayerView.d.ts +34 -0
- package/views/layers/SketchLayerView.js +2 -0
- package/views/layers/types.d.ts +3 -2
- package/views/selection/types.d.ts +15 -4
- package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.d.ts +4 -0
- package/widgets/Bookmarks/BookmarksVisibleElements.d.ts +5 -1
- package/widgets/Bookmarks/types.d.ts +2 -0
- package/widgets/Editor/EditorViewModel.d.ts +31 -30
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/components/Settings.js +1 -1
- package/widgets/Editor/types.d.ts +44 -0
- package/widgets/Editor.d.ts +30 -27
- package/widgets/Editor.js +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.d.ts +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.d.ts +1 -1
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/FeatureTable.d.ts +6 -0
- package/widgets/FeatureTable.js +1 -1
- package/widgets/Histogram/types.d.ts +10 -2
- package/widgets/HistogramRangeSlider/types.d.ts +4 -1
- package/widgets/LayerList/LayerListViewModel.d.ts +2 -1
- package/widgets/Legend/LegendViewModel.d.ts +2 -0
- package/widgets/Legend/styles/card/CardView.d.ts +2 -0
- package/widgets/Legend/styles/classic/ClassicView.d.ts +4 -1
- package/widgets/Legend.d.ts +3 -0
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.d.ts +7 -0
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/support/VideoFeatureCache.js +2 -0
- package/widgets/OrientedImageryViewer/types.d.ts +9 -0
- package/widgets/OrientedImageryViewer.d.ts +7 -0
- package/widgets/OrientedImageryViewer.js +2 -2
- package/widgets/PanoramicVideoViewer.js +1 -1
- package/widgets/PanoramicViewer/PanoramicVideoViewerViewModel.js +1 -1
- package/widgets/ScaleRangeSlider/types.d.ts +9 -2
- package/widgets/Sketch/SketchViewModel.d.ts +32 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Sketch.d.ts +27 -1
- package/widgets/Sketch.js +1 -1
- package/widgets/Slider/types.d.ts +58 -13
- package/widgets/Slider.d.ts +6 -0
- package/widgets/smartMapping/BinaryColorSizeSlider/BinaryColorSizeSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/ClassedColorSlider/ClassedColorSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/ClassedSizeSlider/ClassedSizeSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/ColorSizeSlider/ColorSizeSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/ColorSlider/ColorSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/HeatmapSlider/HeatmapSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/OpacitySlider/OpacitySliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/SizeSlider/SizeSliderViewModel.d.ts +3 -0
- package/widgets/smartMapping/SmartMappingPrimaryHandleSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/SmartMappingSliderViewModel.d.ts +2 -0
- package/widgets/smartMapping/types.d.ts +30 -7
- package/widgets/support/FilterBuilder/FilterBuilderViewModel.d.ts +21 -11
- package/widgets/support/FilterBuilder/FilterBuilderViewModel.js +1 -1
- package/widgets/support/FilterBuilder/types.d.ts +28 -0
- package/widgets/support/FilterBuilder.js +1 -1
- package/widgets/support/FilterCondition/FilterConditionViewModel.d.ts +24 -0
- package/widgets/support/FilterCondition/FilterConditionViewModel.js +1 -1
- package/widgets/support/FilterCondition/types.d.ts +16 -1
- package/widgets/support/FilterCondition.js +1 -1
- package/widgets/support/SnappingControls/snappingLayerListUtils.js +1 -1
- package/widgets/support/iconUtils.js +1 -1
- package/assets/esri/core/workers/chunks/0606ab6fdfc1dfea3856.js +0 -1
- package/assets/esri/core/workers/chunks/078dcd17f46403d44b24.js +0 -1
- package/assets/esri/core/workers/chunks/1289204f8ca96032c17a.js +0 -1
- package/assets/esri/core/workers/chunks/12b5a645c0987a0efe54.js +0 -2
- package/assets/esri/core/workers/chunks/152fe3d6ad7aebbd23d1.js +0 -1
- package/assets/esri/core/workers/chunks/17b938ba49fb1e7ab8c4.js +0 -1
- package/assets/esri/core/workers/chunks/1dbb3e25e005a8220779.js +0 -2
- package/assets/esri/core/workers/chunks/3d6fef25af7e1a51e1bd.js +0 -1
- package/assets/esri/core/workers/chunks/3ef367c9b7bf1588307d.js +0 -1
- package/assets/esri/core/workers/chunks/5f4feca26102088ea565.js +0 -1
- package/assets/esri/core/workers/chunks/74211d096cc3296e0968.js +0 -1
- package/assets/esri/core/workers/chunks/7926faab76a721a2e1c4.js +0 -1
- package/assets/esri/core/workers/chunks/ad28486bc6afaa346de5.js +0 -1
- package/assets/esri/core/workers/chunks/ad29c729e90b5866713c.js +0 -1
- package/assets/esri/core/workers/chunks/b72a2514aa4cc4ae7d1b.js +0 -1
- package/assets/esri/core/workers/chunks/bb51cf52b8ea8283f4f8.js +0 -1
- package/assets/esri/core/workers/chunks/be761749f8d77fbd9df5.js +0 -1
- package/assets/esri/core/workers/chunks/dbfd25aa0d19aed5890c.js +0 -1
- package/assets/esri/core/workers/chunks/de28a86775235bd5d3c4.js +0 -2
- package/assets/esri/core/workers/chunks/f6cfc901267a229de7a1.js +0 -2
- package/assets/esri/core/workers/chunks/fb147097149a89e671ff.js +0 -1
- package/support/revision.js +0 -2
- /package/assets/esri/core/workers/chunks/{1dbb3e25e005a8220779.js.LICENSE.txt → 1b946714ca4a1a7359d4.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{f6cfc901267a229de7a1.js.LICENSE.txt → 2a1ec30f9ad305763f81.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{c3b96d1d43afccd23e45.js.LICENSE.txt → 590e6c70206122e4cc3c.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{cfaba0470619786e1ef8.js.LICENSE.txt → 68d8ae42ab71d01a70a5.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{de28a86775235bd5d3c4.js.LICENSE.txt → 8dc1c3042267618fd710.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{12b5a645c0987a0efe54.js.LICENSE.txt → 96c50a0dda0f1503ef92.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{G as e}from"../../../chunks/GeometryCursor.js";import{a as t,g as n}from"../../../chunks/Geometry.js";import{S as r}from"../../../chunks/SimpleGeometryCursor.js";import{Envelope2D as i}from"../../../chunks/Envelope2D.js";import{T as a}from"../../../chunks/Transformation2D.js";import{p as o,q as s,t as c,u as l,a as u,v as d,E as f,n as p,P as m,w as h}from"../../../chunks/MultiPathImpl.js";import{K as g,o as _,E as v,m as y,P as b,c as x,r as S}from"../../../chunks/Point2D.js";import{P as C,e as w}from"../../../chunks/Envelope.js";import{O as T}from"../../../chunks/OperatorClip.js";import{O as E}from"../../../chunks/OperatorMultiPartToSinglePart.js";import{O as D}from"../../../chunks/OperatorCut.js";function O(e,t,n,r,i){return new U(i).findSlicesByArea(e,t,n,r)}function k(e,t,n,r,i){return new U(i).sliceIntoStrips(e,t,n,r)}function A(e,t,n,r){return new U(r).recursiveSliceEqualArea(e,t,n)}function j(e){this.currentX=this.calcX(e)}function M(e){if(this.curve===null){let t=(e-this.y0)/(this.y1-this.y0);return S(this.x0,this.x1,t)}return this.curve.intersectionOfYMonotonicWithAxisX(e,this.x0)}function N(){return{x0:NaN,y0:NaN,x1:NaN,y1:NaN,currentX:NaN,nextAET:null,prevAET:null,startNodeNext:null,nextInChain:null,curve:null,advance:j,calcX:M}}function P(e,t){let n=N();return n.x0=e.getStartX(),n.y0=e.getStartY(),n.x1=e.getEndX(),n.y1=e.getEndY(),t&&(n.y0=x(n.x0,n.x0=n.y0),n.y1=x(n.x1,n.x1=n.y1)),n.y1<n.y0&&(n.y1=x(n.y0,n.y0=n.y1),n.x1=x(n.x0,n.x0=n.x1)),n.currentX=NaN,n.nextAET=null,n.prevAET=null,n.startNodeNext=null,n.nextInChain=null,n.curve=null,n}function F(e){let t=N();return t.x0=e.getStartX(),t.y0=e.getStartY(),t.x1=e.getEndX(),t.y1=e.getEndY(),t.curve=e,t.y1<t.y0&&(t.y1=x(t.y0,t.y0=t.y1),t.x1=x(t.x0,t.x0=t.x1)),t.currentX=NaN,t.nextAET=null,t.prevAET=null,t.startNodeNext=null,t.nextInChain=null,t}function I(e){if(this.x===e.x&&this.y===e.y){let t=this.endEdge!==null,n=e.startEdge!==null;return t&&n?-1:1}return this.y===e.y?this.x-e.x:this.y-e.y}function L(){return{x:NaN,y:NaN,startEdge:null,endEdge:null,compare:I}}function R(e,t){return{y:e,startingEdges:t}}class z{m_parent;m_y0;m_y1;m_t0;m_area;constructor(e,t,n,r,i,a){this.m_parent=e,this.m_y0=t,this.m_y1=n,this.m_t0=r,this.m_area=a}getMaxDerivative(){return 1}getValue(e,t){return e===1?0:this.getArea(t)-this.m_area}getError(e){return n(0),0}getArea(e){let t=.5*(this.m_parent.m_sumBase-this.m_parent.m_sumA),n=this.m_y1-this.m_y0,r=(this.m_parent.m_sumBase-t*(e+this.m_t0))*n*(e-this.m_t0),i=!1;for(let t=this.m_parent.m_AETHead;t!==null;t=t.nextAET)if(i=!i,i&&(t.curve!==null||t.nextAET.curve!==null)){let i=this.m_y0+n*this.m_t0,a=this.m_y0+n*e;t.curve&&(r+=V(t.curve,this.m_y0+n*this.m_t0,this.m_y0+n*e)),t.nextAET.curve&&(r-=V(t.nextAET.curve,this.m_y0+n*this.m_t0,this.m_y0+n*e));let o=a-i,s=t.nextAET.calcX(i)-t.calcX(i),c=t.nextAET.calcX(a)-t.calcX(a);r+=o*(s+c)*.5}return r}}function B(e,t,n){return{polygon:e,from:t,to:n}}function V(e,t,r){let i=[0,0],a=e.intersectionWithAxis2D(!0,t,null,i);n(a===1);let o=i[0],s=e.intersectionWithAxis2D(!0,r,null,i);n(s===1);let c=i[0],l=y(b,4);h(e,l,!0);let u=l[3],d=l[2],f=l[1],p=e.getCoordX(o)-e.getStartX(),m=e.getCoordY(o)-e.getStartY(),g=e=>{let t=e*e;return t*e*(10*(d.x*f.y-d.y*f.x)-15*e*(u.y*f.x-u.x*f.y)+6*t*(d.y*u.x-u.y*d.x))/60},_=e=>(-e*(f.y+e*(d.y+u.y*e))*p+e*(f.x+e*(d.x+u.x*e))*m)/2;return g(c)-g(o)-(_(c)-_(o))}class H extends e{m_geoms=[];m_index=-1;m_id=-1;constructor(e){super(),this.m_geoms=e}tock(){return!0}getRank(){return 1}next(){return this.m_index++,this.m_index>=this.m_geoms.length?null:(this.m_id=this.m_geoms[this.m_index].second,this.m_geoms[this.m_index].first)}getGeometryID(){return this.m_id}}class U{m_progressTracker;m_edges=[];m_curves=[];m_sortedNodes=[];m_sortHelper=[];m_cuts=[];m_cutAreas=[];m_totalAreaOfTraps=new g(0);m_areaTracking=0;m_splitArea=0;m_sumBase=0;m_sumA=0;m_numberOfCuts=0;m_currentScan=0;m_progressCounter=0;m_AETHead=null;m_bHorizontalSweep=!1;m_bPolygonHasCurves=!1;constructor(e){this.m_progressTracker=e}findSlicesByArea(e,n,r,i){i<0&&t(`remainingArea`);let a=e,s=null;a.hasNonLinearSegments()&&(this.m_bPolygonHasCurves=!0,s=o(e,1e-16,!0),W(s),a=s);let c=Math.abs(a.calculateArea2D());return c===0||r===0||i>=c||r===1&&i===0?[]:(this.m_splitArea=(c-i)/r,this.m_numberOfCuts=r-1,i>0&&this.m_numberOfCuts++,this.m_edges.length=0,this.m_sortedNodes.length=0,this.m_cuts.length=0,this.m_areaTracking=0,this.m_totalAreaOfTraps.reset(),this.m_curves.length=0,this.buildEdges(a),this.buildScanNodes(),this.trapezoidation(),this.m_cuts)}sliceIntoStrips(e,t,n,a){if(a===0)return new r([e]);let o=new i;e.queryLooseEnvelope(o);let s=o.width()+o.height();return new H(this.splitPolygon(e,t,o.xmin-s-1+1,o.xmax+s+1,n,a))}recursiveSliceEqualArea(e,t,o){if(o<=1||e.isEmpty())return new r([e]);{let r=[],s=[];s.push(_(e.clone(),o));let c=0,l=0;for(;s.length>0;){n(l++<2*o);let e=s.at(-1);if(s.pop(),e.second===1){r.push(_(e.first,c++));continue}let u=new i;e.first.queryEnvelope(u);let d=u.width()+u.height(),f=new a;f.setIdentity(),u.width()>u.height()&&(f.setRotateCcw90(),e.first.applyTransformation(f),f.transformEnvInPlace(u));let p=e.first.calculateArea2D(),m=p/e.second,h=p-Math.trunc(e.second/2)*m,g=new U(this.m_progressTracker).findSlicesByArea(e.first,t,1,h),v=new U(this.m_progressTracker).splitPolygon(e.first,t,u.xmin-d-1+1,u.xmax+d+1,g,1),y=v.length;if(n(y>0&&y<=2),!f.isIdentity()){let e=new a;e.setRotateCw90(),v[0].first.applyTransformation(e),y===2&&v[1].first.applyTransformation(e)}y===2?(s.push(_(v[1].first,e.second-Math.trunc(e.second/2))),s.push(_(v[0].first,Math.trunc(e.second/2)))):s.push(_(v[0].first,e.second))}return new H(r)}}recursiveSliceEqualAreaImpl(e,t,r,i){return n(0),{}}processTraps(e,t,n){n?this.processTrapsCurves(e,t):this.processTrapsLinear(e,t)}processTrapsLinear(e,t){let n=0,r=1,i=.5*(this.m_sumBase-this.m_sumA),a=t-e,o=(this.m_sumBase-i*(r+n))*a*(r-n);if(o+this.m_areaTracking<this.m_splitArea){this.m_totalAreaOfTraps.pe(o),this.m_areaTracking+=o;return}let c=new g(o),l=new v(0,1),u=!1;for(;n<1;){let t=this.m_splitArea-this.m_areaTracking,d=[NaN,NaN];if(s(-i*a,this.m_sumBase*a,(i*n-this.m_sumBase)*a*n-t,l,!1,d)>0){u=!0,r=d[0],this.m_areaTracking=0,n=r,c.me(t);let i=r*a+e;if(this.m_cuts.push(i),this.m_cutAreas.push(this.m_totalAreaOfTraps.getResult()+o-c.getResult()),this.m_cuts.length===this.m_numberOfCuts){this.m_totalAreaOfTraps.pe(o-c.getResult());return}}else{u?this.m_areaTracking=c.getResult():this.m_areaTracking+=o;break}}this.m_totalAreaOfTraps.pe(o)}processTrapsCurves(e,t){let n=0,r=1,i=new z(this,e,t,0,1,0).getArea(1);if(i+this.m_areaTracking<this.m_splitArea){this.m_totalAreaOfTraps.pe(i),this.m_areaTracking+=i;return}let a=t-e,o=new g(i),s=!1;for(;n<1;){let l=this.m_splitArea-this.m_areaTracking,u=new z(this,e,t,n,1,l),d=[0],f=new v(n,1);if(c(u,f,1,d)>0){s=!0,r=d[0],this.m_areaTracking=0,n=r,o.me(l);let t=r*a+e;if(this.m_cuts.push(t),this.m_cutAreas.push(this.m_totalAreaOfTraps.getResult()+i-o.getResult()),this.m_cuts.length===this.m_numberOfCuts){this.m_totalAreaOfTraps.pe(i-o.getResult());return}}else{s?this.m_areaTracking=o.getResult():this.m_areaTracking+=i;break}}this.m_totalAreaOfTraps.pe(i)}advanceAET(){let e=this.m_sortedNodes[this.m_currentScan-1].y,t=this.m_sortedNodes[this.m_currentScan],n=!1,r=!1,i=new g(0);for(let e=this.m_AETHead;e!==null;e=e.nextAET){let a=e.prevAET;n=!n,e.nextAET!==null&&n&&(!this.m_bPolygonHasCurves||!e.curve&&!e.nextAET.curve)&&i.pe(e.nextAET.currentX-e.currentX),e.advance(t.y),a!==null&&e.currentX<a.currentX&&(r=!0)}this.m_sumBase=i.getResult(),r&&this.sortAET();let a=new g(0);n=!1;let o=!1;for(let e=this.m_AETHead;e!==null;e=e.nextAET){o||=e.curve!==null;let t=e.prevAET;n=!n,t!==null&&(n||(!this.m_bPolygonHasCurves||!e.curve&&!e.prevAET.curve)&&a.pe(e.currentX-e.prevAET.currentX))}this.m_sumA=a.getResult(),this.processTraps(e,t.y,o);for(let e=this.m_AETHead;e!=null;){let n=e.prevAET,r=e.nextAET;if(t.y===e.y1){if(e.prevAET=null,e.nextAET=null,e.nextInChain!==null){let t=e.currentX;e=e.nextInChain,e.currentX=t,e.prevAET=n,n?n.nextAET=e:this.m_AETHead=e,e.nextAET=r,r&&(r.prevAET=e)}else n?n.nextAET=r:this.m_AETHead=r,r&&(r.prevAET=n)}e=r}}mergeNewEdgesToAET(){for(let e=this.m_sortedNodes[this.m_currentScan].startingEdges;e!==null;e=e.startNodeNext)Number.isNaN(e.currentX)&&(this.m_sortHelper.push(e),e.currentX=e.x0);if(!this.m_sortHelper.length)return;this.sortHelper();let e=this.m_AETHead,t=0,n=e;for(;e!==null&&t<this.m_sortHelper.length;)e.currentX>this.m_sortHelper[t].currentX?(this.m_sortHelper[t].prevAET=e.prevAET,e.prevAET?e.prevAET.nextAET=this.m_sortHelper[t]:this.m_AETHead=this.m_sortHelper[t],this.m_sortHelper[t].nextAET=e,e.prevAET=this.m_sortHelper[t],t++):(n=e,e=e.nextAET);for(;t<this.m_sortHelper.length;)this.m_sortHelper[t].prevAET=n,n===null?this.m_AETHead=this.m_sortHelper[t]:n.nextAET=this.m_sortHelper[t],this.m_sortHelper[t].nextAET=null,n=this.m_sortHelper[t],t++;this.m_sortHelper.length=0}sortAET(){for(let e=this.m_AETHead;e!==null;e=e.nextAET)this.m_sortHelper.push(e);this.sortHelper(),this.m_AETHead=null;let e=null;for(let t of this.m_sortHelper)t.prevAET=e,e?e.nextAET=t:this.m_AETHead=t,t.nextAET=null,e=t;this.m_sortHelper.length=0}sortHelper(){this.m_sortHelper.sort((e,t)=>e.currentX-t.currentX)}trapezoidation(){for(this.m_currentScan=0,this.mergeNewEdgesToAET(),this.m_currentScan++;this.m_currentScan<this.m_sortedNodes.length&&(this.progress(),this.advanceAET(),this.m_cuts.length!==this.m_numberOfCuts);)this.mergeNewEdgesToAET(),this.m_currentScan++}buildEdges(e){let t=e.querySegmentIterator();for(t.stripAttributes();t.nextPath();)for(;t.hasNextSegment();){let e=t.nextSegment();if(e.isCurve()){let t=e;if(l(t),this.m_bHorizontalSweep){let e=y(b,4);t.queryControlPoints(e);for(let t of e)t.y=x(t.x,t.x=t.y);t.constructPoints(e)}let n=t.getStartY(),r=t.getEndY();if(r===n)continue;r<n&&t.reverse(),this.m_curves.push(t.clone()),this.m_edges.push(F(this.m_curves.at(-1)))}else{let t=this.m_bHorizontalSweep?e.getStartX():e.getStartY();if((this.m_bHorizontalSweep?e.getEndX():e.getEndY())===t)continue;this.m_edges.push(P(e,this.m_bHorizontalSweep))}}this.m_edges.sort((e,t)=>e.y0===t.y0?e.x0-t.x0:e.y0-t.y0)}buildScanNodes(){let e=[];for(let t of this.m_edges){let n=L();n.x=t.x0,n.y=t.y0,n.startEdge=t,n.endEdge=null,e.push(n);let r=L();r.x=t.x1,r.y=t.y1,r.startEdge=null,r.endEdge=t,e.push(r)}e.sort((e,t)=>e.compare(t));let t=0,n=e[t].y;this.m_sortedNodes.push(R(n,e[t].startEdge));let r=t;for(t++;t!==e.length;++t){e[t].y!==n&&(this.m_sortedNodes.push(R(e[t].y,null)),n=e[t].y);let i=e[t].startEdge;if(i){let e=this.m_sortedNodes.at(-1);i.startNodeNext=e.startingEdges,e.startingEdges=i}if(e[r].x!==e[t].x||e[r].y!==e[t].y){if(t-r===2){let t=r;t++,e[r].endEdge!==null&&e[t].startEdge!==null&&(e[r].endEdge.nextInChain=e[t].startEdge)}r=t}}}progress(){}splitPolygonLinear(e,t,a,o,s,c){let l=[];l.push([e,0,c]);let d=[],f=new u;for(f.startPathCoords(a,0),f.lineToCoords(o,0);l.length>0;){let u=l.at(-1);l.pop();let p=u[0],m=u[1],h=u[2],g=new E().executeMany(new r([p]),t,this.m_progressTracker);for(let r=g.next();r!==null;r=g.next()){let u=r,p=new i;u.queryLooseEnvelope(p);let g=m,v=h;for(let e=m,t=h-1;e<h;++e,--t)p.ymin>=s[e]&&(g=e+1),p.ymax<=s[t]&&(v=t);if(g===h){d.push(_(r,h-1));continue}if(v===m){d.push(_(r,m-1));continue}if(g===v){d.push(_(r,g-1));continue}if(this.isYMonotone(u))this.splitYMonotone(d,u,t,s,g,v);else{let r=Math.trunc((g+v)/2);f.setXYCoords(0,a,s[r]),f.setXYCoords(1,o,s[r]);let m=new D().execute(!1,u,f,null,this.m_progressTracker),h=m.next(),y=m.next(),b=m.next();if(h!==null){if(h.isEmpty()||(r===v-1?(d.push(_(h,r)),n(G(d.at(-1).first,t,e,d.at(-1).second,s,c))):l.push([h,r+1,v])),y.isEmpty()||(r===g?(d.push(_(y,r-1)),n(G(d.at(-1).first,t,e,d.at(-1).second,s,c))):l.push([y,g,r])),b!==null&&!b.isEmpty()){let e=new i;b.queryLooseEnvelope(e),e.ymin>=s[r]?l.push([b,r+1,v]):e.ymax<=s[r]?l.push([b,g,r]):l.push([b,g,v])}}else r+1===v?(s[r]-p.ymin<p.ymax-s[r]?d.push(_(u,r)):d.push(_(u,r+1)),n(G(d.at(-1).first,t,e,d.at(-1).second,s,c))):l.push([u,r+1,v])}}}return d}splitPolygon(e,t,n,r,a,o){let s=new i;e.queryLooseEnvelope(s),s.inflateCoords(0,Math.max(s.width(),s.height()));let c=[],l=[];for(l.push(B(e,0,o));l.length;){let o={...l.at(-1)};if(l.pop(),o.polygon.hasNonLinearSegments()){let e=Math.trunc((o.to+o.from)/2),u=a[e],d=new i(n,s.ymin,r,u),f=new T().execute(o.polygon,d,t,this.m_progressTracker);f.isEmpty()||(e-o.from===0?c.push(_(f,e-1)):l.push(B(f,o.from,e)));let p=new i(n,u,r,s.ymax),m=new T().execute(o.polygon,p,t,this.m_progressTracker);m.isEmpty()||(o.to-e===1?c.push(_(m,e)):l.push(B(m,e+1,o.to)))}else{let i=this.splitPolygonLinear(e,t,n,r,a.slice(o.from),o.to-o.from);c.push(...i)}}c.sort((e,t)=>e.second-t.second);let u=[];return d(c,(e,t)=>e.second===t.second,(e,t)=>{let n=new m;for(let r=e;r!==t;++r)n.add(c[r].first,!1);u.push(_(n,c[e].second))}),u}isYMonotone(e){if(e.getPathCount()!==1)return!1;let t=e.getXY(0),n=0,r=0,i=new b;for(let a=1,o=e.getPointCount();a<=o;a++){e.queryXY(a===o?0:a,i);let s=i.y>t.y?1:i.y<t.y?-1:0;if(t.setCoordsPoint2D(i),n!==s&&s!==0){if(n!==0&&(r++,r>2))return!1;n=s}}return!0}splitYMonotone(e,t,r,i,a,o){let s=new f;s.addGeometry(t);let c=s.getFirstPath(s.getFirstGeometry()),l=s.getFirstVertex(c),u=new b,d=new b,m=l,h=l;{let e=s.getXY(l);u.setCoordsPoint2D(e),d.setCoordsPoint2D(e)}let g=s.getNextVertex(l),v=new b;for(let e=0,t=s.getPathSize(c);e<t;e++,g=s.getNextVertex(g))s.queryXY(g,v),v.compare(u)<0?(m=g,u.setCoordsPoint2D(v)):v.compare(d)>0&&(h=g,d.setCoordsPoint2D(v));let y=m,x=m,S=y,C=x,w=!1,T=!1,E=a,D=u.y,O=u.y,k=!1;for(;E<o;){if(i[E]<=u.y){E++;continue}if(i[E]>=d.y)break;if(!w){let e=s.getNextVertex(y),t=s.getY(e);if(t<D)break;let n=i[E];D<=n&&t>=n?w=!0:(D=t,y=e)}if(!T){let e=s.getPrevVertex(x),t=s.getY(e);if(t<O)break;let n=i[E];O<=n&&t>=n?T=!0:(O=t,x=e)}if(w&&T){k=!0;let t=s.getXY(y),r=s.getNextVertex(y),a=s.getXY(r),o=p;if(a.y===t.y)o=a.x<t.x?y:r;else{let e=(i[E]-t.y)/(a.y-t.y);if(e===0)o=y;else if(e===1)o=r;else{let t=s.splitSegmentAxisAware(y,[e],1,null,-1);n(t===1),o=s.getNextVertex(y),s.getY(o)!==i[E]&&s.setXYCoords(o,s.getX(o),i[E])}}let c=s.getPrevVertex(x);t=s.getXY(c),a=s.getXY(x);let l=p;if(a.y===t.y)l=a.x<t.x?x:c;else{let e=(i[E]-t.y)/(a.y-t.y);if(e===0)l=c;else if(e===1)l=x;else{let t=s.splitSegmentAxisAware(c,[e],1,null,-1);n(t===1),l=s.getNextVertex(c),s.getY(l)!==i[E]&&s.setXYCoords(l,s.getX(l),i[E])}}e.push(_(this.extractTrapezoid(s,S,o,C,l),E-1)),S=o,C=l,y=o,x=l,D=O=i[E],w=!1,T=!1,E++}}k?e.push(_(this.extractTrapezoid(s,S,h,C,h),E-1)):e.push(_(t,E))}extractTrapezoid(e,t,n,r,i){let a=new m({vd:e.getVertexDescription()}),o=new C,s=!0;for(let r=t;;r=e.getNextVertex(r)){let t=e.getSegment(r);if(t?a.addSegment(t,s):(e.queryPoint(r,o),s?a.startPathPoint(o):a.lineToPoint(o)),s=!1,r===n)break}n!==i&&(e.queryPoint(i,o),a.lineToPoint(o)),s=!0;for(let n=i;;n=e.getNextVertex(n)){let i=e.getSegment(n);if(i?a.addSegment(i,s):!s&&n!==t&&(e.queryPoint(n,o),a.lineToPoint(o)),s=!1,n===r)break}return a}}function W(e){return e.getImpl().ensureXYMonotoneSegments()}function G(e,t,n,r,a,o){let s=new i;e.queryEnvelope(s);let c=w(t,n,!0).total()*4;return!(r>=0&&!(s.ymin+c>=a[r])||r+1<o&&s.ymax>a[r+1]+c)}class K{getOperatorType(){return 10011}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}sliceIntoStrips(e,t,n,r,i,a){return new q(0,e,t,n,i,0,a)}findSlicesByArea(e,t,n,r,i,a){if(!i||i.isIdentity())return O(e,t,n,r,a);{let o=e.clone();return o.applyTransformation(i),O(o,t,n,r,a)}}recursiveSliceEqualArea(e,t,n,r,i){return new q(1,e,t,null,r,n,i)}}class q extends e{m_ySplits;m_polygon;m_sr;m_transform;m_inverseTransform;m_tracker;m_partCount;m_method;m_bReversePaths;m_resultCursor=null;constructor(e,t,n,r,i,a,o){super(),this.m_method=e,this.m_polygon=t,this.m_sr=n,this.m_ySplits=r?.slice()??null,this.m_transform=i,this.m_bReversePaths=i?.isReflective()??!1,this.m_inverseTransform=i?i.clone().invertThis():null,this.m_partCount=a,this.m_tracker=o}tock(){return!0}getRank(){return 1}next(){this.m_resultCursor||(this.m_method?this.recursiveSliceEqualArea():this.sliceIntoStrips());let e=this.m_resultCursor.next();return e&&(this.m_inverseTransform&&!this.m_inverseTransform.isIdentity()&&(e.applyTransformation(this.m_inverseTransform),this.m_bReversePaths&&e.reverseAllPaths()),e)}getGeometryID(){return this.m_resultCursor?this.m_resultCursor.getGeometryID():-1}sliceIntoStrips(){if(!this.m_transform||this.m_transform.isIdentity())this.m_resultCursor=k(this.m_polygon,this.m_sr,this.m_ySplits,this.m_ySplits.length,this.m_tracker);else{let e=this.m_polygon.clone();e.applyTransformation(this.m_transform),this.m_bReversePaths&&e.reverseAllPaths(),this.m_resultCursor=k(e,this.m_sr,this.m_ySplits,this.m_ySplits.length,this.m_tracker)}}recursiveSliceEqualArea(){if(!this.m_transform||this.m_transform.isIdentity())this.m_resultCursor=A(this.m_polygon,this.m_sr,this.m_partCount,this.m_tracker);else{let e=this.m_polygon.clone();e.applyTransformation(this.m_transform),this.m_bReversePaths&&e.reverseAllPaths(),this.m_resultCursor=A(e,this.m_sr,this.m_partCount,this.m_tracker)}}}const J=new K;function Y(e,t,n,r,i){return J.findSlicesByArea(e,t,n,r,i,null)}function X(e,t,n,r){let i=J.recursiveSliceEqualArea(e,t,n,r,null);return Array.from(i)}function Z(e,t,n,r){let i=J.sliceIntoStrips(e,t,n,0,r,null);return Array.from(i)}function Q(){return J.supportsCurves()}export{Y as findSlicesByArea,X as recursiveSliceEqualArea,Z as sliceIntoStrips,Q as supportsCurves};
|
|
2
|
+
import{G as e}from"../../../chunks/GeometryCursor.js";import{b as t,g as n}from"../../../chunks/Geometry.js";import{S as r}from"../../../chunks/SimpleGeometryCursor.js";import{Envelope2D as i}from"../../../chunks/Envelope2D.js";import{T as a}from"../../../chunks/Transformation2D.js";import{p as o,q as s,t as c,u as l,a as u,v as d,E as f,n as p,P as m,w as h}from"../../../chunks/MultiPathImpl.js";import{K as g,o as _,E as v,d as y,P as b,s as x,r as S}from"../../../chunks/Point2D.js";import{P as C,e as w}from"../../../chunks/Envelope.js";import{O as T}from"../../../chunks/OperatorClip.js";import{O as E}from"../../../chunks/OperatorMultiPartToSinglePart.js";import{O as D}from"../../../chunks/OperatorCut.js";function O(e,t,n,r,i){return new U(i).findSlicesByArea(e,t,n,r)}function k(e,t,n,r,i){return new U(i).sliceIntoStrips(e,t,n,r)}function A(e,t,n,r){return new U(r).recursiveSliceEqualArea(e,t,n)}function j(e){this.currentX=this.calcX(e)}function M(e){if(this.curve===null){let t=(e-this.y0)/(this.y1-this.y0);return S(this.x0,this.x1,t)}return this.curve.intersectionOfYMonotonicWithAxisX(e,this.x0)}function N(){return{x0:NaN,y0:NaN,x1:NaN,y1:NaN,currentX:NaN,nextAET:null,prevAET:null,startNodeNext:null,nextInChain:null,curve:null,advance:j,calcX:M}}function P(e,t){let n=N();return n.x0=e.getStartX(),n.y0=e.getStartY(),n.x1=e.getEndX(),n.y1=e.getEndY(),t&&(n.y0=x(n.x0,n.x0=n.y0),n.y1=x(n.x1,n.x1=n.y1)),n.y1<n.y0&&(n.y1=x(n.y0,n.y0=n.y1),n.x1=x(n.x0,n.x0=n.x1)),n.currentX=NaN,n.nextAET=null,n.prevAET=null,n.startNodeNext=null,n.nextInChain=null,n.curve=null,n}function F(e){let t=N();return t.x0=e.getStartX(),t.y0=e.getStartY(),t.x1=e.getEndX(),t.y1=e.getEndY(),t.curve=e,t.y1<t.y0&&(t.y1=x(t.y0,t.y0=t.y1),t.x1=x(t.x0,t.x0=t.x1)),t.currentX=NaN,t.nextAET=null,t.prevAET=null,t.startNodeNext=null,t.nextInChain=null,t}function I(e){if(this.x===e.x&&this.y===e.y){let t=this.endEdge!==null,n=e.startEdge!==null;return t&&n?-1:1}return this.y===e.y?this.x-e.x:this.y-e.y}function L(){return{x:NaN,y:NaN,startEdge:null,endEdge:null,compare:I}}function R(e,t){return{y:e,startingEdges:t}}class z{m_parent;m_y0;m_y1;m_t0;m_area;constructor(e,t,n,r,i,a){this.m_parent=e,this.m_y0=t,this.m_y1=n,this.m_t0=r,this.m_area=a}getMaxDerivative(){return 1}getValue(e,t){return e===1?0:this.getArea(t)-this.m_area}getError(e){return n(0),0}getArea(e){let t=.5*(this.m_parent.m_sumBase-this.m_parent.m_sumA),n=this.m_y1-this.m_y0,r=(this.m_parent.m_sumBase-t*(e+this.m_t0))*n*(e-this.m_t0),i=!1;for(let t=this.m_parent.m_AETHead;t!==null;t=t.nextAET)if(i=!i,i&&(t.curve!==null||t.nextAET.curve!==null)){let i=this.m_y0+n*this.m_t0,a=this.m_y0+n*e;t.curve&&(r+=V(t.curve,this.m_y0+n*this.m_t0,this.m_y0+n*e)),t.nextAET.curve&&(r-=V(t.nextAET.curve,this.m_y0+n*this.m_t0,this.m_y0+n*e));let o=a-i,s=t.nextAET.calcX(i)-t.calcX(i),c=t.nextAET.calcX(a)-t.calcX(a);r+=o*(s+c)*.5}return r}}function B(e,t,n){return{polygon:e,from:t,to:n}}function V(e,t,r){let i=[0,0],a=e.intersectionWithAxis2D(!0,t,null,i);n(a===1);let o=i[0],s=e.intersectionWithAxis2D(!0,r,null,i);n(s===1);let c=i[0],l=y(b,4);h(e,l,!0);let u=l[3],d=l[2],f=l[1],p=e.getCoordX(o)-e.getStartX(),m=e.getCoordY(o)-e.getStartY(),g=e=>{let t=e*e;return t*e*(10*(d.x*f.y-d.y*f.x)-15*e*(u.y*f.x-u.x*f.y)+6*t*(d.y*u.x-u.y*d.x))/60},_=e=>(-e*(f.y+e*(d.y+u.y*e))*p+e*(f.x+e*(d.x+u.x*e))*m)/2;return g(c)-g(o)-(_(c)-_(o))}class H extends e{m_geoms=[];m_index=-1;m_id=-1;constructor(e){super(),this.m_geoms=e}tock(){return!0}getRank(){return 1}next(){return this.m_index++,this.m_index>=this.m_geoms.length?null:(this.m_id=this.m_geoms[this.m_index].second,this.m_geoms[this.m_index].first)}getGeometryID(){return this.m_id}}class U{m_progressTracker;m_edges=[];m_curves=[];m_sortedNodes=[];m_sortHelper=[];m_cuts=[];m_cutAreas=[];m_totalAreaOfTraps=new g(0);m_areaTracking=0;m_splitArea=0;m_sumBase=0;m_sumA=0;m_numberOfCuts=0;m_currentScan=0;m_progressCounter=0;m_AETHead=null;m_bHorizontalSweep=!1;m_bPolygonHasCurves=!1;constructor(e){this.m_progressTracker=e}findSlicesByArea(e,n,r,i){i<0&&t(`remainingArea`);let a=e,s=null;a.hasNonLinearSegments()&&(this.m_bPolygonHasCurves=!0,s=o(e,1e-16,!0),W(s),a=s);let c=Math.abs(a.calculateArea2D());return c===0||r===0||i>=c||r===1&&i===0?[]:(this.m_splitArea=(c-i)/r,this.m_numberOfCuts=r-1,i>0&&this.m_numberOfCuts++,this.m_edges.length=0,this.m_sortedNodes.length=0,this.m_cuts.length=0,this.m_areaTracking=0,this.m_totalAreaOfTraps.reset(),this.m_curves.length=0,this.buildEdges(a),this.buildScanNodes(),this.trapezoidation(),this.m_cuts)}sliceIntoStrips(e,t,n,a){if(a===0)return new r([e]);let o=new i;e.queryLooseEnvelope(o);let s=o.width()+o.height();return new H(this.splitPolygon(e,t,o.xmin-s-1+1,o.xmax+s+1,n,a))}recursiveSliceEqualArea(e,t,o){if(o<=1||e.isEmpty())return new r([e]);{let r=[],s=[];s.push(_(e.clone(),o));let c=0,l=0;for(;s.length>0;){n(l++<2*o);let e=s.at(-1);if(s.pop(),e.second===1){r.push(_(e.first,c++));continue}let u=new i;e.first.queryEnvelope(u);let d=u.width()+u.height(),f=new a;f.setIdentity(),u.width()>u.height()&&(f.setRotateCcw90(),e.first.applyTransformation(f),f.transformEnvInPlace(u));let p=e.first.calculateArea2D(),m=p/e.second,h=p-Math.trunc(e.second/2)*m,g=new U(this.m_progressTracker).findSlicesByArea(e.first,t,1,h),v=new U(this.m_progressTracker).splitPolygon(e.first,t,u.xmin-d-1+1,u.xmax+d+1,g,1),y=v.length;if(n(y>0&&y<=2),!f.isIdentity()){let e=new a;e.setRotateCw90(),v[0].first.applyTransformation(e),y===2&&v[1].first.applyTransformation(e)}y===2?(s.push(_(v[1].first,e.second-Math.trunc(e.second/2))),s.push(_(v[0].first,Math.trunc(e.second/2)))):s.push(_(v[0].first,e.second))}return new H(r)}}recursiveSliceEqualAreaImpl(e,t,r,i){return n(0),{}}processTraps(e,t,n){n?this.processTrapsCurves(e,t):this.processTrapsLinear(e,t)}processTrapsLinear(e,t){let n=0,r=1,i=.5*(this.m_sumBase-this.m_sumA),a=t-e,o=(this.m_sumBase-i*(r+n))*a*(r-n);if(o+this.m_areaTracking<this.m_splitArea){this.m_totalAreaOfTraps.pe(o),this.m_areaTracking+=o;return}let c=new g(o),l=new v(0,1),u=!1;for(;n<1;){let t=this.m_splitArea-this.m_areaTracking,d=[NaN,NaN];if(s(-i*a,this.m_sumBase*a,(i*n-this.m_sumBase)*a*n-t,l,!1,d)>0){u=!0,r=d[0],this.m_areaTracking=0,n=r,c.me(t);let i=r*a+e;if(this.m_cuts.push(i),this.m_cutAreas.push(this.m_totalAreaOfTraps.getResult()+o-c.getResult()),this.m_cuts.length===this.m_numberOfCuts){this.m_totalAreaOfTraps.pe(o-c.getResult());return}}else{u?this.m_areaTracking=c.getResult():this.m_areaTracking+=o;break}}this.m_totalAreaOfTraps.pe(o)}processTrapsCurves(e,t){let n=0,r=1,i=new z(this,e,t,0,1,0).getArea(1);if(i+this.m_areaTracking<this.m_splitArea){this.m_totalAreaOfTraps.pe(i),this.m_areaTracking+=i;return}let a=t-e,o=new g(i),s=!1;for(;n<1;){let l=this.m_splitArea-this.m_areaTracking,u=new z(this,e,t,n,1,l),d=[0],f=new v(n,1);if(c(u,f,1,d)>0){s=!0,r=d[0],this.m_areaTracking=0,n=r,o.me(l);let t=r*a+e;if(this.m_cuts.push(t),this.m_cutAreas.push(this.m_totalAreaOfTraps.getResult()+i-o.getResult()),this.m_cuts.length===this.m_numberOfCuts){this.m_totalAreaOfTraps.pe(i-o.getResult());return}}else{s?this.m_areaTracking=o.getResult():this.m_areaTracking+=i;break}}this.m_totalAreaOfTraps.pe(i)}advanceAET(){let e=this.m_sortedNodes[this.m_currentScan-1].y,t=this.m_sortedNodes[this.m_currentScan],n=!1,r=!1,i=new g(0);for(let e=this.m_AETHead;e!==null;e=e.nextAET){let a=e.prevAET;n=!n,e.nextAET!==null&&n&&(!this.m_bPolygonHasCurves||!e.curve&&!e.nextAET.curve)&&i.pe(e.nextAET.currentX-e.currentX),e.advance(t.y),a!==null&&e.currentX<a.currentX&&(r=!0)}this.m_sumBase=i.getResult(),r&&this.sortAET();let a=new g(0);n=!1;let o=!1;for(let e=this.m_AETHead;e!==null;e=e.nextAET){o||=e.curve!==null;let t=e.prevAET;n=!n,t!==null&&(n||(!this.m_bPolygonHasCurves||!e.curve&&!e.prevAET.curve)&&a.pe(e.currentX-e.prevAET.currentX))}this.m_sumA=a.getResult(),this.processTraps(e,t.y,o);for(let e=this.m_AETHead;e!=null;){let n=e.prevAET,r=e.nextAET;if(t.y===e.y1){if(e.prevAET=null,e.nextAET=null,e.nextInChain!==null){let t=e.currentX;e=e.nextInChain,e.currentX=t,e.prevAET=n,n?n.nextAET=e:this.m_AETHead=e,e.nextAET=r,r&&(r.prevAET=e)}else n?n.nextAET=r:this.m_AETHead=r,r&&(r.prevAET=n)}e=r}}mergeNewEdgesToAET(){for(let e=this.m_sortedNodes[this.m_currentScan].startingEdges;e!==null;e=e.startNodeNext)Number.isNaN(e.currentX)&&(this.m_sortHelper.push(e),e.currentX=e.x0);if(!this.m_sortHelper.length)return;this.sortHelper();let e=this.m_AETHead,t=0,n=e;for(;e!==null&&t<this.m_sortHelper.length;)e.currentX>this.m_sortHelper[t].currentX?(this.m_sortHelper[t].prevAET=e.prevAET,e.prevAET?e.prevAET.nextAET=this.m_sortHelper[t]:this.m_AETHead=this.m_sortHelper[t],this.m_sortHelper[t].nextAET=e,e.prevAET=this.m_sortHelper[t],t++):(n=e,e=e.nextAET);for(;t<this.m_sortHelper.length;)this.m_sortHelper[t].prevAET=n,n===null?this.m_AETHead=this.m_sortHelper[t]:n.nextAET=this.m_sortHelper[t],this.m_sortHelper[t].nextAET=null,n=this.m_sortHelper[t],t++;this.m_sortHelper.length=0}sortAET(){for(let e=this.m_AETHead;e!==null;e=e.nextAET)this.m_sortHelper.push(e);this.sortHelper(),this.m_AETHead=null;let e=null;for(let t of this.m_sortHelper)t.prevAET=e,e?e.nextAET=t:this.m_AETHead=t,t.nextAET=null,e=t;this.m_sortHelper.length=0}sortHelper(){this.m_sortHelper.sort((e,t)=>e.currentX-t.currentX)}trapezoidation(){for(this.m_currentScan=0,this.mergeNewEdgesToAET(),this.m_currentScan++;this.m_currentScan<this.m_sortedNodes.length&&(this.progress(),this.advanceAET(),this.m_cuts.length!==this.m_numberOfCuts);)this.mergeNewEdgesToAET(),this.m_currentScan++}buildEdges(e){let t=e.querySegmentIterator();for(t.stripAttributes();t.nextPath();)for(;t.hasNextSegment();){let e=t.nextSegment();if(e.isCurve()){let t=e;if(l(t),this.m_bHorizontalSweep){let e=y(b,4);t.queryControlPoints(e);for(let t of e)t.y=x(t.x,t.x=t.y);t.constructPoints(e)}let n=t.getStartY(),r=t.getEndY();if(r===n)continue;r<n&&t.reverse(),this.m_curves.push(t.clone()),this.m_edges.push(F(this.m_curves.at(-1)))}else{let t=this.m_bHorizontalSweep?e.getStartX():e.getStartY();if((this.m_bHorizontalSweep?e.getEndX():e.getEndY())===t)continue;this.m_edges.push(P(e,this.m_bHorizontalSweep))}}this.m_edges.sort((e,t)=>e.y0===t.y0?e.x0-t.x0:e.y0-t.y0)}buildScanNodes(){let e=[];for(let t of this.m_edges){let n=L();n.x=t.x0,n.y=t.y0,n.startEdge=t,n.endEdge=null,e.push(n);let r=L();r.x=t.x1,r.y=t.y1,r.startEdge=null,r.endEdge=t,e.push(r)}e.sort((e,t)=>e.compare(t));let t=0,n=e[t].y;this.m_sortedNodes.push(R(n,e[t].startEdge));let r=t;for(t++;t!==e.length;++t){e[t].y!==n&&(this.m_sortedNodes.push(R(e[t].y,null)),n=e[t].y);let i=e[t].startEdge;if(i){let e=this.m_sortedNodes.at(-1);i.startNodeNext=e.startingEdges,e.startingEdges=i}if(e[r].x!==e[t].x||e[r].y!==e[t].y){if(t-r===2){let t=r;t++,e[r].endEdge!==null&&e[t].startEdge!==null&&(e[r].endEdge.nextInChain=e[t].startEdge)}r=t}}}progress(){}splitPolygonLinear(e,t,a,o,s,c){let l=[];l.push([e,0,c]);let d=[],f=new u;for(f.startPathCoords(a,0),f.lineToCoords(o,0);l.length>0;){let u=l.at(-1);l.pop();let p=u[0],m=u[1],h=u[2],g=new E().executeMany(new r([p]),t,this.m_progressTracker);for(let r=g.next();r!==null;r=g.next()){let u=r,p=new i;u.queryLooseEnvelope(p);let g=m,v=h;for(let e=m,t=h-1;e<h;++e,--t)p.ymin>=s[e]&&(g=e+1),p.ymax<=s[t]&&(v=t);if(g===h){d.push(_(r,h-1));continue}if(v===m){d.push(_(r,m-1));continue}if(g===v){d.push(_(r,g-1));continue}if(this.isYMonotone(u))this.splitYMonotone(d,u,t,s,g,v);else{let r=Math.trunc((g+v)/2);f.setXYCoords(0,a,s[r]),f.setXYCoords(1,o,s[r]);let m=new D().execute(!1,u,f,null,this.m_progressTracker),h=m.next(),y=m.next(),b=m.next();if(h!==null){if(h.isEmpty()||(r===v-1?(d.push(_(h,r)),n(G(d.at(-1).first,t,e,d.at(-1).second,s,c))):l.push([h,r+1,v])),y.isEmpty()||(r===g?(d.push(_(y,r-1)),n(G(d.at(-1).first,t,e,d.at(-1).second,s,c))):l.push([y,g,r])),b!==null&&!b.isEmpty()){let e=new i;b.queryLooseEnvelope(e),e.ymin>=s[r]?l.push([b,r+1,v]):e.ymax<=s[r]?l.push([b,g,r]):l.push([b,g,v])}}else r+1===v?(s[r]-p.ymin<p.ymax-s[r]?d.push(_(u,r)):d.push(_(u,r+1)),n(G(d.at(-1).first,t,e,d.at(-1).second,s,c))):l.push([u,r+1,v])}}}return d}splitPolygon(e,t,n,r,a,o){let s=new i;e.queryLooseEnvelope(s),s.inflateCoords(0,Math.max(s.width(),s.height()));let c=[],l=[];for(l.push(B(e,0,o));l.length;){let o={...l.at(-1)};if(l.pop(),o.polygon.hasNonLinearSegments()){let e=Math.trunc((o.to+o.from)/2),u=a[e],d=new i(n,s.ymin,r,u),f=new T().execute(o.polygon,d,t,this.m_progressTracker);f.isEmpty()||(e-o.from===0?c.push(_(f,e-1)):l.push(B(f,o.from,e)));let p=new i(n,u,r,s.ymax),m=new T().execute(o.polygon,p,t,this.m_progressTracker);m.isEmpty()||(o.to-e===1?c.push(_(m,e)):l.push(B(m,e+1,o.to)))}else{let i=this.splitPolygonLinear(e,t,n,r,a.slice(o.from),o.to-o.from);c.push(...i)}}c.sort((e,t)=>e.second-t.second);let u=[];return d(c,(e,t)=>e.second===t.second,(e,t)=>{let n=new m;for(let r=e;r!==t;++r)n.add(c[r].first,!1);u.push(_(n,c[e].second))}),u}isYMonotone(e){if(e.getPathCount()!==1)return!1;let t=e.getXY(0),n=0,r=0,i=new b;for(let a=1,o=e.getPointCount();a<=o;a++){e.queryXY(a===o?0:a,i);let s=i.y>t.y?1:i.y<t.y?-1:0;if(t.setCoordsPoint2D(i),n!==s&&s!==0){if(n!==0&&(r++,r>2))return!1;n=s}}return!0}splitYMonotone(e,t,r,i,a,o){let s=new f;s.addGeometry(t);let c=s.getFirstPath(s.getFirstGeometry()),l=s.getFirstVertex(c),u=new b,d=new b,m=l,h=l;{let e=s.getXY(l);u.setCoordsPoint2D(e),d.setCoordsPoint2D(e)}let g=s.getNextVertex(l),v=new b;for(let e=0,t=s.getPathSize(c);e<t;e++,g=s.getNextVertex(g))s.queryXY(g,v),v.compare(u)<0?(m=g,u.setCoordsPoint2D(v)):v.compare(d)>0&&(h=g,d.setCoordsPoint2D(v));let y=m,x=m,S=y,C=x,w=!1,T=!1,E=a,D=u.y,O=u.y,k=!1;for(;E<o;){if(i[E]<=u.y){E++;continue}if(i[E]>=d.y)break;if(!w){let e=s.getNextVertex(y),t=s.getY(e);if(t<D)break;let n=i[E];D<=n&&t>=n?w=!0:(D=t,y=e)}if(!T){let e=s.getPrevVertex(x),t=s.getY(e);if(t<O)break;let n=i[E];O<=n&&t>=n?T=!0:(O=t,x=e)}if(w&&T){k=!0;let t=s.getXY(y),r=s.getNextVertex(y),a=s.getXY(r),o=p;if(a.y===t.y)o=a.x<t.x?y:r;else{let e=(i[E]-t.y)/(a.y-t.y);if(e===0)o=y;else if(e===1)o=r;else{let t=s.splitSegmentAxisAware(y,[e],1,null,-1);n(t===1),o=s.getNextVertex(y),s.getY(o)!==i[E]&&s.setXYCoords(o,s.getX(o),i[E])}}let c=s.getPrevVertex(x);t=s.getXY(c),a=s.getXY(x);let l=p;if(a.y===t.y)l=a.x<t.x?x:c;else{let e=(i[E]-t.y)/(a.y-t.y);if(e===0)l=c;else if(e===1)l=x;else{let t=s.splitSegmentAxisAware(c,[e],1,null,-1);n(t===1),l=s.getNextVertex(c),s.getY(l)!==i[E]&&s.setXYCoords(l,s.getX(l),i[E])}}e.push(_(this.extractTrapezoid(s,S,o,C,l),E-1)),S=o,C=l,y=o,x=l,D=O=i[E],w=!1,T=!1,E++}}k?e.push(_(this.extractTrapezoid(s,S,h,C,h),E-1)):e.push(_(t,E))}extractTrapezoid(e,t,n,r,i){let a=new m({vd:e.getVertexDescription()}),o=new C,s=!0;for(let r=t;;r=e.getNextVertex(r)){let t=e.getSegment(r);if(t?a.addSegment(t,s):(e.queryPoint(r,o),s?a.startPathPoint(o):a.lineToPoint(o)),s=!1,r===n)break}n!==i&&(e.queryPoint(i,o),a.lineToPoint(o)),s=!0;for(let n=i;;n=e.getNextVertex(n)){let i=e.getSegment(n);if(i?a.addSegment(i,s):!s&&n!==t&&(e.queryPoint(n,o),a.lineToPoint(o)),s=!1,n===r)break}return a}}function W(e){return e.getImpl().ensureXYMonotoneSegments()}function G(e,t,n,r,a,o){let s=new i;e.queryEnvelope(s);let c=w(t,n,!0).total()*4;return!(r>=0&&!(s.ymin+c>=a[r])||r+1<o&&s.ymax>a[r+1]+c)}class K{getOperatorType(){return 10011}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}sliceIntoStrips(e,t,n,r,i,a){return new q(0,e,t,n,i,0,a)}findSlicesByArea(e,t,n,r,i,a){if(!i||i.isIdentity())return O(e,t,n,r,a);{let o=e.clone();return o.applyTransformation(i),O(o,t,n,r,a)}}recursiveSliceEqualArea(e,t,n,r,i){return new q(1,e,t,null,r,n,i)}}class q extends e{m_ySplits;m_polygon;m_sr;m_transform;m_inverseTransform;m_tracker;m_partCount;m_method;m_bReversePaths;m_resultCursor=null;constructor(e,t,n,r,i,a,o){super(),this.m_method=e,this.m_polygon=t,this.m_sr=n,this.m_ySplits=r?.slice()??null,this.m_transform=i,this.m_bReversePaths=i?.isReflective()??!1,this.m_inverseTransform=i?i.clone().invertThis():null,this.m_partCount=a,this.m_tracker=o}tock(){return!0}getRank(){return 1}next(){this.m_resultCursor||(this.m_method?this.recursiveSliceEqualArea():this.sliceIntoStrips());let e=this.m_resultCursor.next();return e&&(this.m_inverseTransform&&!this.m_inverseTransform.isIdentity()&&(e.applyTransformation(this.m_inverseTransform),this.m_bReversePaths&&e.reverseAllPaths()),e)}getGeometryID(){return this.m_resultCursor?this.m_resultCursor.getGeometryID():-1}sliceIntoStrips(){if(!this.m_transform||this.m_transform.isIdentity())this.m_resultCursor=k(this.m_polygon,this.m_sr,this.m_ySplits,this.m_ySplits.length,this.m_tracker);else{let e=this.m_polygon.clone();e.applyTransformation(this.m_transform),this.m_bReversePaths&&e.reverseAllPaths(),this.m_resultCursor=k(e,this.m_sr,this.m_ySplits,this.m_ySplits.length,this.m_tracker)}}recursiveSliceEqualArea(){if(!this.m_transform||this.m_transform.isIdentity())this.m_resultCursor=A(this.m_polygon,this.m_sr,this.m_partCount,this.m_tracker);else{let e=this.m_polygon.clone();e.applyTransformation(this.m_transform),this.m_bReversePaths&&e.reverseAllPaths(),this.m_resultCursor=A(e,this.m_sr,this.m_partCount,this.m_tracker)}}}const J=new K;function Y(e,t,n,r,i){return J.findSlicesByArea(e,t,n,r,i,null)}function X(e,t,n,r){let i=J.recursiveSliceEqualArea(e,t,n,r,null);return Array.from(i)}function Z(e,t,n,r){let i=J.sliceIntoStrips(e,t,n,0,r,null);return Array.from(i)}function Q(){return J.supportsCurves()}export{Y as findSlicesByArea,X as recursiveSliceEqualArea,Z as sliceIntoStrips,Q as supportsCurves};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{S as e}from"../../../chunks/SimpleGeometryCursor.js";import{G as t}from"../../../chunks/GeometryCursor.js";import{d as n,
|
|
2
|
+
import{S as e}from"../../../chunks/SimpleGeometryCursor.js";import{G as t}from"../../../chunks/GeometryCursor.js";import{d as n,t as r,G as i}from"../../../chunks/Geometry.js";import{P as a,c as o}from"../../../chunks/Point2D.js";import{M as s}from"../../../chunks/MultiPathImpl.js";import{Envelope2D as c}from"../../../chunks/Envelope2D.js";import{c as l,f as u}from"../../../chunks/Envelope.js";import{aR as d}from"../../../chunks/UnitFactory.js";class f{getOperatorType(){return 10003}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,n,r){return new g(e,t,n,r)}execute(t,r,i,a){let o=new e([t]),s=new e([r]),c=this.executeMany(o,s,i,a).next();return c||n(`null output`),c}}function p(e,t,n,r){let a=e.getDimension(),o=t.getDimension();if(a!==o)return a>o?e:t;if(e.isEmpty())return t;if(t.isEmpty())return e;let s=new c,u=new c,f=new c;e.queryEnvelope(s),t.queryEnvelope(u),f.setCoords({env2D:s}),f.mergeEnvelope2D(u);let p=l(n,f,!0),g=e.getGeometryType(),_=t.getGeometryType();return g===i.enumPoint&&_===i.enumPoint?m(e,t,p):g===i.enumPoint&&_===i.enumMultiPoint?h(t,e,p):g===i.enumMultiPoint&&_===i.enumPoint?h(e,t,p):d(e,t,n,r)}function m(e,t,n,r){let i=u(n),o=i*i,c=e.getXY(),l=t.getXY(),d=new s({vd:e.getDescription()});return a.sqrDistance(c,l)>o&&(d.add(e),d.add(t)),d}function h(e,t,n,r){let i=e.getImpl().getAttributeStreamRef(0),a=e.getPointCount(),s=t.getXY(),l=e.createInstance(),d=u(n),f=new c;if(e.queryEnvelope(f),f.inflateCoords(d,d),f.contains(s)){let n=d*d,r=!1,c=o(a,!1);for(let e=0;e<a;e++){let t=i.read(2*e),a=i.read(2*e+1),o=t-s.x,l=a-s.y;o*o+l*l<=n&&(r=!0,c[e]=!0)}if(!r)l.addPoints(e,0,a),l.add(t);else for(let t=0;t<a;t++)c[t]||l.addPoints(e,t,t+1)}else l.addPoints(e,0,a),l.add(t);return l}class g extends t{m_inputGeoms;m_progressTracker;m_spatialReference;m_rightGeom;m_index;m_bEmpty;constructor(e,t,n,i){super(),this.m_progressTracker=i,this.m_index=-1,this.m_inputGeoms=e,this.m_spatialReference=n,this.m_rightGeom=t.next(),this.m_bEmpty=!this.m_rightGeom,r(this.m_rightGeom)}tock(){return!0}getRank(){return 1}next(){if(this.m_bEmpty)return null;let e=this.m_inputGeoms.next();return e?(r(e),this.m_index=this.m_inputGeoms.getGeometryID(),p(e,this.m_rightGeom,this.m_spatialReference,this.m_progressTracker)):null}getGeometryID(){return this.m_index}}const _=new f;function v(e,t,n){return _.execute(e,t,n,null)}function y(t,n,r){let i=_.executeMany(new e(t),new e([n]),r,null);return Array.from(i)}function b(){return _.supportsCurves()}export{v as execute,y as executeMany,b as supportsCurves};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{
|
|
2
|
+
import{b as e,t}from"../../chunks/Geometry.js";import{D as n}from"../../chunks/Distance2DCalculator-DjIp2uQi.js";import{convertToSpatialReferenceUnit as r}from"../../core/units.js";import{getSpatialReference as i,fromGeometry as a}from"./support/apiConverter.js";import{deprecatedOperator as o}from"./support/deprecatedOperator.js";class s{getOperatorType(){return 10}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(r,i,a,o){if(r.isEmpty()||i.isEmpty())return!1;a<0&&e(`distance`),t(r),t(i);let s=r,c=i;return Number.isNaN(a)&&(a=1/0),new n(a,o).isNear(s,c)}}const c=new s;function l(e,t,n,o={}){let{unit:s}=o;if(s){let t=i(e);n=r(n,s,t)}return c.execute(a(e),a(t),n,null)}function u(e,t,n,r={}){return o(`isNearOperator`,`execute`,`isNearExecute`),l(e,t,n,r)}const d=c.supportsCurves(),f=!!d;export{u as execute,l as isNearExecute,d as isNearSupportsCurves,f as supportsCurves};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{
|
|
2
|
+
import{a as e,p as t,G as n,d as r}from"../../chunks/Geometry.js";import{a as i,S as a,P as o}from"../../chunks/MultiPathImpl.js";import{Envelope2D as s}from"../../chunks/Envelope2D.js";import{c,P as l}from"../../chunks/Envelope.js";import{J as u}from"../../chunks/UnitFactory.js";import{getSpatialReference as d,fromGeometry as f,fromPolyline as p,fromSpatialReference as m,toGeometry as h}from"./support/apiConverter.js";import{deprecatedOperator as g}from"./support/deprecatedOperator.js";function _(r,a,o,l){if(a.getPathCount()>1&&e(``),r.isEmpty()||a.isEmpty())return null;t(r),t(a);let u=null,d=new s;r.queryEnvelope(d);let f=new s;a.queryEnvelope(f);let p=new s;p.setCoords({env2D:d}),p.mergeEnvelope2D(f);let m=c(o,p,!1).total(),h=new v(l),g=h.setIndicesAndScalars(r,a,m);if(g){let e=h.getTrimmedPolyline(r,a);if(e.isEmpty())return null;u=h.getReshapedMultiPath(r,e,o)}else{if(Number.isNaN(h.m_scalarB0)||r.getGeometryType()===n.enumPolyline)return null;let e=new i;if(e.add(a,!0),h.clearIndicesAndScalars(),g=h.setIndicesAndScalars(r,e,m),!g)return null;let t=h.getTrimmedPolyline(r,e);if(t.isEmpty())return null;u=h.getReshapedMultiPath(r,t,o)}return u}class v{m_pathA0;m_pathA1;m_vertexA0;m_vertexA1;m_vertexB0;m_vertexB1;m_scalarA0;m_scalarA1;m_scalarB0;m_scalarB1;m_progressTracker;constructor(e){this.m_progressTracker=e,this.clearIndicesAndScalars()}setIndicesAndScalars(e,t,r){let i=new s,a=new s;if(e.queryEnvelope(i),e.queryEnvelope(a),i.inflateCoords(r,r),!i.intersect(a))return!1;let o=e.getImpl().querySegmentIterator(),c=t.getImpl().querySegmentIterator(),l=[0,0],u=[0,0],d=-1,f=-1,p=-1,m=-1,h=-1,g=-1,_=NaN,v=NaN,y=NaN,b=NaN;for(c.nextPath();c.hasNextSegment();){let e=c.nextSegment(),t=new s;for(e.queryEnvelope(t),t.inflateCoords(r,r),o.resetToFirstPath();o.nextPath();){for(;o.hasNextSegment();){let n=o.nextSegment(),i=new s;if(n.queryEnvelope(i),t.isIntersecting(i)&&e.intersect(n,null,u,l,r)!==0&&(Number.isNaN(y)||u[0]<y)&&(d=o.getPathIndex(),p=o.getStartPointIndex(),h=c.getStartPointIndex(),_=l[0],y=u[0],y===0))break}if(y===0)break}if(!Number.isNaN(y)&&y!==1)break}if(Number.isNaN(y))return!1;this.m_pathA0=d,this.m_vertexA0=p,this.m_vertexB0=h,this.m_scalarA0=_,this.m_scalarB0=y;let x=e.getGeometryType();for(c.resetToLastSegment();c.hasPreviousSegment();){let e=c.previousSegment(),t=new s;for(e.queryEnvelope(t),t.inflateCoords(r,r),x===n.enumPolygon?o.resetToPath(d):o.resetToFirstPath();o.nextPath();){for(;o.hasNextSegment();){let n=o.nextSegment(),i=new s;if(n.queryEnvelope(i),t.isIntersecting(i)){let t=e.intersect(n,null,u,l,r);if(t!==0&&(Number.isNaN(b)||u[t-1]>b)&&(c.getStartPointIndex()!==this.m_vertexB0||u[t-1]!==this.m_scalarB0)&&(f=o.getPathIndex(),m=o.getStartPointIndex(),g=c.getStartPointIndex(),v=l[t-1],b=u[t-1],b===1))break}}if(b===1||x===n.enumPolygon)break}if(!Number.isNaN(b))break}return!Number.isNaN(b)&&(this.m_pathA1=f,this.m_vertexA1=m,this.m_vertexB1=g,this.m_scalarA1=v,this.m_scalarB1=b,!0)}getTrimmedPolyline(e,t){let n=new a,r=t.createInstance(),i=!0,o=t.getImpl().querySegmentIterator();if(o.resetToVertex(this.m_vertexB0,0),this.m_vertexB0>this.m_vertexB1)return r;if(this.m_vertexB0===this.m_vertexB1)o.nextSegment().queryCut(this.m_scalarB0,this.m_scalarB1,n,!1),r.addSegment(n.get(),!0);else for(;;){let e=o.nextSegment(),t=o.getStartPointIndex();if(t===this.m_vertexB0)this.m_scalarB0!==1&&(e.queryCut(this.m_scalarB0,1,n,!1),r.addSegment(n.get(),i),i=!1);else if(t===this.m_vertexB1){this.m_scalarB1!==0&&(e.queryCut(0,this.m_scalarB1,n),r.addSegment(n.get(),i),i=!1);break}else r.addSegment(e,i)}if(r.isEmpty())return r;if(e.getDescription().getAttributeCount()>1){let t=e.getImpl().querySegmentIterator(),n=new l,i=r.getPointCount();t.resetToVertex(this.m_vertexA0,this.m_pathA0),t.nextSegment().queryCoord(this.m_scalarA0,n),r.setPointByVal(0,n),t.resetToVertex(this.m_vertexA1,this.m_pathA1),t.nextSegment().queryCoord(this.m_scalarA1,n),r.setPointByVal(i-1,n),r.interpolateAttributesRange(0,0,0,i-1)}return r}getReshapedMultiPath(e,t,r){let i=e.getGeometryType(),a;return a=i===n.enumPolygon?this.getReshapedPolygon(e,t,r):this.getReshapedPolyline(e,t),a}getReshapedPolygon(e,t,n){let r=e.getImpl().querySegmentIterator();r.setCirculator(!0);let i=new a;new l;let s=new o({vd:e.getDescription()});if(s.addSegmentsFromPath(t,0,0,t.getSegmentCountPath(0),!0),r.resetToVertex(this.m_vertexA1,this.m_pathA0),this.m_vertexA1===this.m_vertexA0&&this.m_scalarA1<=this.m_scalarA0)r.nextSegment().queryCut(this.m_scalarA1,this.m_scalarA0,i),s.addSegment(i.get(),!1);else{{let e=r.nextSegment();this.m_scalarA1!==1&&(e.queryCut(this.m_scalarA1,1,i),s.addSegment(i.get(),!1))}for(;;){let e=r.nextSegment();if(r.getStartPointIndex()===this.m_vertexA0){this.m_scalarA0!==0&&(e.queryCut(0,this.m_scalarA0,i),s.addSegment(i.get(),!1));break}s.addSegment(e,!1)}}let c=new o({vd:e.getDescription()}),d=t.clone();if(d.reversePath(0),c.addSegmentsFromPath(d,0,0,d.getSegmentCountPath(0),!0),r.resetToVertex(this.m_vertexA0,this.m_pathA0),this.m_vertexA0===this.m_vertexA1&&this.m_scalarA0<this.m_scalarA1)r.nextSegment().queryCut(this.m_scalarA0,this.m_scalarA1,i),c.addSegment(i.get(),!1);else{{let e=r.nextSegment();this.m_scalarA0!==1&&(e.queryCut(this.m_scalarA0,1,i),c.addSegment(i.get(),!1))}for(;;){let e=r.nextSegment();if(r.getStartPointIndex()===this.m_vertexA1){this.m_scalarA1!==0&&(e.queryCut(0,this.m_scalarA1,i),c.addSegment(i.get(),!1));break}c.addSegment(e,!1)}}let f=Math.abs(s.calculateArea2D()),p=Math.abs(c.calculateArea2D()),m=e.createInstance();for(let t=0;t<e.getPathCount();t++)t===this.m_pathA0?f>=p?m.add(s,!1):m.add(c,!1):m.addPath(e,t,!0);return m=new u().execute(m,n,!1,this.m_progressTracker),m}getReshapedPolyline(e,t){let n=e.getImpl().querySegmentIterator(),o=new i,s=new a,c=!1,l=-1,u=NaN;c=this.m_pathA0>this.m_pathA1?!0:this.m_pathA0===this.m_pathA1?this.m_vertexA0>this.m_vertexA1||this.m_vertexA0===this.m_vertexA1&&this.m_scalarA0>this.m_scalarA1:!1,c?(l=this.m_vertexA1,u=this.m_scalarA1,n.resetToPath(this.m_pathA1)):(l=this.m_vertexA0,u=this.m_scalarA0,n.resetToPath(this.m_pathA0));let d=!0;for(n.nextPath()||r(`reshaper`);;){let e=n.nextSegment();if(n.getStartPointIndex()===l){u!==0&&(e.queryCut(0,u,s),o.addSegment(s.get(),d),d=!1);break}o.addSegment(e,d),d=!1}if(c){let e=t.clone();e.reversePath(0),o.addSegmentsFromPath(e,0,0,e.getSegmentCount(),d)}else o.addSegmentsFromPath(t,0,0,t.getSegmentCount(),d);c?(u=this.m_scalarA0,n.resetToVertex(this.m_vertexA0,this.m_pathA0)):(u=this.m_scalarA1,n.resetToVertex(this.m_vertexA1,this.m_pathA1));{let e=n.nextSegment();u!==1&&(e.queryCut(u,1,s),o.addSegment(s.get(),!1))}for(;n.hasNextSegment();){let e=n.nextSegment();o.addSegment(e,!1)}let f=e.createInstance(),p=!1;for(let t=0;t<e.getPathCount();t++)t===this.m_pathA0||t===this.m_pathA1?p||=(f.add(o,!1),!0):f.addPath(e,t,!0);return f}clearIndicesAndScalars(){this.m_pathA0=-1,this.m_pathA1=-1,this.m_vertexA0=-1,this.m_vertexA1=-1,this.m_vertexB0=-1,this.m_vertexB1=-1,this.m_scalarA0=NaN,this.m_scalarA1=NaN,this.m_scalarB0=NaN,this.m_scalarB1=NaN}}class y{getOperatorType(){return 10006}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!1}execute(e,t,n,r){return _(e,t,n,r)}}const b=new y;function x(e,t){let n=d(e),r=b.execute(f(e),p(t),m(n),null);return h(r,n)}function S(e,t){return g(`reshapeOperator`,`execute`,`reshapeExecute`),x(e,t)}const C=b.supportsCurves(),w=!!C;export{S as execute,x as reshapeExecute,C as reshapeSupportsCurves,w as supportsCurves};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{constructFromFlatGeometry as e}from"../../../chunks/FlatGeometry.js";import{d as t,a as n,g as r,r as i,q as a,G as o,t as s}from"../../../chunks/Geometry.js";import{aL as c,i as l,d as u,b as d,aM as f,P as p,m}from"../../../chunks/Point2D.js";import{q as h,b as g,p as _,a_ as v,c as y,e as b,a as x,f as S,a$ as C}from"../../../chunks/UnitFactory.js";import{a2 as w,a5 as T,P as E,E as D,a0 as O,a1 as k,a6 as A,a7 as j,W as M}from"../../../chunks/Envelope.js";import{P as N,a as P,S as F,M as I,I as L,a5 as R,a6 as z,a7 as B,a8 as V,a9 as H}from"../../../chunks/MultiPathImpl.js";import{convertGeometryxToFlat as U,convertFlatToGeometryJSON as W,convertGeometryToFlat as ee}from"../../FlatGeometry.js";import te from"../../SpatialReference.js";import"./initNoPeFactory.js";import{isPoint as ne,isMultipoint as re,isPolyline as ie,isPolygon as ae}from"../../support/jsonTypeUtils.js";function oe(){if(this.m_i===-1)return this.m_i=0,{value:{m_token:1,m_value:null},done:!1};if(this.m_i<this.m_keys.length){let e=this.m_bReturnKey,t=Math.trunc(this.m_i);return this.m_bReturnKey=!this.m_bReturnKey,this.m_i+=.5,e?{value:{m_token:5,m_value:this.m_keys[t]},done:!1}:{value:{m_token:6,m_value:this.m_o[this.m_keys[t]]},done:!1}}return{value:{m_token:3,m_value:null},done:!0}}function se(){if(this.m_i===-1)return this.m_i=0,{value:{m_token:2,m_value:null},done:!1};if(this.m_i<this.m_a.length){let e={value:{m_token:6,m_value:this.m_a[this.m_i++]},done:!1};return this.m_strict||e.value.m_value===void 0&&(e.value.m_value=NaN),e}return{value:{m_token:4,m_value:null},done:!0}}class ce{m_iteratorStack;m_nextFlatToken;m_currentToken=0;m_currentValue;m_options;createJSONObjectIterator(e){return{m_iteratorType:`object`,m_o:e,m_keys:this.m_options.strict?Object.keys(e):Object.keys(e).filter(t=>e[t]!==void 0),m_i:-1,m_bReturnKey:!0,next:oe}}createJSONArrayIterator(e){return{m_iteratorType:`array`,m_strict:this.m_options.strict,m_i:-1,m_a:e,next:se}}constructor(e,t){this.m_options=t?{...t}:{strict:!0};let n=e;this.m_iteratorStack=[n instanceof Array?this.createJSONArrayIterator(n):this.createJSONObjectIterator(n)],this.m_nextFlatToken={m_value:null,m_token:0}}nextToken(){if(this.m_iteratorStack.length===0)return this.m_currentToken=0;switch(this.m_nextFlatToken=this.m_iteratorStack.at(-1).next().value,this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_currentToken=1;case 3:return this.m_iteratorStack.pop(),this.m_currentToken=3;case 2:return this.m_currentToken=2;case 4:return this.m_iteratorStack.pop(),this.m_currentToken=4;case 5:return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=5;case 6:if(this.m_nextFlatToken.m_value instanceof Array)return this.m_iteratorStack.push(this.createJSONArrayIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(this.m_nextFlatToken.m_value instanceof Object)return this.m_iteratorStack.push(this.createJSONObjectIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(typeof this.m_nextFlatToken.m_value==`number`)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=Number.isSafeInteger(this.m_currentValue)&&this.m_currentValue>=c()&&this.m_currentValue<=l()?8:7;if(typeof this.m_nextFlatToken.m_value==`string`)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=6;if(typeof this.m_nextFlatToken.m_value==`boolean`)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=this.m_nextFlatToken.m_value?11:12;if(typeof this.m_nextFlatToken.m_value==`object`)return this.m_currentValue=null,this.m_currentToken=10;t(`unrecognized json element type`)}t(`unrecognized json element type`)}currentToken(){return this.m_currentToken}skipChildren(){if(this.m_iteratorStack.length!==0)switch(this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=3,this.m_currentToken=3;return;case 2:this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=4,this.m_currentToken=4;return}}currentString(){return this.m_currentToken!==6&&this.m_currentToken!==5&&n(`invalid token`),this.m_currentValue}currentDoubleValue(){return this.m_currentToken!==7&&this.m_currentToken!==8&&n(`invalid token`),this.m_currentValue}currentInt32Value(){return this.m_currentToken!==8&&n(`invalid token`),this.m_currentValue}currentInt64Value(){return r(0),0n}currentBoolValue(){return this.m_currentToken!==12&&this.m_currentToken!==11&&n(`invalid token`),this.m_currentValue}isError(){return 0}}class G{m_pendingKey=null;m_acceptedObject=null;m_currentObject=[];reset(){this.m_pendingKey=null,this.m_acceptedObject=null,this.m_currentObject.length=0}startObject(){let e={};this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}startArray(){let e=[];this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}endObject(){this.m_acceptedObject=this.m_currentObject.at(-1),this.m_currentObject.pop()}endArray(){this.m_currentObject.pop()}addFieldName(e){this.m_pendingKey=e}addValue_(e){this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):this.m_currentObject.at(-1).push(e)}addString(e){this.addValue_(e)}addDouble(e,t){this.addValue_(e)}addInt64(e){r(0)}addInt32(e){this.addValue_(e)}addBool(e){this.addValue_(e)}addNull(){this.addValue_(null)}getObject(){return this.m_acceptedObject}}class K{m_buffer=null;m_view=null;m_sz=0;m_offset=0;m_bOwnsBuffer=!0;m_bLittleEndian=!0;m_element;m_elementBytes;m_elementView;m_elementDouble;m_elementFloat;m_elementInt64;m_elementInt32;m_elementInt16;constructor(e){if(this.m_element=new ArrayBuffer(8),this.m_elementBytes=new Uint8Array(this.m_element),this.m_elementView=new DataView(this.m_element),this.m_elementDouble=new Float64Array(this.m_element),this.m_elementFloat=new Float32Array(this.m_element),this.m_elementInt64=new BigInt64Array(this.m_element),this.m_elementInt32=new Int32Array(this.m_element),this.m_elementInt16=new Int16Array(this.m_element),e.sz!==void 0){if(this.m_sz=e.sz,e.buffer){this.m_sz<0&&i(`size out of range`),this.m_buffer=e.buffer,this.m_offset=e.offset===void 0?0:e.offset,this.m_view=e.offset===void 0?new DataView(this.m_buffer):new DataView(e.buffer,e.offset,e.sz),this.m_bOwnsBuffer=!1,this.m_bLittleEndian=!0;return}this.m_sz<0&&i(`size out of range`),this.m_sz>0&&(this.m_buffer=new ArrayBuffer(this.m_sz),this.m_view=new DataView(this.m_buffer));return}if(e.move){this.m_sz=e.move.m_sz,this.m_buffer=e.move.m_buffer,this.m_view=e.move.m_view,this.m_bOwnsBuffer=e.move.m_bOwnsBuffer,this.m_bLittleEndian=e.move.m_bLittleEndian,e.move.m_buffer=null,e.move.m_view=null,e.move.m_sz=0,e.move.m_bOwnsBuffer=!0;return}t(`unrecognized constructor options`)}swapBytesDouble(){this.doSwap()&&(this.m_elementDouble[0]=this.m_elementBytes[0]<<56|this.m_elementBytes[1]<<48|this.m_elementBytes[2]<<40|this.m_elementBytes[3]<<32|this.m_elementBytes[4]<<24|this.m_elementBytes[5]<<16|this.m_elementBytes[6]<<8|this.m_elementBytes[7])}swapBytesInt32(){this.doSwap()&&(this.m_elementInt32[0]=this.m_elementBytes[0]<<24|this.m_elementBytes[1]<<16|this.m_elementBytes[2]<<8|this.m_elementBytes[3])}getOffset(){return this.m_offset}assignMove(e){return this===e?this:(this.clear(),this.m_sz=e.m_sz,this.m_buffer=e.m_buffer,this.m_view=e.m_view,this.m_bOwnsBuffer=e.m_bOwnsBuffer,this.m_bLittleEndian=e.m_bLittleEndian,e.m_buffer=null,e.m_sz=0,e.m_bOwnsBuffer=!0,this)}doSwap(){return this.m_bLittleEndian!==(K.getNativeByteOrder()===1)}setNativeByteOrder(){this.m_bLittleEndian=K.getNativeByteOrder()===1}setOrder(e){this.m_bLittleEndian=e===1}getOrder(){return+!!this.m_bLittleEndian}getView(){return this.m_view||a(`buffer not defined`),this.m_view}static getNativeByteOrder(){return 1}clear(){this.m_buffer=null,this.m_sz=0,this.m_bOwnsBuffer=!0}size(){return this.m_sz}readDouble(e){return this.doSwap()?(this.m_elementDouble[0]=this.m_view.getFloat64(e,this.m_bLittleEndian),this.swapBytesDouble(),this.m_elementDouble[0]):this.m_view.getFloat64(e,this.m_bLittleEndian)}writeDouble(e,t){this.m_elementDouble[0]=t,this.swapBytesDouble(),this.m_view.setFloat64(e,this.m_elementDouble[0],this.m_bLittleEndian)}readInt32(e){return this.doSwap()?(this.m_elementInt32[0]=this.m_view.getInt32(e,this.m_bLittleEndian),this.swapBytesInt32(),this.m_elementInt32[0]):this.m_view.getInt32(e,this.m_bLittleEndian)}writeInt32(e,t){this.m_elementInt32[0]=t,this.swapBytesInt32(),this.m_view.setInt32(e,this.m_elementInt32[0],this.m_bLittleEndian)}getPtr(){return this.m_buffer}setSizeNoRealloc(e){r(e>=0&&e<=this.m_sz),this.m_sz=e}}function le(e,t,i,a,s,c){let l=!1,u=!1,d=!1,f=!1,p=!1,m=!1,h=!1,g=!1,_=!1,v=!1,y=!1,b=!1,x=!1,S=!1,C=!1,O=!1,k=!1,A=!1,j=!1,M=!1,N=!1,P=!1,F=!1,I=!1,L=NaN,R=NaN,z=NaN,B=NaN,V=0,H=NaN,U=NaN,W=NaN,ee=NaN,te=NaN,ne=NaN,re=NaN,ie=NaN,ae=0,oe=0,se=!1,ce=!1,G=null,K=null,le=null,ue=null,J=null;for(;i.nextToken()!==3;){let c=i.currentString();if(i.nextToken(),c===`spatialReference`){if(s&&!l){l=!0,i.currentToken()===1?ue=de(i):i.currentToken()!==10&&n(`failed to parse spatial reference: object or null is expected`);continue}}else if(a){if(c===`hasZ`){if(!u){u=!0,se=i.currentToken()===11;continue}}else if(c===`hasM`){if(!d){d=!0,ce=i.currentToken()===11;continue}}else if(c===`rings`){if(!p&&!m&&(e===o.enumUnknown||e===o.enumPolygon)){p=!0,{geometry:J,as:G,bs:K}=fe(!0,!1,t,i);continue}}else if(c===`curveRings`){if(!m&&(e===o.enumUnknown||e===o.enumPolygon)){m=!0,{geometry:J,as:G,bs:K}=fe(!0,!0,t,i);continue}}else if(c===`paths`){if(!h&&!g&&(e===o.enumUnknown||e===o.enumPolyline)){h=!0,{geometry:J,as:G,bs:K}=fe(!1,!1,t,i);continue}}else if(c===`curvePaths`){if(!g&&(e===o.enumUnknown||e===o.enumPolyline)){g=!0,{geometry:J,as:G,bs:K}=fe(!1,!0,t,i);continue}}else if(c===`points`){if(!_&&(e===o.enumUnknown||e===o.enumMultiPoint)){_=!0,{geometry:J,as:G,bs:K}=pe(t,i);continue}}else if(c===`ids`){if(!f){f=!0,le=me(t,i);continue}}else if(c===`x`){if(!v&&(e===o.enumUnknown||e===o.enumPoint)){v=!0,L=q(i);continue}}else if(c===`y`){if(!y&&(e===o.enumUnknown||e===o.enumPoint)){y=!0,R=q(i);continue}}else if(c===`z`){if(!b&&(e===o.enumUnknown||e===o.enumPoint)){b=!0,z=q(i);continue}}else if(c===`m`){if(!x&&(e===o.enumUnknown||e===o.enumPoint)){x=!0,B=q(i);continue}}else if(c===`id`){if(!S&&(e===o.enumUnknown||e===o.enumPoint)){S=!0,V=he(i);continue}}else if(c===`xmin`){if(!C&&(e===o.enumUnknown||e===o.enumEnvelope)){C=!0,H=q(i);continue}}else if(c===`ymin`){if(!O&&(e===o.enumUnknown||e===o.enumEnvelope)){O=!0,U=q(i);continue}}else if(c===`mmin`){if(!N&&(e===o.enumUnknown||e===o.enumEnvelope)){N=!0,re=q(i);continue}}else if(c===`zmin`){if(!j&&(e===o.enumUnknown||e===o.enumEnvelope)){j=!0,te=q(i);continue}}else if(c===`idmin`){if(!F&&(e===o.enumUnknown||e===o.enumEnvelope)){F=!0,ae=he(i);continue}}else if(c===`xmax`){if(!k&&(e===o.enumUnknown||e===o.enumEnvelope)){k=!0,W=q(i);continue}}else if(c===`ymax`){if(!A&&(e===o.enumUnknown||e===o.enumEnvelope)){A=!0,ee=q(i);continue}}else if(c===`mmax`){if(!P&&(e===o.enumUnknown||e===o.enumEnvelope)){P=!0,ie=q(i);continue}}else if(c===`zmax`){if(!M&&(e===o.enumUnknown||e===o.enumEnvelope)){M=!0,ne=q(i);continue}}else if(c===`idmax`){if(!I&&(e===o.enumUnknown||e===o.enumEnvelope)){I=!0,oe=he(i);continue}}else c===`materials`&&r(0)}i.skipChildren()}if(p||m||h||g||_){let e=null,t=null,n=J;se&&(J.addAttribute(1),e=G,e||=w(n.getPointCount(),NaN)),ce&&(J.addAttribute(2),t=se?K:G),le!=null&&J.addAttribute(3),se&&e!=null&&n.setAttributeStreamRef(1,e),ce&&t!=null&&n.setAttributeStreamRef(2,t),le!=null&&ge(n,le)}else if(v||y||x||b||S){T(L,R)||n(`failed to parse point: x and y must be finite or nan`),(Number.isNaN(R)||Number.isNaN(L))&&(L=NaN,R=NaN);let e=new E({x:L,y:R});b&&e.setZ(z),x&&e.setM(B),S&&e.setID(V),J=e}else if(C||O||k||A||j||M||N||P||F||I){(Number.isNaN(U)||Number.isNaN(W)||Number.isNaN(ee))&&(H=NaN);let e=new D({xmin:H,ymin:U,xmax:W,ymax:ee});j&&M&&e.setInterval(1,0,te,ne),N&&P&&e.setInterval(2,0,re,ie),F&&I&&e.setInterval(3,0,ae,oe),J=e}return{...J?{geom:J}:{},...ue?{sr:ue}:{}}}function ue(e){let t=!1;for(;e.nextToken()!==3;){let n=e.currentString();e.nextToken(),n===`uwkid`?t||(t=!0,e.currentToken()===8&&e.currentInt32Value()):e.skipChildren()}return null}function de(e){let t=!1,n=!1,r=!1,i=!1,a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!1,f=!1,p=!1,m=!1,C=!1,w=!1,T=!1,E=-1,D=-1,O=-1,k=-1,A=0,j=0,M=0,N=0,P=0,F=0,I=0,L=0,R=0,z=0,B=``,V=``,H=null;for(;e.nextToken()!==3;){let h=e.currentString();e.nextToken(),h===`wkid`?t||(t=!0,e.currentToken()===8&&(E=e.currentInt32Value())):h===`latestWkid`?n||(n=!0,e.currentToken()===8&&(D=e.currentInt32Value())):h===`wkt`?a||(a=!0,e.currentToken()===6&&(B=e.currentString())):h===`wkt2`?a||e.currentToken()===6&&(V=e.currentString()):h===`vcsWkid`?r||(r=!0,e.currentToken()===8&&(O=e.currentInt32Value())):h===`latestVcsWkid`?i||(i=!0,e.currentToken()===8&&(k=e.currentInt32Value())):h===`xyTolerance`?s||(s=!0,o=!0,A=e.currentDoubleValue()):h===`zTolerance`?c||(c=!0,o=!0,j=e.currentDoubleValue()):h===`mTolerance`?l||(l=!0,o=!0,M=e.currentDoubleValue()):h===`falseX`?u||(u=!0,o=!0,I=e.currentDoubleValue()):h===`falseY`?d||(d=!0,o=!0,L=e.currentDoubleValue()):h===`falseZ`?f||(f=!0,o=!0,R=e.currentDoubleValue()):h===`falseM`?p||(p=!0,o=!0,z=e.currentDoubleValue()):h===`xyUnits`?m||(m=!0,o=!0,N=e.currentDoubleValue()):h===`zUnits`?C||(C=!0,o=!0,P=e.currentDoubleValue()):h===`mUnits`?w||(w=!0,o=!0,F=e.currentDoubleValue()):h===`unit`?T||(T=!0,H=ue(e)):e.skipChildren()}k<=0&&O>0&&(k=O),O<=0&&k>0&&(O=k);let U=null,W=!0;if(B.length!==0&&(W=!1,h(B)&&(U=g(B))),!U&&V.length!==0&&(W=!1,h(V)&&(U=g(V))),!U&&D>0&&(W=!1,_(D)&&(k<=0||v())&&(U=y(D,k))),!U&&E>0&&(W=!1,_(E)&&(O<=0||v())&&(U=y(E,O))),W&&(U=b(H)),o&&U){let e=new x;U.queryPrecisionDescriptorWithoutFalseXY(e),s&&e.setTolerance(0,A),c&&e.setTolerance(1,j),l&&e.setTolerance(2,M),m&&u&&d&&e.setGridParams(I,L,N),C&&f&&e.setZParams(R,P),w&&p&&e.setMParams(z,F),U=S(U,e)}return U}function fe(e,t,r,i){i.currentToken()!==2&&n(`failed to parse multipath: array of array of vertices is expected`);let a=e?new N:new P,o=a,s=O(0),c=w(2,0),l=k(0),m=null,h=null,g=null,_=null,v=null,y=0,b=0,x=0,S=new F,C=p.getNAN(),T=0,E=0,D=+!!e;for(;i.nextToken()!==4;){i.currentToken()!==2&&n(`failed to parse multipath: ring/path array is expected`);let r=2,a=0,j=!0,M=0,N=0,P=p.getNAN(),F=u(4,NaN),I=u(4,NaN),L=!1;for(i.nextToken();i.currentToken()!==4;){if(t&&i.currentToken()===1)j&&n(`failed to parse multipath: starting vertex array is expected`),g||(g=k(T-1,1),_=O(T-1,-1),v=w(0)),L=!0,r=1,{segFlag:x,toPointSz:M}=xe(S,F,C,i);else{for(L=!1,i.currentToken()!==2&&n(`failed to parse multipath: array is expected, rings/paths vertices consist of arrays of coordinates`),M=0;i.nextToken()!==4;)M===4&&n(`failed to parse multipath: each vertex array has to have at most 4 elements`),F[M++]=q(i);M<2&&n(`failed to parse multipath: each vertex array has to have at least 2 elements`),A(F[0],F[1])||n(`failed to parse multipath: x and y must be finite`)}i.nextToken();do{if(c.size()===T*2&&c.resize(J(T)),c.writePoint2D(2*T,P.setCoords(F[0],F[1])),m&&m.size()===T&&m.resize(Y(T)),M>2?(m||=w(T+1,NaN),m.write(T,F[2])):m&&m.write(T,NaN),h&&h.size()===T&&h.resize(Y(T)),M>3?(h||=w(T+1,NaN),h.write(T,F[3])):h&&h.write(T,NaN),j)E++,s.add(T),l.add(D),j=!1,N=M,d(I,F,0,0,N);else if(g!==null){if(!L)g.add(1),_.add(-1);else{let e=H(x),t=v.size();v.resize(t+e),g.add(x),_.add(y),S.get().writeInBufferStream(v,y),y+=e,o.incCurveType(x,1),b++}}T++,a++,C.setCoords(F[0],F[1])}while(a<r&&i.currentToken()===4)}a!==0&&(e&&a>r&&M===N&&f(F,I,M)===0?(T--,a--):g!==null&&(g.add(1),_.add(-1)))}return T&&(s.resize(E),l.resize(E),T>0&&(s.add(T),l.add(0)),o.setAttributeStreamRef(0,c),o.setPathFlagsStreamRef(l),o.setPathStreamRef(s),g!==null&&(o.updateCurveCounter(b),o.setSegmentData(_,v,g,y)),o.notifyModifiedFlags(65535)),{geometry:a,as:m,bs:h}}function pe(e,t){t.currentToken()!==2&&n(`failed to parse multipoint: array of vertices is expected`);let r=0,i=new I,a=w(2,0),o=0,s=u(4,NaN),c=new p,l=null,d=null;for(;t.nextToken()!==4;){for(t.currentToken()!==2&&n(`failed to parse multipoint: array is expected, multipoint vertices consist of arrays of cooridinates`),o=0;t.nextToken()!==4;)o===4&&n(`failed to parse multipoint: each vertex array has to have at most 4 elements`),s[o++]=q(t);o<2&&n(`failed to parse multipoint: each vertex array has to have at least 2 elements`),A(s[0],s[1])||n(`failed to parse multipoint: x and y must be finite`),a.size()===r*2&&a.resize(J(r)),a.writePoint2D(2*r,c.setCoords(s[0],s[1])),l&&l.size()===r&&l.resize(Y(r)),o>2?(l||=w(r+1,NaN),l.write(r,s[2])):l&&l.write(r,NaN),d&&d.size()===r&&d.resize(Y(r)),o>3?(d||=w(r+1,NaN),d.write(r,s[3])):d&&d.write(r,NaN),r++}if(r){let e=i.getImpl();e.setAttributeStreamRef(0,a),e.resizeNoInit(r),e.notifyModifiedFlags(65535)}return{geometry:i,as:l,bs:d}}function me(e,t){t.currentToken()!==2&&n(`failed to parse array of IDs: array of array of integers is expected`);let r=j(2,0),i=0,a=-1;for(;t.nextToken()!==4;){let e=i;r.size()===i&&r.resize(Y(i)),i++;let o=0;for(a===-1?a=+(t.currentToken()===2):a===1&&t.currentToken()!==2&&n(`failed to parse array of IDs: array of array of integers is expected`),a===0&&(r.size()===i&&r.resize(Y(i)),r.write(i,he(t)),o++,i++);t.nextToken()!==4;)r.size()===i&&r.resize(Y(i)),r.write(i,he(t)),o++,i++;if(r.write(e,o),a===0)break}return r.resize(i),r}function q(e){let t=e.currentToken();if(t===10||t===6&&e.currentString()===`NaN`)return NaN;{let t=e.currentDoubleValue();return Number.isNaN(t)?NaN:t}}function he(e){return e.currentInt32Value()}function ge(e,n){if(e.isEmpty())return;let r=j(2,0),i=e.getGeometryType(),a=0;i===I.type?a=1:i===P.type||i===N.type?a=e.getPathCount():t(`not implemented`),r.resize(e.getPointCount(),0);let o=0;for(let s=0;s<a;++s){let a=n.read(o);o++;let c=o+a,l=0,u=0;i===I.type?l=e.getPointCount():i===P.type||i===N.type?(l=e.getPathSize(s),u=e.getPathStart(s)):t(`not implemented`);for(let e=0,t=Math.min(a,l);e<t;++e)r.write(u,n.read(o)),o++,u++;o=c}e.getImpl().setAttributeStreamRef(3,r)}function J(e){let t=Math.trunc((e+1)*3/2)*2;return t<8?t=8:t<32&&(t=32),t}function Y(e){let t=Math.trunc((e+1)*3/2);return t<4?t=4:t<16&&(t=16),t}function _e(e,t,n,r,a){a>=r.size()&&i(`Byte_buffer out of range access`),e.m_bits=0,e.m_rotation=0,e.m_cosr=1,e.m_sinr=0,e.setStartXY(t),e.setEndXY(n);let o=p.getNAN();o.x=r.readDouble(a),o.y=r.readDouble(a+8);let s=r.readInt32(a+16);if(s&1)return e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.assign(o),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,z(e),!1;let c=!!(s&64),l=!!(s&128),u=!!(s&32),d=!!(s&8),f=!!(s&16),m=t.equals(n);return c&&!m&&(c=!1,u=!0),u&&m&&(c=!0,u=!1,o.setCoords(0,0)),c||(l?u?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_interior.assign(o),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0):(e.constructCircularArcThreePoint(t,n,o),m&&d===e.isClockwise()&&e.reverse()):u?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,z(e),e.queryCoord2D(.5,e.m_interior)):B(e,t,n,o,d,f)),c&&(e.m_center.assign(t),e.m_startAngle=o.x,e.m_sweepAngle=o.y,V(e,NaN,d,f),e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.setCoordsPoint2D(t)),e.setProjectionBehavior(0),z(e),!0}function ve(e,t,n,r,i){e.m_bits=0,e.m_center.x=r.readDouble(i),e.m_center.y=r.readDouble(i+8),e.m_rotation=r.readDouble(i+16),e.m_semiMajorAxis=r.readDouble(i+24),e.m_minorMajorRatio=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y;let a=r.readInt32(i+40);if(a&1)return!1;let o=!!(a&64),s=!!(a&128),c=!!(a&512),l=!!(a&1024),u=!!(a&2048),d=!!(a&4096);return(c||l)&&!s&&(o=!0),s&&!t.equals(n)?(s=!1,o=!0):o&&t.equals(n)&&(s=!0,o=!1),s?(e.m_center.assign(t),e.m_startAngle=e.m_center.x,e.m_sweepAngle=e.m_center.y,V(e,NaN,u,d),e.m_semiMajorAxis=0,e.m_interior.setCoordsPoint2D(t)):o?(e.m_center.setNAN(),e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,z(e),e.queryCoord2D(.5,e.m_interior)):e.constructEllipticArcEndPointsCenter(t,n,e.m_semiMajorAxis,e.m_minorMajorRatio,e.m_rotation,!d,u,e.m_center),e.setProjectionBehavior(1),z(e),!0}function ye(e,t,n,i,a){return r(a+32<=i.size()),e.m_cp=m(p,2),e.m_cp[0].x=i.readDouble(a),e.m_cp[0].y=i.readDouble(a+8),e.m_cp[1].x=i.readDouble(a+16),e.m_cp[1].y=i.readDouble(a+24),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function be(e,t,n,r,i){return e.m_cp.x=r.readDouble(i),e.m_cp.y=r.readDouble(i+8),e.m_weights[0]=r.readDouble(i+16),e.m_weights[1]=r.readDouble(i+24),e.m_weights[2]=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function xe(e,t,r,i,a){let o={segFlag:0,toPointSz:0},s=i.currentToken();s=i.nextToken();let c=i.currentString(),l=c[0];for((c.length!==1||l!==`a`&&l!==`b`&&l!==`c`&&l!==`n`&&l!==`q`)&&n(`failed to parse curve: expecting "a", "b", "n", "q", or "c"`),s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for curve parameters`),s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for to point`),o.toPointSz=0;i.nextToken()!==4;)o.toPointSz===4&&n(`failed to parse curve: vertex array cannot have more than 4 elements`),t[o.toPointSz++]=q(i);o.toPointSz<2&&n(`failed to parse curve: vertex array must have at least 2 elements`);let u=p.construct(t[0],t[1]),d=p.getNAN(),f=-1,m=-1,h=!1,g=NaN,_=NaN,v=NaN,y=[p.getNAN(),p.getNAN(),p.getNAN()],b=p.getNAN();if(l===`a`){s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for center point`),s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for center point`),d.setCoords(e,t),s=i.nextToken(),f=i.currentInt32Value(),s=i.nextToken(),m=i.currentInt32Value(),s=i.nextToken(),s===4?h=!0:(h=!1,g=q(i),s=i.nextToken(),_=q(i),s=i.nextToken(),v=q(i),s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`)),o.segFlag=4}else if(l===`b`){for(let e=0;e<2;e++){s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for control point`),s=i.nextToken();let t=q(i);s=i.nextToken();let r=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for control point`),y[e].setCoords(t,r)}s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=2}else if(l===`n`){{s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for control point`),s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for control point`),y[0].setCoords(e,t)}s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken();let r=q(i);y[1].setCoords(e,t),y[2].setCoords(r,r),s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=8}else if(l===`q`){for(let e=0;e<1;e++){s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for control point`),s=i.nextToken();let t=q(i);s=i.nextToken();let r=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for control point`),y[e].setCoords(t,r)}s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=16}else{s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for interior point`),s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for interior point`),b.setCoords(e,t),s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=4}return s=i.nextToken(),s!==3&&n(`failed to parse curve: end object is expected for curve`),l===`a`?(e.createEllipticArc(),h?Se(e.get(),r,u,d,!0,f,m):Ce(e.get(),r,u,d,f,m,g,_,v)):l===`b`?(e.createCubicBezier(),we(e.get(),r,u,y)):l===`n`?(e.createQuadraticRationalBezier(),Te(e.get(),r,u,y[0],y[1].x,y[1].y,y[2].x)):l===`q`?(e.createQuadraticBezier(),e.get().construct(r,y[0],u)):(e.createEllipticArc(),Se(e.get(),r,u,b,!1,-1,-1)),o}function Se(e,t,n,r,i,a,o){e.dropAllAttributes();let s=new K({sz:20,buffer:new ArrayBuffer(20)}),c=0;s.writeDouble(c,r.x),c+=8,s.writeDouble(c,r.y),c+=8;let l=0;i?(o||(l|=8),a&&(l|=16)):l|=128,s.writeInt32(c,l),c+=4,_e(e,t,n,s,0)}function Ce(e,t,n,r,i,a,o,s,c){e.dropAllAttributes();let l=new K({sz:44,buffer:new ArrayBuffer(44)}),u=0;l.writeDouble(u,r.x),u+=8,l.writeDouble(u,r.y),u+=8,l.writeDouble(u,o),u+=8,l.writeDouble(u,s),u+=8,l.writeDouble(u,c),u+=8;let d=0;a||(d|=2048),i&&(d|=4096),l.writeInt32(u,d),u+=4,ve(e,t,n,l,0)}function we(e,t,n,r){e.dropAllAttributes();let i=new K({sz:32,buffer:new ArrayBuffer(32)}),a=0;i.writeDouble(a,r[0].x),a+=8,i.writeDouble(a,r[0].y),a+=8,i.writeDouble(a,r[1].x),a+=8,i.writeDouble(a,r[1].y),a+=8,ye(e,t,n,i,0)}function Te(e,t,n,r,i,a,o){e.dropAllAttributes();let s=new K({sz:40,buffer:new ArrayBuffer(40)}),c=0;s.writeDouble(c,r.x),c+=8,s.writeDouble(c,r.y),c+=8,s.writeDouble(c,i),c+=8,s.writeDouble(c,a),c+=8,s.writeDouble(c,o),c+=8,be(e,t,n,s,0)}function Ee(e,t,n,r,i){let a=e.getGeometryType();if(a===o.enumEllipticArc)return De(e,t,n,r,i);if(a===o.enumBezier)return Oe(e,t,n,r,i);if(a===o.enumRationalBezier2)return ke(e,t,n,r,i);if(a===o.enumBezier2){let a=new L;return a.constructFromQuadraticSegment(e),Oe(a,t,n,r,i)}s(``)}function De(e,t,n,i,a){r(!R(e));let o=e.getEndXY(),s=e.hasAttribute(1)&&!t,c=e.hasAttribute(2)&&!n,l=NaN,u=NaN;if(s&&(l=e.getEndAttributeAsDbl(1,0)),c&&(u=e.getEndAttributeAsDbl(2,0)),e.isDegenerateToLine()||e.isDegenerate(0))return X(s,c,o.x,o.y,l,u,i,a),!0;let d=e.projectionBehavior()===0,f=d?e.isClosed():!1;if(d&&!f)a.startObject(),a.addFieldName(`c`),a.startArray(),X(s,c,o.x,o.y,l,u,i,a),Z(e.m_interior.x,e.m_interior.y,17,a),a.endArray(),a.endObject();else if(d){a.startObject(),a.addFieldName(`a`),a.startArray(),X(s,c,o.x,o.y,l,u,i,a),Z(e.m_center.x+0,e.m_center.y+0,17,a);let t=!e.isMajor();a.addInt32(+!!t);let n=e.isClockwise();a.addInt32(+!!n),a.endArray(),a.endObject()}else{a.startObject(),a.addFieldName(`a`),a.startArray(),X(s,c,o.x,o.y,l,u,i,a);let t=e;Z(t.m_center.x,t.m_center.y,17,a);let n=!t.isMajor();a.addInt32(+!!n);let r=t.isClockwise();a.addInt32(+!!r),a.addDouble(t.m_rotation,17),a.addDouble(t.m_semiMajorAxis,17),a.addDouble(t.m_minorMajorRatio,17),a.endArray(),a.endObject()}return!1}function Oe(e,t,n,r,i){let a=e.getEndXY(),o=e.hasAttribute(1)&&!t,s=e.hasAttribute(2)&&!n,c=NaN,l=NaN;return o&&(c=e.getEndAttributeAsDbl(1,0)),s&&(l=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName(`b`),i.startArray(),X(o,s,a.x,a.y,c,l,r,i),Z(e.m_cp[0].x,e.m_cp[0].y,r,i),Z(e.m_cp[1].x,e.m_cp[1].y,r,i),i.endArray(),i.endObject(),!1}function ke(e,t,n,r,i){let a=e.getEndXY(),o=e.hasAttribute(1)&&!t,s=e.hasAttribute(2)&&!n,c=NaN,l=NaN;o&&(c=e.getEndAttributeAsDbl(1,0)),s&&(l=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName(`n`),i.startArray(),X(o,s,a.x,a.y,c,l,r,i),Z(e.m_cp.x,e.m_cp.y,r,i);let u=r;return i.addDouble(e.m_weights[0],u),i.addDouble(e.m_weights[1],u),i.addDouble(e.m_weights[2],u),i.endArray(),i.endObject(),!1}function X(e,t,n,r,i,a,o,s){s.startArray(),s.addDouble(n,o),s.addDouble(r,o),e&&s.addDouble(i,o),t&&s.addDouble(a,o),s.endArray()}function Z(e,t,n,r){r.startArray(),r.addDouble(e,n),r.addDouble(t,n),r.endArray()}class Ae{getOperatorType(){return 10405}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,r,i,a){je(e,t,n,r)}exportSpatialReference(e,t,n,i){r(0)}exportProjectionTransformation(e,t,n,i){r(0)}exportDatumTransformation(e,t,n,i){r(0)}static geometryTypeToString(e){return r(0),``}}function je(e,n,i,a,s){if(n||i){if(a.startObject(),n!==null)switch(n.getGeometryType()){case o.enumPolygon:Me(!0,e,n,a);break;case o.enumPolyline:Me(!1,e,n,a);break;case o.enumMultiPoint:Ne(e,n,a);break;case o.enumPoint:Pe(e,n,a);break;case o.enumEnvelope:Fe(e,n,a);break;case o.enumMultipatch:r(0);break;default:t(`exportToJSON`)}i!==null&&(a.addFieldName(`spatialReference`),Le(e,i,a)),a.endObject()}}function Me(e,t,n,i){let a=n.getImpl(),o=!!(t&2),c=!!(t&4),l=!!(t&8),u=a.hasAttribute(1)&&!o,d=a.hasAttribute(2)&&!c,f=a.hasAttribute(3)&&!l,p=a.hasNonLinearSegments();u&&(i.addFieldName(`hasZ`),i.addBool(!0)),d&&(i.addFieldName(`hasM`),i.addBool(!0)),e?p?i.addFieldName(`curveRings`):i.addFieldName(`rings`):p?i.addFieldName(`curvePaths`):i.addFieldName(`paths`);let m=null,h=[];if(n.isEmpty())i.startArray(),i.endArray();else{let e=17-(31&t>>13);i.startArray();let r=n.getPathCount(),l=0,g=a.getAttributeStreamRef(0),_=null,v=null,y=null,b=new F,x=null,S=null,C=null;p&&(x=a.getSegmentFlagsStreamRef(),S=a.getSegmentIndexStreamRef(),C=a.getSegmentDataStreamRef()),u&&(_=a.getAttributeStreamRef(1)),d&&(v=a.getAttributeStreamRef(2)),f&&(y=a.getAttributeStreamRef(3),m=M(3,0));for(let t=0;t<r;t++){i.startArray(),f&&h.push(0);let r=n.getPathEnd(t);if(l===r){i.endArray();continue}let a=n.isClosedPath(t),p=g.read(2*l),w=g.read(2*l+1),T=u?_.read(l):NaN,E=d?v.read(l):NaN,D=f?y.read(l):0;Re(u,d,p,w,T,E,e,i);let O=1;f&&(m.add(D),h[h.length-1]++);let k=p,A=w,j=T,M=E,N=D,P=!1,F=0,I=NaN,L=NaN,R=0;for(let t=l+1,n=l,z=a?r+1:r;t<z;t++,n++){let a=x===null?1:x.read(n)&31,l,z;if(t<r?(l=g.read(2*t),z=g.read(2*t+1),u&&(I=_.read(t)),d&&(L=v.read(t)),f&&(R=y.read(t))):(l=k,z=A,I=j,L=M,R=N),a!==1){P=!0,a===4?b.createEllipticArc():a===2?b.createCubicBezier():a===16?b.createQuadraticBezier():a===8?b.createQuadraticRationalBezier():s(`JSON export.unsupported curve`);let t=b.get(),r=S.read(n);t.setStartXYCoords(p,w),t.setEndXYCoords(l,z),u&&(t.setStartAttribute(1,0,T),t.setEndAttribute(1,0,I)),d&&(t.setStartAttribute(2,0,E),t.setEndAttribute(2,0,L)),t.readFromBufferStream(C,r),Ee(b.get(),o,c,e,i)&&F++}else Re(u,d,l,z,I,L,e,i);f&&(m.add(R),h[h.length-1]++),O++,p=l,w=z,T=I,E=L,D=R}(!P||F!==0)&&(O<2&&F<1&&(Re(u,d,p,w,T,E,e,i),O++,f&&(m.add(D),h[h.length-1]++)),a&&O<3&&F<2&&(Re(u,d,k,A,j,M,e,i),O++,p=k,w=A,T=j,E=M,D=N,f&&(m.add(N),h[h.length-1]++))),i.endArray(),l=r}i.endArray()}if(f){i.addFieldName(`ids`),i.startArray();let e=0;for(let t=0,n=h.length;t<n;++t){let n=h[t];r(n===0||m!==null&&e+n<=m.size()),i.startArray();for(let t=0;t<n;++t)i.addInt32(m.read(e)),e++;i.endArray()}i.endArray()}}function Ne(e,t,n){let i=t.getImpl(),a=i.hasAttribute(1)&&!(e&2),o=i.hasAttribute(2)&&!(e&4),s=i.hasAttribute(3)&&!(e&8);a&&(n.addFieldName(`hasZ`),n.addBool(!0)),o&&(n.addFieldName(`hasM`),n.addBool(!0)),n.addFieldName(`points`);let c=t.getPointCount();if(t.isEmpty())n.startArray(),n.endArray();else{let t=17-(31&e>>13);n.startArray();let r=i.getAttributeStreamRef(0),s=null,l=null;a&&(s=i.getAttributeStreamRef(1)),o&&(l=i.getAttributeStreamRef(2));for(let e=0;e<c;e++){let i=r.read(2*e),c=r.read(2*e+1),u=NaN,d=NaN;a&&(u=s.read(e)),o&&(d=l.read(e)),Re(a,o,i,c,u,d,t,n)}n.endArray()}if(s){let e=null;i.isEmpty()||(e=i.getAttributeStreamRef(3)),r(c===0||e!==null&&e.size()>=c),n.addFieldName(`ids`),n.startArray();for(let t=0;t<c;t++)n.addInt32(e.read(t));n.endArray()}}function Pe(e,t,n){let r=t.hasAttribute(1)&&!(e&2),i=t.hasAttribute(2)&&!(e&4),a=t.hasAttribute(3)&&!(e&8);if(t.isEmpty()){n.addFieldName(`x`),n.addNull(),n.addFieldName(`y`),n.addNull(),r&&(n.addFieldName(`z`),n.addNull()),i&&(n.addFieldName(`m`),n.addNull()),a&&(n.addFieldName(`id`),n.addInt32(0));return}let o=17-(31&e>>13);n.addFieldName(`x`),n.addDouble(t.getX(),o),n.addFieldName(`y`),n.addDouble(t.getY(),o),r&&(n.addFieldName(`z`),n.addDouble(t.getZ(),o)),i&&(n.addFieldName(`m`),n.addDouble(t.getM(),o)),a&&(n.addFieldName(`id`),n.addInt32(t.getID()))}function Fe(e,t,n){let r=t.hasAttribute(1)&&!(e&2),i=t.hasAttribute(2)&&!(e&4),a=t.hasAttribute(3)&&!(e&8);if(t.isEmpty()){n.addFieldName(`xmin`),n.addNull(),n.addFieldName(`ymin`),n.addNull(),n.addFieldName(`xmax`),n.addNull(),n.addFieldName(`ymax`),n.addNull(),r&&(n.addFieldName(`zmin`),n.addNull(),n.addFieldName(`zmax`),n.addNull()),i&&(n.addFieldName(`mmin`),n.addNull(),n.addFieldName(`mmax`),n.addNull()),a&&(n.addFieldName(`idmin`),n.addInt32(0),n.addFieldName(`idmax`),n.addInt32(0));return}let o=17-(31&e>>13);if(n.addFieldName(`xmin`),n.addDouble(t.getXMin(),o),n.addFieldName(`ymin`),n.addDouble(t.getYMin(),o),n.addFieldName(`xmax`),n.addDouble(t.getXMax(),o),n.addFieldName(`ymax`),n.addDouble(t.getYMax(),o),r){let e=t.queryInterval(1,0);n.addFieldName(`zmin`),n.addDouble(e.vmin,o),n.addFieldName(`zmax`),n.addDouble(e.vmax,o)}if(i){let e=t.queryInterval(2,0);n.addFieldName(`mmin`),n.addDouble(e.vmin,o),n.addFieldName(`mmax`),n.addDouble(e.vmax,o)}if(a){let e=t.queryInterval(3,0);n.addFieldName(`idmin`),n.addInt32(e.vmin),n.addFieldName(`idmax`),n.addInt32(e.vmax)}}function Ie(e,t,r){r.startObject();let i=t.getID();i<=0&&n(`cannot export unit that has no valid WKID`),r.addFieldName(`uwkid`),r.addInt32(i),r.endObject()}function Le(e,t,n){n.startObject();let r=0;t.isCustomWkid()||(r=t.getOldID());let i=0,a=t.getVCS();if(a!==null&&(a.isCustomWkid()||(i=a.getOldID()),i<=0&&(r=0)),r>0){n.addFieldName(`wkid`),n.addInt32(r);let e=t.getLatestID();if(e>0&&e!==r&&(n.addFieldName(`latestWkid`),n.addInt32(e)),i>0){n.addFieldName(`vcsWkid`),n.addInt32(i);let e=t.getLatestVerticalID();e!==i&&(n.addFieldName(`latestVcsWkid`),n.addInt32(e))}}if(t.getCoordinateSystemType()===0)n.addFieldName(`wkid`),n.addNull(),t.getUnit()!==null&&(n.addFieldName(`unit`),Ie(e,t.getUnit(),n));else if(r<=0||e&1){let r=``;e&64&&(r=t.getText2(),n.addFieldName(`wkt2`),n.addString(r));let i=t.getText();i!==r&&(n.addFieldName(`wkt`),n.addString(i))}if(e&16){let e=new x;t.queryPrecisionDescriptor(e),n.addFieldName(`xyTolerance`),n.addDouble(e.getTolerance(0)),n.addFieldName(`zTolerance`),n.addDouble(e.getTolerance(1)),n.addFieldName(`mTolerance`),n.addDouble(e.getTolerance(2)),n.addFieldName(`falseX`),n.addDouble(e.getFalseX()),n.addFieldName(`falseY`),n.addDouble(e.getFalseY()),n.addFieldName(`xyUnits`),n.addDouble(e.getGridUnitsXY()),n.addFieldName(`falseZ`),n.addDouble(e.getFalseZ()),n.addFieldName(`zUnits`),n.addDouble(e.getGridUnitsZ()),n.addFieldName(`falseM`),n.addDouble(e.getFalseM()),n.addFieldName(`mUnits`),n.addDouble(e.getGridUnitsM())}n.endObject()}function Re(e,t,n,r,i,a,o,s){s.startArray(),s.addDouble(n,o),s.addDouble(r,o),e&&s.addDouble(i,o),t&&s.addDouble(a,o),s.endArray()}const Q={s_a:97,s_A:65,s_asterisk:42,s_b:98,s_backslash:92,s_beginArray:91,s_beginObject:123,s_colon:58,s_period:46,s_comma:44,s_doubleQuote:34,s_endArray:93,s_endObject:125,s_e:101,s_E:69,s_f:102,s_F:70,s_forwardslash:47,s_minus:45,s_plus:43,s_n:110,s_N:78,s_r:114,s_t:116,s_u:117,s_zero:48,s_nine:57};class ze{m_jsonString;m_endToken;m_startToken;m_currentTokenType;m_bHasEscapes;m_functionStack=[];m_pushPositions=[];m_utf8Decoder=new TextDecoder(`utf-8`,{fatal:!0});m_prepSubstr;m_getCurrentSubstr;m_stepOverChar;m_peekChar;m_get;m_increment;m_eof;constructor(e){e===void 0?(this.m_startToken=2**53-1,this.m_endToken=0,this.m_currentTokenType=0,this.m_functionStack.push(()=>this.accept_()),this.m_jsonString=null,this.m_bHasEscapes=!1):e.jsonString?this.resetParserFromString(e.jsonString):e.jsonStream?s(`streaming json parsing not yet impl`):t(`invalid constructor parameter`)}prepSubstrString_(){}getCurrentSubstrString_(){return this.m_jsonString.slice(this.m_startToken,this.m_endToken)}stepOverCharString_(){this.m_endToken++}peekCharString_(){return this.m_jsonString.charCodeAt(this.m_endToken)}getString_(e){let t=this.m_jsonString?.slice(this.m_startToken,this.m_startToken+e-1);return this.m_endToken+=e-1,{s:t,bDone:this.m_endToken>=this.m_jsonString.length}}incrementString_(){this.m_endToken++}eofString_(){return this.m_endToken>=this.m_jsonString.length}setStringFunctions_(){this.m_prepSubstr=this.prepSubstrString_,this.m_getCurrentSubstr=this.getCurrentSubstrString_,this.m_stepOverChar=this.stepOverCharString_,this.m_peekChar=this.peekCharString_,this.m_get=this.getString_,this.m_increment=this.incrementString_,this.m_eof=this.eofString_}setStreamFunctions_(){s(`streaming json parsing not yet impl`)}reset_(){this.m_jsonString=null,this.m_endToken=0,this.m_startToken=2**53-1,this.m_currentTokenType=0,this.m_bHasEscapes=!1,this.m_functionStack.length=0,this.m_functionStack.push(()=>this.start_()),this.m_pushPositions.length=0}resetParserFromString(e){this.reset_(),this.setStringFunctions_(),this.m_jsonString=e}resetParserFromStream(e){s(`streaming json parsing not yet impl`)}resetToPosition(e){return this.m_jsonString?(this.m_endToken=e,this.m_startToken=Number.MAX_VALUE,this.m_currentTokenType=0,this.m_functionStack.length=0,e>=this.m_jsonString.length?(this.m_functionStack.push(()=>this.accept_()),!1):(this.m_functionStack.push(()=>this.start_()),!0)):!1}nextToken(){return this.m_functionStack.at(-1)(),this.m_currentTokenType}currentToken(){return this.m_currentTokenType}currentTokenStartIndex(){return this.m_startToken}currentTokenEndIndex(){return this.m_endToken}currentText(){return r(0),``}childrenAsString(){return r(0),``}skipChildren(){this.skipChildren_()}skipChildren_(){if(this.m_currentTokenType===1){let e=1;do this.m_currentTokenType=this.nextToken(),this.m_currentTokenType===1?e++:this.m_currentTokenType===3&&e--;while(this.m_currentTokenType!==3||e!==0);return}if(this.m_currentTokenType===2){let e=1;do this.m_currentTokenType=this.nextToken(),this.m_currentTokenType===2?e++:this.m_currentTokenType===4&&e--;while(this.m_currentTokenType!==4||e!==0);return}}currentTerminalAsString_(){switch(this.m_currentTokenType){case 7:case 8:case 9:return this.m_getCurrentSubstr().slice(0,this.m_endToken-this.m_startToken);case 10:return`null`;case 11:return`true`;case 12:return`false`}n(`invalid token`)}toUTF8_(e,t){let n=0,r=e;for(;t.charCodeAt(r)===Q.s_backslash&&t.charCodeAt(r+1)===Q.s_u;)n++,r+=6;r=e;let i=new Uint8Array(n),a=0;for(;t.charCodeAt(r)===Q.s_backslash&&t.charCodeAt(r+1)===Q.s_u;)i[a++]=Number.parseInt(t.slice(r+2,r+6),16),r+=6;return{u8s:this.m_utf8Decoder.decode(i),end:r}}unquoteCurrentString_(){let e=``,t=1,n=this.m_endToken-this.m_startToken-1,r=0,i=this.m_getCurrentSubstr();for(let a=t;a<n;a++)if(i.charCodeAt(a)!==Q.s_backslash)r++;else{switch(r>0&&(e+=i.slice(t,t+r)),i.charCodeAt(++a)){case Q.s_doubleQuote:e+=`"`;break;case Q.s_u:{let{u8s:t,end:n}=this.toUTF8_(a-1,i);a=n-1,e+=t;break}case Q.s_backslash:e+=`\\`;break;case Q.s_forwardslash:e+=`/`;break;case Q.s_b:e+=`\b`;break;case Q.s_f:e+=`\f`;break;case Q.s_n:e+=`
|
|
2
|
+
import{constructFromFlatGeometry as e}from"../../../chunks/FlatGeometry.js";import{d as t,b as n,g as r,r as i,q as a,G as o,a as s}from"../../../chunks/Geometry.js";import{aL as c,i as l,c as u,f as d,aM as f,P as p,d as m}from"../../../chunks/Point2D.js";import{q as h,b as g,p as _,a_ as v,c as y,e as b,a as x,f as S,a$ as C}from"../../../chunks/UnitFactory.js";import{a2 as w,a5 as T,P as E,E as D,a0 as O,a1 as k,a6 as A,a7 as j,X as M}from"../../../chunks/Envelope.js";import{P as N,a as P,S as F,M as I,I as L,a5 as R,a6 as z,a7 as B,a8 as V,a9 as H}from"../../../chunks/MultiPathImpl.js";import{convertGeometryxToFlat as U,convertFlatToGeometryJSON as W,convertGeometryToFlat as ee}from"../../FlatGeometry.js";import te from"../../SpatialReference.js";import"./initNoPeFactory.js";import{isPoint as ne,isMultipoint as re,isPolyline as ie,isPolygon as ae}from"../../support/jsonTypeUtils.js";function oe(){if(this.m_i===-1)return this.m_i=0,{value:{m_token:1,m_value:null},done:!1};if(this.m_i<this.m_keys.length){let e=this.m_bReturnKey,t=Math.trunc(this.m_i);return this.m_bReturnKey=!this.m_bReturnKey,this.m_i+=.5,e?{value:{m_token:5,m_value:this.m_keys[t]},done:!1}:{value:{m_token:6,m_value:this.m_o[this.m_keys[t]]},done:!1}}return{value:{m_token:3,m_value:null},done:!0}}function se(){if(this.m_i===-1)return this.m_i=0,{value:{m_token:2,m_value:null},done:!1};if(this.m_i<this.m_a.length){let e={value:{m_token:6,m_value:this.m_a[this.m_i++]},done:!1};return this.m_strict||e.value.m_value===void 0&&(e.value.m_value=NaN),e}return{value:{m_token:4,m_value:null},done:!0}}class ce{m_iteratorStack;m_nextFlatToken;m_currentToken=0;m_currentValue;m_options;createJSONObjectIterator(e){return{m_iteratorType:`object`,m_o:e,m_keys:this.m_options.strict?Object.keys(e):Object.keys(e).filter(t=>e[t]!==void 0),m_i:-1,m_bReturnKey:!0,next:oe}}createJSONArrayIterator(e){return{m_iteratorType:`array`,m_strict:this.m_options.strict,m_i:-1,m_a:e,next:se}}constructor(e,t){this.m_options=t?{...t}:{strict:!0};let n=e;this.m_iteratorStack=[n instanceof Array?this.createJSONArrayIterator(n):this.createJSONObjectIterator(n)],this.m_nextFlatToken={m_value:null,m_token:0}}nextToken(){if(this.m_iteratorStack.length===0)return this.m_currentToken=0;switch(this.m_nextFlatToken=this.m_iteratorStack.at(-1).next().value,this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_currentToken=1;case 3:return this.m_iteratorStack.pop(),this.m_currentToken=3;case 2:return this.m_currentToken=2;case 4:return this.m_iteratorStack.pop(),this.m_currentToken=4;case 5:return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=5;case 6:if(this.m_nextFlatToken.m_value instanceof Array)return this.m_iteratorStack.push(this.createJSONArrayIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(this.m_nextFlatToken.m_value instanceof Object)return this.m_iteratorStack.push(this.createJSONObjectIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(typeof this.m_nextFlatToken.m_value==`number`)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=Number.isSafeInteger(this.m_currentValue)&&this.m_currentValue>=c()&&this.m_currentValue<=l()?8:7;if(typeof this.m_nextFlatToken.m_value==`string`)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=6;if(typeof this.m_nextFlatToken.m_value==`boolean`)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=this.m_nextFlatToken.m_value?11:12;if(typeof this.m_nextFlatToken.m_value==`object`)return this.m_currentValue=null,this.m_currentToken=10;t(`unrecognized json element type`)}t(`unrecognized json element type`)}currentToken(){return this.m_currentToken}skipChildren(){if(this.m_iteratorStack.length!==0)switch(this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=3,this.m_currentToken=3;return;case 2:this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=4,this.m_currentToken=4;return}}currentString(){return this.m_currentToken!==6&&this.m_currentToken!==5&&n(`invalid token`),this.m_currentValue}currentDoubleValue(){return this.m_currentToken!==7&&this.m_currentToken!==8&&n(`invalid token`),this.m_currentValue}currentInt32Value(){return this.m_currentToken!==8&&n(`invalid token`),this.m_currentValue}currentInt64Value(){return r(0),0n}currentBoolValue(){return this.m_currentToken!==12&&this.m_currentToken!==11&&n(`invalid token`),this.m_currentValue}isError(){return 0}}class G{m_pendingKey=null;m_acceptedObject=null;m_currentObject=[];reset(){this.m_pendingKey=null,this.m_acceptedObject=null,this.m_currentObject.length=0}startObject(){let e={};this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}startArray(){let e=[];this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}endObject(){this.m_acceptedObject=this.m_currentObject.at(-1),this.m_currentObject.pop()}endArray(){this.m_currentObject.pop()}addFieldName(e){this.m_pendingKey=e}addValue_(e){this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):this.m_currentObject.at(-1).push(e)}addString(e){this.addValue_(e)}addDouble(e,t){this.addValue_(e)}addInt64(e){r(0)}addInt32(e){this.addValue_(e)}addBool(e){this.addValue_(e)}addNull(){this.addValue_(null)}getObject(){return this.m_acceptedObject}}class K{m_buffer=null;m_view=null;m_sz=0;m_offset=0;m_bOwnsBuffer=!0;m_bLittleEndian=!0;m_element;m_elementBytes;m_elementView;m_elementDouble;m_elementFloat;m_elementInt64;m_elementInt32;m_elementInt16;constructor(e){if(this.m_element=new ArrayBuffer(8),this.m_elementBytes=new Uint8Array(this.m_element),this.m_elementView=new DataView(this.m_element),this.m_elementDouble=new Float64Array(this.m_element),this.m_elementFloat=new Float32Array(this.m_element),this.m_elementInt64=new BigInt64Array(this.m_element),this.m_elementInt32=new Int32Array(this.m_element),this.m_elementInt16=new Int16Array(this.m_element),e.sz!==void 0){if(this.m_sz=e.sz,e.buffer){this.m_sz<0&&i(`size out of range`),this.m_buffer=e.buffer,this.m_offset=e.offset===void 0?0:e.offset,this.m_view=e.offset===void 0?new DataView(this.m_buffer):new DataView(e.buffer,e.offset,e.sz),this.m_bOwnsBuffer=!1,this.m_bLittleEndian=!0;return}this.m_sz<0&&i(`size out of range`),this.m_sz>0&&(this.m_buffer=new ArrayBuffer(this.m_sz),this.m_view=new DataView(this.m_buffer));return}if(e.move){this.m_sz=e.move.m_sz,this.m_buffer=e.move.m_buffer,this.m_view=e.move.m_view,this.m_bOwnsBuffer=e.move.m_bOwnsBuffer,this.m_bLittleEndian=e.move.m_bLittleEndian,e.move.m_buffer=null,e.move.m_view=null,e.move.m_sz=0,e.move.m_bOwnsBuffer=!0;return}t(`unrecognized constructor options`)}swapBytesDouble(){this.doSwap()&&(this.m_elementDouble[0]=this.m_elementBytes[0]<<56|this.m_elementBytes[1]<<48|this.m_elementBytes[2]<<40|this.m_elementBytes[3]<<32|this.m_elementBytes[4]<<24|this.m_elementBytes[5]<<16|this.m_elementBytes[6]<<8|this.m_elementBytes[7])}swapBytesInt32(){this.doSwap()&&(this.m_elementInt32[0]=this.m_elementBytes[0]<<24|this.m_elementBytes[1]<<16|this.m_elementBytes[2]<<8|this.m_elementBytes[3])}getOffset(){return this.m_offset}assignMove(e){return this===e?this:(this.clear(),this.m_sz=e.m_sz,this.m_buffer=e.m_buffer,this.m_view=e.m_view,this.m_bOwnsBuffer=e.m_bOwnsBuffer,this.m_bLittleEndian=e.m_bLittleEndian,e.m_buffer=null,e.m_sz=0,e.m_bOwnsBuffer=!0,this)}doSwap(){return this.m_bLittleEndian!==(K.getNativeByteOrder()===1)}setNativeByteOrder(){this.m_bLittleEndian=K.getNativeByteOrder()===1}setOrder(e){this.m_bLittleEndian=e===1}getOrder(){return+!!this.m_bLittleEndian}getView(){return this.m_view||a(`buffer not defined`),this.m_view}static getNativeByteOrder(){return 1}clear(){this.m_buffer=null,this.m_sz=0,this.m_bOwnsBuffer=!0}size(){return this.m_sz}readDouble(e){return this.doSwap()?(this.m_elementDouble[0]=this.m_view.getFloat64(e,this.m_bLittleEndian),this.swapBytesDouble(),this.m_elementDouble[0]):this.m_view.getFloat64(e,this.m_bLittleEndian)}writeDouble(e,t){this.m_elementDouble[0]=t,this.swapBytesDouble(),this.m_view.setFloat64(e,this.m_elementDouble[0],this.m_bLittleEndian)}readInt32(e){return this.doSwap()?(this.m_elementInt32[0]=this.m_view.getInt32(e,this.m_bLittleEndian),this.swapBytesInt32(),this.m_elementInt32[0]):this.m_view.getInt32(e,this.m_bLittleEndian)}writeInt32(e,t){this.m_elementInt32[0]=t,this.swapBytesInt32(),this.m_view.setInt32(e,this.m_elementInt32[0],this.m_bLittleEndian)}getPtr(){return this.m_buffer}setSizeNoRealloc(e){r(e>=0&&e<=this.m_sz),this.m_sz=e}}function le(e,t,i,a,s,c){let l=!1,u=!1,d=!1,f=!1,p=!1,m=!1,h=!1,g=!1,_=!1,v=!1,y=!1,b=!1,x=!1,S=!1,C=!1,O=!1,k=!1,A=!1,j=!1,M=!1,N=!1,P=!1,F=!1,I=!1,L=NaN,R=NaN,z=NaN,B=NaN,V=0,H=NaN,U=NaN,W=NaN,ee=NaN,te=NaN,ne=NaN,re=NaN,ie=NaN,ae=0,oe=0,se=!1,ce=!1,G=null,K=null,le=null,ue=null,J=null;for(;i.nextToken()!==3;){let c=i.currentString();if(i.nextToken(),c===`spatialReference`){if(s&&!l){l=!0,i.currentToken()===1?ue=de(i):i.currentToken()!==10&&n(`failed to parse spatial reference: object or null is expected`);continue}}else if(a){if(c===`hasZ`){if(!u){u=!0,se=i.currentToken()===11;continue}}else if(c===`hasM`){if(!d){d=!0,ce=i.currentToken()===11;continue}}else if(c===`rings`){if(!p&&!m&&(e===o.enumUnknown||e===o.enumPolygon)){p=!0,{geometry:J,as:G,bs:K}=fe(!0,!1,t,i);continue}}else if(c===`curveRings`){if(!m&&(e===o.enumUnknown||e===o.enumPolygon)){m=!0,{geometry:J,as:G,bs:K}=fe(!0,!0,t,i);continue}}else if(c===`paths`){if(!h&&!g&&(e===o.enumUnknown||e===o.enumPolyline)){h=!0,{geometry:J,as:G,bs:K}=fe(!1,!1,t,i);continue}}else if(c===`curvePaths`){if(!g&&(e===o.enumUnknown||e===o.enumPolyline)){g=!0,{geometry:J,as:G,bs:K}=fe(!1,!0,t,i);continue}}else if(c===`points`){if(!_&&(e===o.enumUnknown||e===o.enumMultiPoint)){_=!0,{geometry:J,as:G,bs:K}=pe(t,i);continue}}else if(c===`ids`){if(!f){f=!0,le=me(t,i);continue}}else if(c===`x`){if(!v&&(e===o.enumUnknown||e===o.enumPoint)){v=!0,L=q(i);continue}}else if(c===`y`){if(!y&&(e===o.enumUnknown||e===o.enumPoint)){y=!0,R=q(i);continue}}else if(c===`z`){if(!b&&(e===o.enumUnknown||e===o.enumPoint)){b=!0,z=q(i);continue}}else if(c===`m`){if(!x&&(e===o.enumUnknown||e===o.enumPoint)){x=!0,B=q(i);continue}}else if(c===`id`){if(!S&&(e===o.enumUnknown||e===o.enumPoint)){S=!0,V=he(i);continue}}else if(c===`xmin`){if(!C&&(e===o.enumUnknown||e===o.enumEnvelope)){C=!0,H=q(i);continue}}else if(c===`ymin`){if(!O&&(e===o.enumUnknown||e===o.enumEnvelope)){O=!0,U=q(i);continue}}else if(c===`mmin`){if(!N&&(e===o.enumUnknown||e===o.enumEnvelope)){N=!0,re=q(i);continue}}else if(c===`zmin`){if(!j&&(e===o.enumUnknown||e===o.enumEnvelope)){j=!0,te=q(i);continue}}else if(c===`idmin`){if(!F&&(e===o.enumUnknown||e===o.enumEnvelope)){F=!0,ae=he(i);continue}}else if(c===`xmax`){if(!k&&(e===o.enumUnknown||e===o.enumEnvelope)){k=!0,W=q(i);continue}}else if(c===`ymax`){if(!A&&(e===o.enumUnknown||e===o.enumEnvelope)){A=!0,ee=q(i);continue}}else if(c===`mmax`){if(!P&&(e===o.enumUnknown||e===o.enumEnvelope)){P=!0,ie=q(i);continue}}else if(c===`zmax`){if(!M&&(e===o.enumUnknown||e===o.enumEnvelope)){M=!0,ne=q(i);continue}}else if(c===`idmax`){if(!I&&(e===o.enumUnknown||e===o.enumEnvelope)){I=!0,oe=he(i);continue}}else c===`materials`&&r(0)}i.skipChildren()}if(p||m||h||g||_){let e=null,t=null,n=J;se&&(J.addAttribute(1),e=G,e||=w(n.getPointCount(),NaN)),ce&&(J.addAttribute(2),t=se?K:G),le!=null&&J.addAttribute(3),se&&e!=null&&n.setAttributeStreamRef(1,e),ce&&t!=null&&n.setAttributeStreamRef(2,t),le!=null&&ge(n,le)}else if(v||y||x||b||S){T(L,R)||n(`failed to parse point: x and y must be finite or nan`),(Number.isNaN(R)||Number.isNaN(L))&&(L=NaN,R=NaN);let e=new E({x:L,y:R});b&&e.setZ(z),x&&e.setM(B),S&&e.setID(V),J=e}else if(C||O||k||A||j||M||N||P||F||I){(Number.isNaN(U)||Number.isNaN(W)||Number.isNaN(ee))&&(H=NaN);let e=new D({xmin:H,ymin:U,xmax:W,ymax:ee});j&&M&&e.setInterval(1,0,te,ne),N&&P&&e.setInterval(2,0,re,ie),F&&I&&e.setInterval(3,0,ae,oe),J=e}return{...J?{geom:J}:{},...ue?{sr:ue}:{}}}function ue(e){let t=!1;for(;e.nextToken()!==3;){let n=e.currentString();e.nextToken(),n===`uwkid`?t||(t=!0,e.currentToken()===8&&e.currentInt32Value()):e.skipChildren()}return null}function de(e){let t=!1,n=!1,r=!1,i=!1,a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!1,f=!1,p=!1,m=!1,C=!1,w=!1,T=!1,E=-1,D=-1,O=-1,k=-1,A=0,j=0,M=0,N=0,P=0,F=0,I=0,L=0,R=0,z=0,B=``,V=``,H=null;for(;e.nextToken()!==3;){let h=e.currentString();e.nextToken(),h===`wkid`?t||(t=!0,e.currentToken()===8&&(E=e.currentInt32Value())):h===`latestWkid`?n||(n=!0,e.currentToken()===8&&(D=e.currentInt32Value())):h===`wkt`?a||(a=!0,e.currentToken()===6&&(B=e.currentString())):h===`wkt2`?a||e.currentToken()===6&&(V=e.currentString()):h===`vcsWkid`?r||(r=!0,e.currentToken()===8&&(O=e.currentInt32Value())):h===`latestVcsWkid`?i||(i=!0,e.currentToken()===8&&(k=e.currentInt32Value())):h===`xyTolerance`?s||(s=!0,o=!0,A=e.currentDoubleValue()):h===`zTolerance`?c||(c=!0,o=!0,j=e.currentDoubleValue()):h===`mTolerance`?l||(l=!0,o=!0,M=e.currentDoubleValue()):h===`falseX`?u||(u=!0,o=!0,I=e.currentDoubleValue()):h===`falseY`?d||(d=!0,o=!0,L=e.currentDoubleValue()):h===`falseZ`?f||(f=!0,o=!0,R=e.currentDoubleValue()):h===`falseM`?p||(p=!0,o=!0,z=e.currentDoubleValue()):h===`xyUnits`?m||(m=!0,o=!0,N=e.currentDoubleValue()):h===`zUnits`?C||(C=!0,o=!0,P=e.currentDoubleValue()):h===`mUnits`?w||(w=!0,o=!0,F=e.currentDoubleValue()):h===`unit`?T||(T=!0,H=ue(e)):e.skipChildren()}k<=0&&O>0&&(k=O),O<=0&&k>0&&(O=k);let U=null,W=!0;if(B.length!==0&&(W=!1,h(B)&&(U=g(B))),!U&&V.length!==0&&(W=!1,h(V)&&(U=g(V))),!U&&D>0&&(W=!1,_(D)&&(k<=0||v())&&(U=y(D,k))),!U&&E>0&&(W=!1,_(E)&&(O<=0||v())&&(U=y(E,O))),W&&(U=b(H)),o&&U){let e=new x;U.queryPrecisionDescriptorWithoutFalseXY(e),s&&e.setTolerance(0,A),c&&e.setTolerance(1,j),l&&e.setTolerance(2,M),m&&u&&d&&e.setGridParams(I,L,N),C&&f&&e.setZParams(R,P),w&&p&&e.setMParams(z,F),U=S(U,e)}return U}function fe(e,t,r,i){i.currentToken()!==2&&n(`failed to parse multipath: array of array of vertices is expected`);let a=e?new N:new P,o=a,s=O(0),c=w(2,0),l=k(0),m=null,h=null,g=null,_=null,v=null,y=0,b=0,x=0,S=new F,C=p.getNAN(),T=0,E=0,D=+!!e;for(;i.nextToken()!==4;){i.currentToken()!==2&&n(`failed to parse multipath: ring/path array is expected`);let r=2,a=0,j=!0,M=0,N=0,P=p.getNAN(),F=u(4,NaN),I=u(4,NaN),L=!1;for(i.nextToken();i.currentToken()!==4;){if(t&&i.currentToken()===1)j&&n(`failed to parse multipath: starting vertex array is expected`),g||(g=k(T-1,1),_=O(T-1,-1),v=w(0)),L=!0,r=1,{segFlag:x,toPointSz:M}=xe(S,F,C,i);else{for(L=!1,i.currentToken()!==2&&n(`failed to parse multipath: array is expected, rings/paths vertices consist of arrays of coordinates`),M=0;i.nextToken()!==4;)M===4&&n(`failed to parse multipath: each vertex array has to have at most 4 elements`),F[M++]=q(i);M<2&&n(`failed to parse multipath: each vertex array has to have at least 2 elements`),A(F[0],F[1])||n(`failed to parse multipath: x and y must be finite`)}i.nextToken();do{if(c.size()===T*2&&c.resize(J(T)),c.writePoint2D(2*T,P.setCoords(F[0],F[1])),m&&m.size()===T&&m.resize(Y(T)),M>2?(m||=w(T+1,NaN),m.write(T,F[2])):m&&m.write(T,NaN),h&&h.size()===T&&h.resize(Y(T)),M>3?(h||=w(T+1,NaN),h.write(T,F[3])):h&&h.write(T,NaN),j)E++,s.add(T),l.add(D),j=!1,N=M,d(I,F,0,0,N);else if(g!==null){if(!L)g.add(1),_.add(-1);else{let e=H(x),t=v.size();v.resize(t+e),g.add(x),_.add(y),S.get().writeInBufferStream(v,y),y+=e,o.incCurveType(x,1),b++}}T++,a++,C.setCoords(F[0],F[1])}while(a<r&&i.currentToken()===4)}a!==0&&(e&&a>r&&M===N&&f(F,I,M)===0?(T--,a--):g!==null&&(g.add(1),_.add(-1)))}return T&&(s.resize(E),l.resize(E),T>0&&(s.add(T),l.add(0)),o.setAttributeStreamRef(0,c),o.setPathFlagsStreamRef(l),o.setPathStreamRef(s),g!==null&&(o.updateCurveCounter(b),o.setSegmentData(_,v,g,y)),o.notifyModifiedFlags(65535)),{geometry:a,as:m,bs:h}}function pe(e,t){t.currentToken()!==2&&n(`failed to parse multipoint: array of vertices is expected`);let r=0,i=new I,a=w(2,0),o=0,s=u(4,NaN),c=new p,l=null,d=null;for(;t.nextToken()!==4;){for(t.currentToken()!==2&&n(`failed to parse multipoint: array is expected, multipoint vertices consist of arrays of cooridinates`),o=0;t.nextToken()!==4;)o===4&&n(`failed to parse multipoint: each vertex array has to have at most 4 elements`),s[o++]=q(t);o<2&&n(`failed to parse multipoint: each vertex array has to have at least 2 elements`),A(s[0],s[1])||n(`failed to parse multipoint: x and y must be finite`),a.size()===r*2&&a.resize(J(r)),a.writePoint2D(2*r,c.setCoords(s[0],s[1])),l&&l.size()===r&&l.resize(Y(r)),o>2?(l||=w(r+1,NaN),l.write(r,s[2])):l&&l.write(r,NaN),d&&d.size()===r&&d.resize(Y(r)),o>3?(d||=w(r+1,NaN),d.write(r,s[3])):d&&d.write(r,NaN),r++}if(r){let e=i.getImpl();e.setAttributeStreamRef(0,a),e.resizeNoInit(r),e.notifyModifiedFlags(65535)}return{geometry:i,as:l,bs:d}}function me(e,t){t.currentToken()!==2&&n(`failed to parse array of IDs: array of array of integers is expected`);let r=j(2,0),i=0,a=-1;for(;t.nextToken()!==4;){let e=i;r.size()===i&&r.resize(Y(i)),i++;let o=0;for(a===-1?a=+(t.currentToken()===2):a===1&&t.currentToken()!==2&&n(`failed to parse array of IDs: array of array of integers is expected`),a===0&&(r.size()===i&&r.resize(Y(i)),r.write(i,he(t)),o++,i++);t.nextToken()!==4;)r.size()===i&&r.resize(Y(i)),r.write(i,he(t)),o++,i++;if(r.write(e,o),a===0)break}return r.resize(i),r}function q(e){let t=e.currentToken();if(t===10||t===6&&e.currentString()===`NaN`)return NaN;{let t=e.currentDoubleValue();return Number.isNaN(t)?NaN:t}}function he(e){return e.currentInt32Value()}function ge(e,n){if(e.isEmpty())return;let r=j(2,0),i=e.getGeometryType(),a=0;i===I.type?a=1:i===P.type||i===N.type?a=e.getPathCount():t(`not implemented`),r.resize(e.getPointCount(),0);let o=0;for(let s=0;s<a;++s){let a=n.read(o);o++;let c=o+a,l=0,u=0;i===I.type?l=e.getPointCount():i===P.type||i===N.type?(l=e.getPathSize(s),u=e.getPathStart(s)):t(`not implemented`);for(let e=0,t=Math.min(a,l);e<t;++e)r.write(u,n.read(o)),o++,u++;o=c}e.getImpl().setAttributeStreamRef(3,r)}function J(e){let t=Math.trunc((e+1)*3/2)*2;return t<8?t=8:t<32&&(t=32),t}function Y(e){let t=Math.trunc((e+1)*3/2);return t<4?t=4:t<16&&(t=16),t}function _e(e,t,n,r,a){a>=r.size()&&i(`Byte_buffer out of range access`),e.m_bits=0,e.m_rotation=0,e.m_cosr=1,e.m_sinr=0,e.setStartXY(t),e.setEndXY(n);let o=p.getNAN();o.x=r.readDouble(a),o.y=r.readDouble(a+8);let s=r.readInt32(a+16);if(s&1)return e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.assign(o),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,z(e),!1;let c=!!(s&64),l=!!(s&128),u=!!(s&32),d=!!(s&8),f=!!(s&16),m=t.equals(n);return c&&!m&&(c=!1,u=!0),u&&m&&(c=!0,u=!1,o.setCoords(0,0)),c||(l?u?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_interior.assign(o),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0):(e.constructCircularArcThreePoint(t,n,o),m&&d===e.isClockwise()&&e.reverse()):u?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,z(e),e.queryCoord2D(.5,e.m_interior)):B(e,t,n,o,d,f)),c&&(e.m_center.assign(t),e.m_startAngle=o.x,e.m_sweepAngle=o.y,V(e,NaN,d,f),e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.setCoordsPoint2D(t)),e.setProjectionBehavior(0),z(e),!0}function ve(e,t,n,r,i){e.m_bits=0,e.m_center.x=r.readDouble(i),e.m_center.y=r.readDouble(i+8),e.m_rotation=r.readDouble(i+16),e.m_semiMajorAxis=r.readDouble(i+24),e.m_minorMajorRatio=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y;let a=r.readInt32(i+40);if(a&1)return!1;let o=!!(a&64),s=!!(a&128),c=!!(a&512),l=!!(a&1024),u=!!(a&2048),d=!!(a&4096);return(c||l)&&!s&&(o=!0),s&&!t.equals(n)?(s=!1,o=!0):o&&t.equals(n)&&(s=!0,o=!1),s?(e.m_center.assign(t),e.m_startAngle=e.m_center.x,e.m_sweepAngle=e.m_center.y,V(e,NaN,u,d),e.m_semiMajorAxis=0,e.m_interior.setCoordsPoint2D(t)):o?(e.m_center.setNAN(),e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,z(e),e.queryCoord2D(.5,e.m_interior)):e.constructEllipticArcEndPointsCenter(t,n,e.m_semiMajorAxis,e.m_minorMajorRatio,e.m_rotation,!d,u,e.m_center),e.setProjectionBehavior(1),z(e),!0}function ye(e,t,n,i,a){return r(a+32<=i.size()),e.m_cp=m(p,2),e.m_cp[0].x=i.readDouble(a),e.m_cp[0].y=i.readDouble(a+8),e.m_cp[1].x=i.readDouble(a+16),e.m_cp[1].y=i.readDouble(a+24),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function be(e,t,n,r,i){return e.m_cp.x=r.readDouble(i),e.m_cp.y=r.readDouble(i+8),e.m_weights[0]=r.readDouble(i+16),e.m_weights[1]=r.readDouble(i+24),e.m_weights[2]=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function xe(e,t,r,i,a){let o={segFlag:0,toPointSz:0},s=i.currentToken();s=i.nextToken();let c=i.currentString(),l=c[0];for((c.length!==1||l!==`a`&&l!==`b`&&l!==`c`&&l!==`n`&&l!==`q`)&&n(`failed to parse curve: expecting "a", "b", "n", "q", or "c"`),s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for curve parameters`),s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for to point`),o.toPointSz=0;i.nextToken()!==4;)o.toPointSz===4&&n(`failed to parse curve: vertex array cannot have more than 4 elements`),t[o.toPointSz++]=q(i);o.toPointSz<2&&n(`failed to parse curve: vertex array must have at least 2 elements`);let u=p.construct(t[0],t[1]),d=p.getNAN(),f=-1,m=-1,h=!1,g=NaN,_=NaN,v=NaN,y=[p.getNAN(),p.getNAN(),p.getNAN()],b=p.getNAN();if(l===`a`){s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for center point`),s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for center point`),d.setCoords(e,t),s=i.nextToken(),f=i.currentInt32Value(),s=i.nextToken(),m=i.currentInt32Value(),s=i.nextToken(),s===4?h=!0:(h=!1,g=q(i),s=i.nextToken(),_=q(i),s=i.nextToken(),v=q(i),s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`)),o.segFlag=4}else if(l===`b`){for(let e=0;e<2;e++){s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for control point`),s=i.nextToken();let t=q(i);s=i.nextToken();let r=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for control point`),y[e].setCoords(t,r)}s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=2}else if(l===`n`){{s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for control point`),s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for control point`),y[0].setCoords(e,t)}s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken();let r=q(i);y[1].setCoords(e,t),y[2].setCoords(r,r),s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=8}else if(l===`q`){for(let e=0;e<1;e++){s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for control point`),s=i.nextToken();let t=q(i);s=i.nextToken();let r=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for control point`),y[e].setCoords(t,r)}s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=16}else{s=i.nextToken(),s!==2&&n(`failed to parse curve: start array is expected for interior point`),s=i.nextToken();let e=q(i);s=i.nextToken();let t=q(i);s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for interior point`),b.setCoords(e,t),s=i.nextToken(),s!==4&&n(`failed to parse curve: end array is expected for curve parameters`),o.segFlag=4}return s=i.nextToken(),s!==3&&n(`failed to parse curve: end object is expected for curve`),l===`a`?(e.createEllipticArc(),h?Se(e.get(),r,u,d,!0,f,m):Ce(e.get(),r,u,d,f,m,g,_,v)):l===`b`?(e.createCubicBezier(),we(e.get(),r,u,y)):l===`n`?(e.createQuadraticRationalBezier(),Te(e.get(),r,u,y[0],y[1].x,y[1].y,y[2].x)):l===`q`?(e.createQuadraticBezier(),e.get().construct(r,y[0],u)):(e.createEllipticArc(),Se(e.get(),r,u,b,!1,-1,-1)),o}function Se(e,t,n,r,i,a,o){e.dropAllAttributes();let s=new K({sz:20,buffer:new ArrayBuffer(20)}),c=0;s.writeDouble(c,r.x),c+=8,s.writeDouble(c,r.y),c+=8;let l=0;i?(o||(l|=8),a&&(l|=16)):l|=128,s.writeInt32(c,l),c+=4,_e(e,t,n,s,0)}function Ce(e,t,n,r,i,a,o,s,c){e.dropAllAttributes();let l=new K({sz:44,buffer:new ArrayBuffer(44)}),u=0;l.writeDouble(u,r.x),u+=8,l.writeDouble(u,r.y),u+=8,l.writeDouble(u,o),u+=8,l.writeDouble(u,s),u+=8,l.writeDouble(u,c),u+=8;let d=0;a||(d|=2048),i&&(d|=4096),l.writeInt32(u,d),u+=4,ve(e,t,n,l,0)}function we(e,t,n,r){e.dropAllAttributes();let i=new K({sz:32,buffer:new ArrayBuffer(32)}),a=0;i.writeDouble(a,r[0].x),a+=8,i.writeDouble(a,r[0].y),a+=8,i.writeDouble(a,r[1].x),a+=8,i.writeDouble(a,r[1].y),a+=8,ye(e,t,n,i,0)}function Te(e,t,n,r,i,a,o){e.dropAllAttributes();let s=new K({sz:40,buffer:new ArrayBuffer(40)}),c=0;s.writeDouble(c,r.x),c+=8,s.writeDouble(c,r.y),c+=8,s.writeDouble(c,i),c+=8,s.writeDouble(c,a),c+=8,s.writeDouble(c,o),c+=8,be(e,t,n,s,0)}function Ee(e,t,n,r,i){let a=e.getGeometryType();if(a===o.enumEllipticArc)return De(e,t,n,r,i);if(a===o.enumBezier)return Oe(e,t,n,r,i);if(a===o.enumRationalBezier2)return ke(e,t,n,r,i);if(a===o.enumBezier2){let a=new L;return a.constructFromQuadraticSegment(e),Oe(a,t,n,r,i)}s(``)}function De(e,t,n,i,a){r(!R(e));let o=e.getEndXY(),s=e.hasAttribute(1)&&!t,c=e.hasAttribute(2)&&!n,l=NaN,u=NaN;if(s&&(l=e.getEndAttributeAsDbl(1,0)),c&&(u=e.getEndAttributeAsDbl(2,0)),e.isDegenerateToLine()||e.isDegenerate(0))return X(s,c,o.x,o.y,l,u,i,a),!0;let d=e.projectionBehavior()===0,f=d?e.isClosed():!1;if(d&&!f)a.startObject(),a.addFieldName(`c`),a.startArray(),X(s,c,o.x,o.y,l,u,i,a),Z(e.m_interior.x,e.m_interior.y,17,a),a.endArray(),a.endObject();else if(d){a.startObject(),a.addFieldName(`a`),a.startArray(),X(s,c,o.x,o.y,l,u,i,a),Z(e.m_center.x+0,e.m_center.y+0,17,a);let t=!e.isMajor();a.addInt32(+!!t);let n=e.isClockwise();a.addInt32(+!!n),a.endArray(),a.endObject()}else{a.startObject(),a.addFieldName(`a`),a.startArray(),X(s,c,o.x,o.y,l,u,i,a);let t=e;Z(t.m_center.x,t.m_center.y,17,a);let n=!t.isMajor();a.addInt32(+!!n);let r=t.isClockwise();a.addInt32(+!!r),a.addDouble(t.m_rotation,17),a.addDouble(t.m_semiMajorAxis,17),a.addDouble(t.m_minorMajorRatio,17),a.endArray(),a.endObject()}return!1}function Oe(e,t,n,r,i){let a=e.getEndXY(),o=e.hasAttribute(1)&&!t,s=e.hasAttribute(2)&&!n,c=NaN,l=NaN;return o&&(c=e.getEndAttributeAsDbl(1,0)),s&&(l=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName(`b`),i.startArray(),X(o,s,a.x,a.y,c,l,r,i),Z(e.m_cp[0].x,e.m_cp[0].y,r,i),Z(e.m_cp[1].x,e.m_cp[1].y,r,i),i.endArray(),i.endObject(),!1}function ke(e,t,n,r,i){let a=e.getEndXY(),o=e.hasAttribute(1)&&!t,s=e.hasAttribute(2)&&!n,c=NaN,l=NaN;o&&(c=e.getEndAttributeAsDbl(1,0)),s&&(l=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName(`n`),i.startArray(),X(o,s,a.x,a.y,c,l,r,i),Z(e.m_cp.x,e.m_cp.y,r,i);let u=r;return i.addDouble(e.m_weights[0],u),i.addDouble(e.m_weights[1],u),i.addDouble(e.m_weights[2],u),i.endArray(),i.endObject(),!1}function X(e,t,n,r,i,a,o,s){s.startArray(),s.addDouble(n,o),s.addDouble(r,o),e&&s.addDouble(i,o),t&&s.addDouble(a,o),s.endArray()}function Z(e,t,n,r){r.startArray(),r.addDouble(e,n),r.addDouble(t,n),r.endArray()}class Ae{getOperatorType(){return 10405}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,r,i,a){je(e,t,n,r)}exportSpatialReference(e,t,n,i){r(0)}exportProjectionTransformation(e,t,n,i){r(0)}exportDatumTransformation(e,t,n,i){r(0)}static geometryTypeToString(e){return r(0),``}}function je(e,n,i,a,s){if(n||i){if(a.startObject(),n!==null)switch(n.getGeometryType()){case o.enumPolygon:Me(!0,e,n,a);break;case o.enumPolyline:Me(!1,e,n,a);break;case o.enumMultiPoint:Ne(e,n,a);break;case o.enumPoint:Pe(e,n,a);break;case o.enumEnvelope:Fe(e,n,a);break;case o.enumMultipatch:r(0);break;default:t(`exportToJSON`)}i!==null&&(a.addFieldName(`spatialReference`),Le(e,i,a)),a.endObject()}}function Me(e,t,n,i){let a=n.getImpl(),o=!!(t&2),c=!!(t&4),l=!!(t&8),u=a.hasAttribute(1)&&!o,d=a.hasAttribute(2)&&!c,f=a.hasAttribute(3)&&!l,p=a.hasNonLinearSegments();u&&(i.addFieldName(`hasZ`),i.addBool(!0)),d&&(i.addFieldName(`hasM`),i.addBool(!0)),e?p?i.addFieldName(`curveRings`):i.addFieldName(`rings`):p?i.addFieldName(`curvePaths`):i.addFieldName(`paths`);let m=null,h=[];if(n.isEmpty())i.startArray(),i.endArray();else{let e=17-(31&t>>13);i.startArray();let r=n.getPathCount(),l=0,g=a.getAttributeStreamRef(0),_=null,v=null,y=null,b=new F,x=null,S=null,C=null;p&&(x=a.getSegmentFlagsStreamRef(),S=a.getSegmentIndexStreamRef(),C=a.getSegmentDataStreamRef()),u&&(_=a.getAttributeStreamRef(1)),d&&(v=a.getAttributeStreamRef(2)),f&&(y=a.getAttributeStreamRef(3),m=M(3,0));for(let t=0;t<r;t++){i.startArray(),f&&h.push(0);let r=n.getPathEnd(t);if(l===r){i.endArray();continue}let a=n.isClosedPath(t),p=g.read(2*l),w=g.read(2*l+1),T=u?_.read(l):NaN,E=d?v.read(l):NaN,D=f?y.read(l):0;Re(u,d,p,w,T,E,e,i);let O=1;f&&(m.add(D),h[h.length-1]++);let k=p,A=w,j=T,M=E,N=D,P=!1,F=0,I=NaN,L=NaN,R=0;for(let t=l+1,n=l,z=a?r+1:r;t<z;t++,n++){let a=x===null?1:x.read(n)&31,l,z;if(t<r?(l=g.read(2*t),z=g.read(2*t+1),u&&(I=_.read(t)),d&&(L=v.read(t)),f&&(R=y.read(t))):(l=k,z=A,I=j,L=M,R=N),a!==1){P=!0,a===4?b.createEllipticArc():a===2?b.createCubicBezier():a===16?b.createQuadraticBezier():a===8?b.createQuadraticRationalBezier():s(`JSON export.unsupported curve`);let t=b.get(),r=S.read(n);t.setStartXYCoords(p,w),t.setEndXYCoords(l,z),u&&(t.setStartAttribute(1,0,T),t.setEndAttribute(1,0,I)),d&&(t.setStartAttribute(2,0,E),t.setEndAttribute(2,0,L)),t.readFromBufferStream(C,r),Ee(b.get(),o,c,e,i)&&F++}else Re(u,d,l,z,I,L,e,i);f&&(m.add(R),h[h.length-1]++),O++,p=l,w=z,T=I,E=L,D=R}(!P||F!==0)&&(O<2&&F<1&&(Re(u,d,p,w,T,E,e,i),O++,f&&(m.add(D),h[h.length-1]++)),a&&O<3&&F<2&&(Re(u,d,k,A,j,M,e,i),O++,p=k,w=A,T=j,E=M,D=N,f&&(m.add(N),h[h.length-1]++))),i.endArray(),l=r}i.endArray()}if(f){i.addFieldName(`ids`),i.startArray();let e=0;for(let t=0,n=h.length;t<n;++t){let n=h[t];r(n===0||m!==null&&e+n<=m.size()),i.startArray();for(let t=0;t<n;++t)i.addInt32(m.read(e)),e++;i.endArray()}i.endArray()}}function Ne(e,t,n){let i=t.getImpl(),a=i.hasAttribute(1)&&!(e&2),o=i.hasAttribute(2)&&!(e&4),s=i.hasAttribute(3)&&!(e&8);a&&(n.addFieldName(`hasZ`),n.addBool(!0)),o&&(n.addFieldName(`hasM`),n.addBool(!0)),n.addFieldName(`points`);let c=t.getPointCount();if(t.isEmpty())n.startArray(),n.endArray();else{let t=17-(31&e>>13);n.startArray();let r=i.getAttributeStreamRef(0),s=null,l=null;a&&(s=i.getAttributeStreamRef(1)),o&&(l=i.getAttributeStreamRef(2));for(let e=0;e<c;e++){let i=r.read(2*e),c=r.read(2*e+1),u=NaN,d=NaN;a&&(u=s.read(e)),o&&(d=l.read(e)),Re(a,o,i,c,u,d,t,n)}n.endArray()}if(s){let e=null;i.isEmpty()||(e=i.getAttributeStreamRef(3)),r(c===0||e!==null&&e.size()>=c),n.addFieldName(`ids`),n.startArray();for(let t=0;t<c;t++)n.addInt32(e.read(t));n.endArray()}}function Pe(e,t,n){let r=t.hasAttribute(1)&&!(e&2),i=t.hasAttribute(2)&&!(e&4),a=t.hasAttribute(3)&&!(e&8);if(t.isEmpty()){n.addFieldName(`x`),n.addNull(),n.addFieldName(`y`),n.addNull(),r&&(n.addFieldName(`z`),n.addNull()),i&&(n.addFieldName(`m`),n.addNull()),a&&(n.addFieldName(`id`),n.addInt32(0));return}let o=17-(31&e>>13);n.addFieldName(`x`),n.addDouble(t.getX(),o),n.addFieldName(`y`),n.addDouble(t.getY(),o),r&&(n.addFieldName(`z`),n.addDouble(t.getZ(),o)),i&&(n.addFieldName(`m`),n.addDouble(t.getM(),o)),a&&(n.addFieldName(`id`),n.addInt32(t.getID()))}function Fe(e,t,n){let r=t.hasAttribute(1)&&!(e&2),i=t.hasAttribute(2)&&!(e&4),a=t.hasAttribute(3)&&!(e&8);if(t.isEmpty()){n.addFieldName(`xmin`),n.addNull(),n.addFieldName(`ymin`),n.addNull(),n.addFieldName(`xmax`),n.addNull(),n.addFieldName(`ymax`),n.addNull(),r&&(n.addFieldName(`zmin`),n.addNull(),n.addFieldName(`zmax`),n.addNull()),i&&(n.addFieldName(`mmin`),n.addNull(),n.addFieldName(`mmax`),n.addNull()),a&&(n.addFieldName(`idmin`),n.addInt32(0),n.addFieldName(`idmax`),n.addInt32(0));return}let o=17-(31&e>>13);if(n.addFieldName(`xmin`),n.addDouble(t.getXMin(),o),n.addFieldName(`ymin`),n.addDouble(t.getYMin(),o),n.addFieldName(`xmax`),n.addDouble(t.getXMax(),o),n.addFieldName(`ymax`),n.addDouble(t.getYMax(),o),r){let e=t.queryInterval(1,0);n.addFieldName(`zmin`),n.addDouble(e.vmin,o),n.addFieldName(`zmax`),n.addDouble(e.vmax,o)}if(i){let e=t.queryInterval(2,0);n.addFieldName(`mmin`),n.addDouble(e.vmin,o),n.addFieldName(`mmax`),n.addDouble(e.vmax,o)}if(a){let e=t.queryInterval(3,0);n.addFieldName(`idmin`),n.addInt32(e.vmin),n.addFieldName(`idmax`),n.addInt32(e.vmax)}}function Ie(e,t,r){r.startObject();let i=t.getID();i<=0&&n(`cannot export unit that has no valid WKID`),r.addFieldName(`uwkid`),r.addInt32(i),r.endObject()}function Le(e,t,n){n.startObject();let r=0;t.isCustomWkid()||(r=t.getOldID());let i=0,a=t.getVCS();if(a!==null&&(a.isCustomWkid()||(i=a.getOldID()),i<=0&&(r=0)),r>0){n.addFieldName(`wkid`),n.addInt32(r);let e=t.getLatestID();if(e>0&&e!==r&&(n.addFieldName(`latestWkid`),n.addInt32(e)),i>0){n.addFieldName(`vcsWkid`),n.addInt32(i);let e=t.getLatestVerticalID();e!==i&&(n.addFieldName(`latestVcsWkid`),n.addInt32(e))}}if(t.getCoordinateSystemType()===0)n.addFieldName(`wkid`),n.addNull(),t.getUnit()!==null&&(n.addFieldName(`unit`),Ie(e,t.getUnit(),n));else if(r<=0||e&1){let r=``;e&64&&(r=t.getText2(),n.addFieldName(`wkt2`),n.addString(r));let i=t.getText();i!==r&&(n.addFieldName(`wkt`),n.addString(i))}if(e&16){let e=new x;t.queryPrecisionDescriptor(e),n.addFieldName(`xyTolerance`),n.addDouble(e.getTolerance(0)),n.addFieldName(`zTolerance`),n.addDouble(e.getTolerance(1)),n.addFieldName(`mTolerance`),n.addDouble(e.getTolerance(2)),n.addFieldName(`falseX`),n.addDouble(e.getFalseX()),n.addFieldName(`falseY`),n.addDouble(e.getFalseY()),n.addFieldName(`xyUnits`),n.addDouble(e.getGridUnitsXY()),n.addFieldName(`falseZ`),n.addDouble(e.getFalseZ()),n.addFieldName(`zUnits`),n.addDouble(e.getGridUnitsZ()),n.addFieldName(`falseM`),n.addDouble(e.getFalseM()),n.addFieldName(`mUnits`),n.addDouble(e.getGridUnitsM())}n.endObject()}function Re(e,t,n,r,i,a,o,s){s.startArray(),s.addDouble(n,o),s.addDouble(r,o),e&&s.addDouble(i,o),t&&s.addDouble(a,o),s.endArray()}const Q={s_a:97,s_A:65,s_asterisk:42,s_b:98,s_backslash:92,s_beginArray:91,s_beginObject:123,s_colon:58,s_period:46,s_comma:44,s_doubleQuote:34,s_endArray:93,s_endObject:125,s_e:101,s_E:69,s_f:102,s_F:70,s_forwardslash:47,s_minus:45,s_plus:43,s_n:110,s_N:78,s_r:114,s_t:116,s_u:117,s_zero:48,s_nine:57};class ze{m_jsonString;m_endToken;m_startToken;m_currentTokenType;m_bHasEscapes;m_functionStack=[];m_pushPositions=[];m_utf8Decoder=new TextDecoder(`utf-8`,{fatal:!0});m_prepSubstr;m_getCurrentSubstr;m_stepOverChar;m_peekChar;m_get;m_increment;m_eof;constructor(e){e===void 0?(this.m_startToken=2**53-1,this.m_endToken=0,this.m_currentTokenType=0,this.m_functionStack.push(()=>this.accept_()),this.m_jsonString=null,this.m_bHasEscapes=!1):e.jsonString?this.resetParserFromString(e.jsonString):e.jsonStream?s(`streaming json parsing not yet impl`):t(`invalid constructor parameter`)}prepSubstrString_(){}getCurrentSubstrString_(){return this.m_jsonString.slice(this.m_startToken,this.m_endToken)}stepOverCharString_(){this.m_endToken++}peekCharString_(){return this.m_jsonString.charCodeAt(this.m_endToken)}getString_(e){let t=this.m_jsonString?.slice(this.m_startToken,this.m_startToken+e-1);return this.m_endToken+=e-1,{s:t,bDone:this.m_endToken>=this.m_jsonString.length}}incrementString_(){this.m_endToken++}eofString_(){return this.m_endToken>=this.m_jsonString.length}setStringFunctions_(){this.m_prepSubstr=this.prepSubstrString_,this.m_getCurrentSubstr=this.getCurrentSubstrString_,this.m_stepOverChar=this.stepOverCharString_,this.m_peekChar=this.peekCharString_,this.m_get=this.getString_,this.m_increment=this.incrementString_,this.m_eof=this.eofString_}setStreamFunctions_(){s(`streaming json parsing not yet impl`)}reset_(){this.m_jsonString=null,this.m_endToken=0,this.m_startToken=2**53-1,this.m_currentTokenType=0,this.m_bHasEscapes=!1,this.m_functionStack.length=0,this.m_functionStack.push(()=>this.start_()),this.m_pushPositions.length=0}resetParserFromString(e){this.reset_(),this.setStringFunctions_(),this.m_jsonString=e}resetParserFromStream(e){s(`streaming json parsing not yet impl`)}resetToPosition(e){return this.m_jsonString?(this.m_endToken=e,this.m_startToken=Number.MAX_VALUE,this.m_currentTokenType=0,this.m_functionStack.length=0,e>=this.m_jsonString.length?(this.m_functionStack.push(()=>this.accept_()),!1):(this.m_functionStack.push(()=>this.start_()),!0)):!1}nextToken(){return this.m_functionStack.at(-1)(),this.m_currentTokenType}currentToken(){return this.m_currentTokenType}currentTokenStartIndex(){return this.m_startToken}currentTokenEndIndex(){return this.m_endToken}currentText(){return r(0),``}childrenAsString(){return r(0),``}skipChildren(){this.skipChildren_()}skipChildren_(){if(this.m_currentTokenType===1){let e=1;do this.m_currentTokenType=this.nextToken(),this.m_currentTokenType===1?e++:this.m_currentTokenType===3&&e--;while(this.m_currentTokenType!==3||e!==0);return}if(this.m_currentTokenType===2){let e=1;do this.m_currentTokenType=this.nextToken(),this.m_currentTokenType===2?e++:this.m_currentTokenType===4&&e--;while(this.m_currentTokenType!==4||e!==0);return}}currentTerminalAsString_(){switch(this.m_currentTokenType){case 7:case 8:case 9:return this.m_getCurrentSubstr().slice(0,this.m_endToken-this.m_startToken);case 10:return`null`;case 11:return`true`;case 12:return`false`}n(`invalid token`)}toUTF8_(e,t){let n=0,r=e;for(;t.charCodeAt(r)===Q.s_backslash&&t.charCodeAt(r+1)===Q.s_u;)n++,r+=6;r=e;let i=new Uint8Array(n),a=0;for(;t.charCodeAt(r)===Q.s_backslash&&t.charCodeAt(r+1)===Q.s_u;)i[a++]=Number.parseInt(t.slice(r+2,r+6),16),r+=6;return{u8s:this.m_utf8Decoder.decode(i),end:r}}unquoteCurrentString_(){let e=``,t=1,n=this.m_endToken-this.m_startToken-1,r=0,i=this.m_getCurrentSubstr();for(let a=t;a<n;a++)if(i.charCodeAt(a)!==Q.s_backslash)r++;else{switch(r>0&&(e+=i.slice(t,t+r)),i.charCodeAt(++a)){case Q.s_doubleQuote:e+=`"`;break;case Q.s_u:{let{u8s:t,end:n}=this.toUTF8_(a-1,i);a=n-1,e+=t;break}case Q.s_backslash:e+=`\\`;break;case Q.s_forwardslash:e+=`/`;break;case Q.s_b:e+=`\b`;break;case Q.s_f:e+=`\f`;break;case Q.s_n:e+=`
|
|
3
3
|
`;break;case Q.s_r:e+=`\r`;break;case Q.s_t:e+=` `}t=a+1,r=0}return r>0&&(e+=i.slice(t,t+r)),e}currentString(){return this.m_currentTokenType!==5&&this.m_currentTokenType!==6?this.currentTerminalAsString_():this.m_bHasEscapes?this.unquoteCurrentString_():this.m_getCurrentSubstr().slice(1,this.m_endToken-this.m_startToken-2+1)}currentDoubleValue(){if(this.m_currentTokenType!==7&&this.m_currentTokenType!==8&&this.m_currentTokenType!==9&&this.m_currentTokenType!==6&&this.m_currentTokenType!==10&&n(`invalid token`),this.m_currentTokenType===10)return NaN;let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;if(this.m_currentTokenType===6){if(this.currentString()===`NaN`)return NaN;e=e.slice(1),t-=2,t===0&&n(`invalid token`)}let r=Number.parseFloat(e);if(this.m_currentTokenType===6)Number.isNaN(r)&&n(`invalid token`);else if(Number.isNaN(r))return NaN;return r}currentInt32Value(){this.m_currentTokenType!==8&&this.m_currentTokenType!==6&&n(`invalid token`);let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;this.m_currentTokenType===6&&(e=e.slice(1),t-=2,t===0&&n(`invalid token`));let r=parseInt(e);return Number.isNaN(r)&&n(`invalid token`),r}currentInt64Value(){return r(0),0n}currentBoolValue(){return r(0),!1}isError(){return 0}JSONString(){return r(0),``}pushPosition(){return r(0),!1}popPosition(){return r(0),!1}skipCStyleComments_(){r(0)}skipCppStyleComments_(){r(0)}skipComments_(){this.m_prepSubstr();let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar(),e===Q.s_asterisk?this.skipCStyleComments_():e===Q.s_forwardslash?this.skipCppStyleComments_():n(`invalid token`)}skipWhiteSpace_(){let e;do{this.m_eof()&&n(`invalid token`);let t=this.m_peekChar();for(;t>=9&&t<=13||t===32;)this.m_increment(),this.m_eof()&&n(`invalid token`),t=this.m_peekChar();t===Q.s_forwardslash?(this.m_startToken=this.m_endToken,e=!0,this.skipComments_()):e=!1}while(e)}rightBracket_(){return this.m_peekChar()===Q.s_endArray&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=4,!0)}rightBrace_(){return this.m_peekChar()===Q.s_endObject&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=3,!0)}string_(){this.m_prepSubstr(),this.m_bHasEscapes=!1,this.m_stepOverChar(),this.m_eof()&&n(`invalid token`);let e=this.m_peekChar();for(;e!==Q.s_doubleQuote;){let t=e===Q.s_backslash;if(this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar(),t){if(this.m_bHasEscapes=!0,e===Q.s_doubleQuote||e===Q.s_backslash||e===Q.s_forwardslash||e===Q.s_b||e===Q.s_f||e===Q.s_n||e===Q.s_r||e===Q.s_t)this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar();else if(e===Q.s_u)for(let t=0;t<4;t++)this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar(),e>=Q.s_zero&&e<=Q.s_nine||e>=Q.s_a&&e<=Q.s_f||e>=Q.s_A&&e<=Q.s_F||n(`invalid token`);else n(`invalid token`)}}this.m_stepOverChar()}comma_(){return this.m_peekChar()===Q.s_comma&&(this.m_increment(),!0)}colon_(){return this.m_peekChar()===Q.s_colon&&(this.m_increment(),!0)}fieldNameEnd_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.colon_()?(this.skipWhiteSpace_(),this.value_()):n(`invalid token`)}fieldNameStart_(){this.m_startToken=this.m_endToken,this.m_peekChar()!==Q.s_doubleQuote&&n(`invalid token`),this.string_(),this.m_currentTokenType=5,this.m_functionStack.push(()=>this.fieldNameEnd_())}pairEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.fieldNameStart_()):this.rightBrace_()?this.m_functionStack.pop():n(`invalid token`)}arrayStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBracket_()||(this.m_functionStack.push(()=>this.elementEnd_()),this.value_())}elementEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.value_()):this.rightBracket_()?this.m_functionStack.pop():n(`invalid token`)}objectStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBrace_()||(this.m_functionStack.push(()=>this.pairEnd_()),this.fieldNameStart_())}valueStartObject_(){this.m_increment(),this.m_currentTokenType=1,this.m_functionStack.push(()=>this.objectStart_())}valueStartArray_(){this.m_increment(),this.m_currentTokenType=2,this.m_functionStack.push(()=>this.arrayStart_())}valueString_(){this.string_(),this.m_currentTokenType=6}int_(){if(this.m_peekChar()===Q.s_zero){this.m_stepOverChar();return}this.digits_()}digits_(){let e=this.m_peekChar();do this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar();while(e>=Q.s_zero&&e<=Q.s_nine)}frac_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar(),e>=Q.s_zero&&e<=Q.s_nine||n(`invalid token`),this.digits_()}exp_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar(),(e===Q.s_plus||e===Q.s_minus)&&(this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),e=this.m_peekChar()),e>=Q.s_zero&&e<=Q.s_nine||n(`invalid token`),this.digits_()}valueNumber_(){this.m_prepSubstr();let e=!1,t=this.m_peekChar();if(t===Q.s_minus?(this.m_stepOverChar(),this.m_eof()&&n(`invalid token`),t=this.m_peekChar(),e=!0,t>=Q.s_zero&&t<=Q.s_nine||n(`invalid token`),this.int_()):this.int_(),t=this.m_peekChar(),t===Q.s_period)this.m_currentTokenType=7,this.frac_(),t=this.m_peekChar(),(t===Q.s_e||t===Q.s_E)&&this.exp_();else if(t===Q.s_e||t===Q.s_E)this.m_currentTokenType=7,this.exp_();else{let t=0,n=this.m_endToken-this.m_startToken;e&&t++;let r=n-t;if(r<10)this.m_currentTokenType=8;else if(r===10){let n=this.m_getCurrentSubstr();this.m_currentTokenType=e?n.slice(t)<=`2147483648`?8:9:n.slice(t)<=`2147483647`?8:9}else if(r<19)this.m_currentTokenType=9;else if(r===19){let n=this.m_getCurrentSubstr();this.m_currentTokenType=e?n.slice(t)<=`9223372036854775808`?9:7:n.slice(t)<=`9223372036854775807`?9:7}else this.m_currentTokenType=7}}valueNull_(){let{s:e,bDone:t}=this.m_get(5);t&&n(`invalid token`),e!==`null`&&n(`invalid token`),this.m_currentTokenType=10}valueTrue_(){let{s:e,bDone:t}=this.m_get(5);t&&n(`invalid token`),e!==`true`&&n(`invalid token`),this.m_currentTokenType=11}valueFalse_(){let{s:e,bDone:t}=this.m_get(6);t&&n(`invalid token`),e!==`false`&&n(`invalid token`),this.m_currentTokenType=12}valueNan_(){let{s:e,bDone:t}=this.m_get(4);t&&n(`invalid token`),e!==`NaN`&&n(`invalid token`),this.m_currentTokenType=7}value_(){this.m_startToken=this.m_endToken;let e=this.m_peekChar();e===Q.s_beginObject?this.valueStartObject_():e===Q.s_beginArray?this.valueStartArray_():e===Q.s_doubleQuote?this.valueString_():e===Q.s_minus||e>=Q.s_zero&&e<=Q.s_zero+9?this.valueNumber_():e===Q.s_n?this.valueNull_():e===Q.s_t?this.valueTrue_():e===Q.s_f?this.valueFalse_():e===Q.s_N?this.valueNan_():n(`invalid token`)}start_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.m_functionStack.push(()=>this.accept_());let e=this.m_peekChar();e!==Q.s_beginObject&&e!==Q.s_beginArray&&n(`invalid token`),this.value_()}accept_(){this.m_startToken=this.m_endToken,this.m_currentTokenType=0}}class Be{getOperatorType(){return 10404}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,r,i,a,o,s){let c;typeof r==`string`?(c=new ze({jsonString:r}),c.nextToken()):c=r,c.currentToken()!==1&&n(`failed to import map geometry: start of object is expected`);let l=le(t,e,c,i,a);return new C(l)}importSpatialReference(e){let n=de(e);return n===null&&t(`failed to import spatial reference`),n}importProjectionTransformation(e,t){return r(0),{}}importDatumTransformation(e,t){return r(0),{}}static stringToGeometryType(e){if(e=e.toLowerCase(),e.startsWith(`esrigeometry`)||n(`string_to_geometry_type`),e.endsWith(`point`))return o.enumPoint;if(e.endsWith(`envelope`))return o.enumEnvelope;if(e.endsWith(`multipoint`))return o.enumMultiPoint;if(e.endsWith(`polyline`))return o.enumPolyline;if(e.endsWith(`polygon`))return o.enumPolygon;n(`string_to_geometry_type`)}}const $=new G,Ve=new Ae,He=new Be;function Ue(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function We(t,n=!1){if(!n&&(ne(t)||re(t)||ie(t)||ae(t))){let n=new C;return n.setGeometry(e(ee(t))),n}let r=new ce(t,{strict:!1});return r.nextToken(),He.execute(0,o.enumUnknown,r,!0,!1)}function Ge(e){let t=null;return[e.map(e=>{if(t==null){let n=Ke(e);return t=n.getSpatialReference(),n.getGeometry()}return qe(e)}),t]}function Ke(e){let t=We(e),n=Ye(e.spatialReference);return n&&t.setSpatialReference(n),t}function qe(e){return We(e).getGeometry()}function Je(e){return We(e,!0).getGeometry()}function Ye(e){if(e==null||!e.wkid&&!e.latestWkid&&!e.wkt&&!e.wkt2)return null;let t=!1;if(e instanceof te){let{wkt2:n}=e;e=e.toJSON(),e.wkt2??=n,t=!0}(e.latestVcsWkid||e.vcsWkid)&&(t||(e={...e}),delete e?.latestVcsWkid,delete e?.vcsWkid);let n=new ce(e,{strict:!1});n.nextToken();let r=He.importSpatialReference(n);return r.getCoordinateSystemType()===0?null:r}function Xe(e,t){if(e instanceof C&&(t=e.getSpatialReference(),e=e.getGeometry()),e==null||e.isEmpty())return null;let n;switch(e.getGeometryType()){case o.enumPoint:n=U(e);break;case o.enumMultiPoint:n=U(e);break;case o.enumPolyline:n=U(e);break;case o.enumPolygon:n=U(e)}if(n){let e=W(n);return e.spatialReference=Ze(t),e.spatialReference??delete e.spatialReference,e}return $.reset(),Ve.execute(0,e,t??null,$),$.getObject()}function Ze(e){return e==null||e.getCoordinateSystemType()===0?null:($.reset(),Ve.execute(0,null,e,$),$.getObject().spatialReference)}export{Ge as fromGeometries,Ke as fromGeometry,qe as fromGeometryToGXGeometry,Je as fromGeometryToGXGeometryUsingImportOperator,Ye as fromSpatialReference,Ue as getSpatialReference,Xe as toGeometry,Ze as toSpatialReference};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{set as e,invert as t,transpose as n,multiply as r}from"../../../core/libs/gl-matrix-2/math/mat3.js";import{create as i}from"../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{transformMat3 as a,exactEquals as o,normalize as s,add as c}from"../../../core/libs/gl-matrix-2/math/vec2.js";import{expandPointInPlace as l}from"../aaBoundingRect.js";import{cloneCurve as u}from"./curveUtils.js";import{angularRangeWrap as d,angularRangeOriented as f,angularRange as p,wrapAtan2 as m,distance2 as h,intersectLineLine as g,findClosestAndFurthestCurveParametersToPoint as _}from"./mathUtils.js";class v{constructor(e,t,n,r,i,a,o,s,c){this.cx=e,this.cy=t,this.a=n,this.b=r,this.cosR=i,this.sinR=a,this.u1=o,this.u2=s,this.isInvalid=c}}function y(e,t){let[n,r,i,a,o,s,c]=t.a,[l,u]=e,[d,p]=n,[h,g]=r,_=s*c,y=Math.cos(o),b=Math.sin(o),[x,S]=f(m(1/_*(u-g)*y-1/_*(l-h)*b,1/s*(u-g)*b+1/s*(l-h)*y),Math.atan2(1/_*(p-g)*y-1/_*(d-h)*b,1/s*(p-g)*b+1/s*(d-h)*y),i,a);return new v(h,g,s,_,y,b,x,S,s===0||_===0)}function b(e,t){let{a:n,b:r,cosR:i,sinR:a,cx:o,cy:s}=e,c=Math.cos(t),l=Math.sin(t);return[n*c*i-r*l*a+o,n*c*a+r*l*i+s]}function x(e,t){let{u1:n,u2:r}=e;return b(e,n*(1-t)+r*t)}function S(e,t){let[n,r]=t.a[0],{a:i,b:a,cx:l,cy:u,cosR:d,sinR:f,isInvalid:p,u1:m,u2:h}=y(e,t);if(p){let[t,i]=e;return o([t,i],[n,r])?null:[n-t,r-i]}let g=Math.sqrt(i*i-a*a),_=[l+g*d,u+g*f],v=[l-g*d,u-g*f],b=[n-_[0],r-_[1]],x=[n-v[0],r-v[1]];s(b,b),s(x,x);let[S,C]=c(b,b,x);return h>m?[-C,S]:[C,S]}function C(e,t,n){if(n<0||n>1)return[];if(n===0||n===1)return[u(t)];let[r,[i,a],o,s,c,l,d]=t.a,{u1:f,u2:p}=e,m=x(e,n),h=f*(1-n)+p*n,g=+(Math.abs(h-f)<Math.PI),_=+(Math.abs(p-h)<Math.PI);return[{a:[[...m],[i,a],g,s,c,l,d]},{a:[[...r],[i,a],_,s,c,l,d]}]}function w(e,t){let{a:n,b:r,cosR:i,sinR:a,u1:o,u2:s}=e,c=Math.PI/6,l=[1*c,2*c,4*c,5*c,7*c,8*c,10*c,11*c],u=_(t,l,t=>{let o=Math.cos(t),s=Math.sin(t),[c,l]=b(e,t);return[c,l,-n*i*s-r*a*o,-n*a*s+r*i*o,-n*i*o+r*a*s,-n*a*o-r*i*s]}),f=p(o,s),m=new Set(u.map(e=>d(f,e)).filter(e=>e>f.min&&e<f.max));m.add(o),m.add(s);let h=1/0,g,v;for(let n of m){let r=b(e,n),[i,a]=r,c=t[0]-i,l=t[1]-a,u=c*c+l*l;u<h&&(g=(n-o)/(s-o),v=r,h=u)}return{t:g,curvePoint:v,distance:Math.sqrt(h)}}function T(e,t,n){let r=y(t,n),{a:i,b:a,u1:o,u2:s,cosR:c,sinR:u,isInvalid:f}=r,m=n.a[0];if(l(e,t),l(e,m),f)return e;let h=Math.atan2(-a*u,i*c),g=h+Math.PI,_=Math.atan2(a*c,i*u),v=_+Math.PI,x=p(o,s);for(let t of[h,g,_,v].map(e=>d(x,e)))t>x.min&&t<x.max&&l(e,b(r,t));return e}function E(e,t,n){let[r,i,a,o,s,c,l]=t.a,u=y(e,t),{u1:d,u2:f,isInvalid:p}=u,m=f-d;if(p)return Math.sqrt(h(e,r));let _=[0,0],v=0,S=[x(u,0),x(u,.25),x(u,.5),x(u,.75),x(u,1)];for(let e=0;e<14;e++){let e=S.length-1,t=m/(e*2),r=[];for(let n=0;n<e;n++)r.push(S[n]),r.push(b(u,d+(n*2+1)*t));r.push(S[S.length-1]),S=r,v=0;let a=0;for(let e=1;e<S.length;e++){let t=S[e-1],n=S[e];if(v+=Math.sqrt(h(t,n)),e>1){let r=S[e-2],o=g(_,r,t,i,n);a+=o?Math.sqrt(h(t,o)):Math.abs(n[0]-t[0])+Math.abs(n[1]-t[1])}else a+=v}if(a-v<n)return v}return v}const D=i(),O=i(),k=i(),A=i();function j(i,o,s){let[c,l,u,d,f,p,g]=o.a,{cosR:_,sinR:v,a:b,b:x,cx:S,cy:C}=y(i,o),w=a([0,0],c,s),T=a([0,0],l,s),E=s[0]*s[4]<0?1-d:d;{let t=b*b*v*v+x*x*_*_,n=2*(x*x-b*b)*v*_,r=b*b*_*_+x*x*v*v,i=-2*t*S-n*C,a=-n*S-2*r*C,o=t*S*S+n*S*C+r*C*C-b*b*x*x;e(D,t,n/2,i/2,n/2,r,a/2,i/2,a/2,o)}if(t(O,s),O==null){let e=a([0,0],i,s);return{a:[w,T,u,d,m(w[1],w[0]),Math.sqrt(h(w,e))/2,0]}}n(k,O),r(A,r(A,k,D),O);{let e=A[0],t=2*A[1],n=A[4],r=2*A[2],i=2*A[5],a=A[8],o=t*t-4*e*n,s=2*(e*i*i+n*r*r-t*r*i+o*a),c=Math.sqrt((e-n)**2+t*t),l=-Math.sqrt(s*(e+n+c))/o,d=-Math.sqrt(s*(e+n-c))/o;return{a:[w,T,u,E,.5*m(-t,n-e),l,d/l]}}}export{v as DerivedEllipse,S as calculateEllipticArc7Tangent,w as closestPointOnEllipse,y as deriveEllipse,T as ellipticArcExtent,E as ellipticArcLength,x as interpolateEllipse,C as splitEllipticArc7,j as transformEllipticArc};
|
|
2
|
+
import{set as e,invert as t,transpose as n,multiply as r}from"../../../core/libs/gl-matrix-2/math/mat3.js";import{create as i}from"../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{transformMat3 as a,exactEquals as o,normalize as s,add as c}from"../../../core/libs/gl-matrix-2/math/vec2.js";import{expandPointInPlace as l}from"../aaBoundingRect.js";import{cloneCurve as u}from"./curveUtils.js";import{angularRangeWrap as d,angularRangeOriented as f,angularRange as p,wrapAtan2 as m,distance2 as h,intersectLineLine as g,findClosestAndFurthestCurveParametersToPoint as _}from"./mathUtils.js";class v{constructor(e,t,n,r,i,a,o,s,c){this.cx=e,this.cy=t,this.a=n,this.b=r,this.cosR=i,this.sinR=a,this.u1=o,this.u2=s,this.isInvalid=c}}function y(e,t){let[n,r,i,a,o,s,c]=t.a,[l,u]=e,[d,p]=n,[h,g]=r,_=s*c,y=Math.cos(o),b=Math.sin(o),[x,S]=f(m(1/_*(u-g)*y-1/_*(l-h)*b,1/s*(u-g)*b+1/s*(l-h)*y),Math.atan2(1/_*(p-g)*y-1/_*(d-h)*b,1/s*(p-g)*b+1/s*(d-h)*y),i,a);return new v(h,g,s,_,y,b,x,S,s===0||_===0)}function b(e,t){let{a:n,b:r,cosR:i,sinR:a,cx:o,cy:s}=e,c=Math.cos(t),l=Math.sin(t);return[n*c*i-r*l*a+o,n*c*a+r*l*i+s]}function x(e,t){let{u1:n,u2:r}=e;return b(e,n*(1-t)+r*t)}function S(e,t){let[n,r]=t.a[0],{a:i,b:a,cx:l,cy:u,cosR:d,sinR:f,isInvalid:p,u1:m,u2:h}=y(e,t);if(p){let[t,i]=e;return o([t,i],[n,r])?null:[n-t,r-i]}let g=Math.sqrt(i*i-a*a),_=[l+g*d,u+g*f],v=[l-g*d,u-g*f],b=[n-_[0],r-_[1]],x=[n-v[0],r-v[1]];s(b,b),s(x,x);let[S,C]=c(b,b,x);return h>m?[-C,S]:[C,S]}function C(e,t,n){if(n<0||n>1)return[];if(n===0||n===1)return[u(t)];let[r,[i,a],o,s,c,l,d]=t.a,{u1:f,u2:p}=e,m=x(e,n),h=f*(1-n)+p*n,g=+(Math.abs(h-f)<Math.PI),_=+(Math.abs(p-h)<Math.PI);return[{a:[[...m],[i,a],g,s,c,l,d]},{a:[[...r],[i,a],_,s,c,l,d]}]}function w(e,t){let{a:n,b:r,cosR:i,sinR:a,u1:o,u2:s}=e,c=Math.PI/6,l=[1*c,2*c,4*c,5*c,7*c,8*c,10*c,11*c],u=_(t,l,t=>{let o=Math.cos(t),s=Math.sin(t),[c,l]=b(e,t);return[c,l,-n*i*s-r*a*o,-n*a*s+r*i*o,-n*i*o+r*a*s,-n*a*o-r*i*s]}),f=p(o,s),m=new Set(u.map(e=>d(f,e)).filter(e=>e>f.min&&e<f.max));m.add(o),m.add(s);let h=1/0,g,v;for(let n of m){let r=b(e,n),[i,a]=r,c=t[0]-i,l=t[1]-a,u=c*c+l*l;u<h&&(g=(n-o)/(s-o),v=r,h=u)}return{t:g,curvePoint:v,distance:Math.sqrt(h)}}function T(e,t,n){let r=y(t,n),{a:i,b:a,u1:o,u2:s,cosR:c,sinR:u,isInvalid:f}=r,m=n.a[0];if(l(e,t),l(e,m),f)return e;let h=Math.atan2(-a*u,i*c),g=h+Math.PI,_=Math.atan2(a*c,i*u),v=_+Math.PI,x=p(o,s);for(let t of[h,g,_,v].map(e=>d(x,e)))t>x.min&&t<x.max&&l(e,b(r,t));return e}function E(e,t,n){let[r,i,a,o,s,c,l]=t.a,u=y(e,t),{u1:d,u2:f,isInvalid:p}=u,m=f-d;if(p)return Math.sqrt(h(e,r));let _=[0,0],v=0,S=[x(u,0),x(u,.25),x(u,.5),x(u,.75),x(u,1)];for(let e=0;e<14;e++){let e=S.length-1,t=m/(e*2),r=[];for(let n=0;n<e;n++)r.push(S[n]),r.push(b(u,d+(n*2+1)*t));r.push(S[S.length-1]),S=r,v=0;let a=0;for(let e=1;e<S.length;e++){let t=S[e-1],n=S[e];if(v+=Math.sqrt(h(t,n)),e>1){let r=S[e-2],o=g(_,r,t,i,n);a+=o?Math.sqrt(h(t,o)):Math.abs(n[0]-t[0])+Math.abs(n[1]-t[1])}else a+=v}if(a-v<n)return v}return v}const D=i(),O=i(),k=i(),A=i();function j(i,o,s){let[c,l,u,d,f,p,g]=o.a,{cosR:_,sinR:v,a:b,b:x,cx:S,cy:C}=y(i,o),w=a([0,0],c,s),T=a([0,0],l,s),E=s[0]*s[4]<0?1-d:d;{let t=b*b*v*v+x*x*_*_,n=2*(x*x-b*b)*v*_,r=b*b*_*_+x*x*v*v,i=-2*t*S-n*C,a=-n*S-2*r*C,o=t*S*S+n*S*C+r*C*C-b*b*x*x;e(D,t,n/2,i/2,n/2,r,a/2,i/2,a/2,o)}if(t(O,s),O==null){let e=a([0,0],i,s);return{a:[w,T,u,d,m(w[1],w[0]),Math.sqrt(h(w,e))/2,0]}}n(k,O),r(A,r(A,k,D),O);{let e=A[0],t=2*A[1],n=A[4],r=2*A[2],i=2*A[5],a=A[8],o=t*t-4*e*n,s=2*(e*i*i+n*r*r-t*r*i+o*a),c=Math.sqrt((e-n)**2+t*t),l=-Math.sqrt(s*(e+n+c))/o,d=-Math.sqrt(s*(e+n-c))/o;return{a:[w,T,u,E,.5*m(-t,n-e),l,d/l]}}}function M(e,t){let[n,r]=e,[i,[a,o],s,c,l,u,d]=t.a,[f,p]=i;if(d<1e-8||u===0){t.a=[i,[0,0],0,0,0,0,0];return}let m=u*d,h=Math.cos(l),g=Math.sin(l);function _(e,t){let n=(e*h+t*g)/u,r=(t*h-e*g)/m;return n*n+r*r}let v=_(n-a,r-o),y=_(f-a,p-o);if(v===1&&y===1)return;if(Math.hypot(f-n,p-r)<1e-8){s?t.a=[i,[0,0],0,0,0,0,0]:t.a[5]*=Math.sqrt(v);return}let b=(h*(n-f)+g*(r-p))/2,x=(-g*(n-f)+h*(r-p))/2,S=u*u,C=m*m,w=b*b,T=x*x*S-C*w,E=Math.sqrt((S*C-T)/T);isNaN(E)&&(E=0),!s==!c&&(E=-E);let D=E*x*u/m,O=E*b*m/u;t.a[1]=[h*D-g*O+(n+f)/2,g*D+h*O+(r+p)/2]}export{v as DerivedEllipse,S as calculateEllipticArc7Tangent,w as closestPointOnEllipse,y as deriveEllipse,T as ellipticArcExtent,E as ellipticArcLength,x as interpolateEllipse,M as normalizeEllipticArcAfterEndpointChange,C as splitEllipticArc7,j as transformEllipticArc};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
+
function e(e,t){let n=.5*(e.xmin+e.xmax),r=.5*(e.ymin+e.ymax),i=.5*(e.xmax-e.xmin),a=.5*(e.ymax-e.ymin),o=1/Math.sqrt(t.x*t.x/(i*i)+t.y*t.y/(a*a));return{x:n+t.x*o,y:r+t.y*o}}function t(e,t,n){let r=.5*(e.xmin+e.xmax),i=.5*(e.ymin+e.ymax),a=.5*(e.xmax-e.xmin),o=.5*(e.ymax-e.ymin),s=t.x-r,c=t.y-i,l=n.x-t.x,u=n.y-t.y,d=l*l/(a*a)+u*u/(o*o),f=2*(s*l/(a*a)+c*u/(o*o)),p=s*s/(a*a)+c*c/(o*o)-1,m=Math.max(f*f-4*d*p,0),h=(-f-Math.sqrt(m))/(2*d),g=(-f+Math.sqrt(m))/(2*d),_=h>=0&&h<=1?h:g;return{x:t.x+l*_,y:t.y+u*_}}export{e as intersectEllipseDirection,t as intersectEllipseSegment};
|
package/interfaces.d.ts
CHANGED
|
@@ -9920,6 +9920,12 @@ declare namespace __esri {
|
|
|
9920
9920
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
9921
9921
|
export type summaryStatisticsForAgeSummaryStatisticsForAgeParameters = import("./smartMapping/statistics/types.js").SummaryStatisticsForAgeParameters;
|
|
9922
9922
|
|
|
9923
|
+
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
9924
|
+
export type summaryStatisticsForTimeSeriesSummaryStatisticsForTimeSeriesParameters = import("./smartMapping/statistics/types.js").SummaryStatisticsForTimeSeriesParameters;
|
|
9925
|
+
|
|
9926
|
+
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
9927
|
+
export type histogramForTimeSeriesHistogramForTimeSeriesParameters = import("./smartMapping/statistics/types.js").HistogramForTimeSeriesParameters;
|
|
9928
|
+
|
|
9923
9929
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
9924
9930
|
export type dotDensityCreateRendererParametersAttributes = import("./smartMapping/statistics/types.js").Attribute;
|
|
9925
9931
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
@@ -13119,15 +13125,6 @@ declare namespace __esri {
|
|
|
13119
13125
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
13120
13126
|
export type EditorSketchUpdateEventHandler = (event: EditorSketchUpdateEvent) => void;
|
|
13121
13127
|
|
|
13122
|
-
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
13123
|
-
export type EditorStartCreateFeaturesWorkflowAtFeatureEditParams = import("./widgets/Editor.js").EditorStartCreateFeaturesWorkflowAtFeatureEditParameters;
|
|
13124
|
-
|
|
13125
|
-
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
13126
|
-
export type EditorStartMergeFeaturesWorkflowOptions = import("./widgets/Editor.js").EditorStartMergeFeaturesWorkflowOptions;
|
|
13127
|
-
|
|
13128
|
-
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
13129
|
-
export type EditorStartSplitFeatureWorkflowOptions = import("./widgets/Editor.js").EditorStartSplitFeatureWorkflowOptions;
|
|
13130
|
-
|
|
13131
13128
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
13132
13129
|
export type CreateFeaturesCreationInfo = import("./widgets/Editor.js").CreateFeaturesCreationInfo;
|
|
13133
13130
|
|
|
@@ -14259,15 +14256,6 @@ declare namespace __esri {
|
|
|
14259
14256
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14260
14257
|
export type EditorViewModelSketchUpdateEventHandler = (event: EditorViewModelSketchUpdateEvent) => void;
|
|
14261
14258
|
|
|
14262
|
-
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14263
|
-
export type EditorViewModelStartCreateFeaturesWorkflowAtFeatureEditParams = import("./widgets/Editor/EditorViewModel.js").EditorViewModelStartCreateFeaturesWorkflowAtFeatureEditParameters;
|
|
14264
|
-
|
|
14265
|
-
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14266
|
-
export type EditorViewModelStartMergeFeaturesWorkflowOptions = import("./widgets/Editor/EditorViewModel.js").EditorViewModelStartMergeFeaturesWorkflowOptions;
|
|
14267
|
-
|
|
14268
|
-
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14269
|
-
export type EditorViewModelStartSplitFeatureWorkflowOptions = import("./widgets/Editor/EditorViewModel.js").EditorViewModelStartSplitFeatureWorkflowOptions;
|
|
14270
|
-
|
|
14271
14259
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14272
14260
|
export type EditsProperties = import("./widgets/Editor/Edits.js").EditsProperties;
|
|
14273
14261
|
|
|
@@ -14345,6 +14333,15 @@ declare namespace __esri {
|
|
|
14345
14333
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14346
14334
|
export type CreationInfo = import("./widgets/Editor/types.js").CreationInfo;
|
|
14347
14335
|
|
|
14336
|
+
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14337
|
+
export type EditorStartCreateFeaturesWorkflowAtFeatureEditParams = import("./widgets/Editor/types.js").EditorStartCreateFeaturesWorkflowAtFeatureEditParameters;
|
|
14338
|
+
|
|
14339
|
+
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14340
|
+
export type EditorStartMergeFeaturesWorkflowOptions = import("./widgets/Editor/types.js").EditorStartMergeFeaturesWorkflowOptions;
|
|
14341
|
+
|
|
14342
|
+
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14343
|
+
export type EditorStartSplitFeatureWorkflowOptions = import("./widgets/Editor/types.js").EditorStartSplitFeatureWorkflowOptions;
|
|
14344
|
+
|
|
14348
14345
|
/** @deprecated since 5.0. Refactor using \@arcgis/codemod */
|
|
14349
14346
|
export type SupportingWidgetDefaultsAttachments = import("./widgets/Editor/types.js").AttachmentsProperties;
|
|
14350
14347
|
|
package/kernel.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import has from"./core/has.js";import{addQueryParameter as e}from"./core/urlUtils.js";
|
|
2
|
+
import has from"./core/has.js";import{addQueryParameter as e}from"./core/urlUtils.js";Symbol.dispose??=Symbol(`Symbol.dispose`),Symbol.asyncDispose??=Symbol(`Symbol.asyncDispose`);const t=`5.2`;let n=`5.2`;n=`5.2.0-next.138`;let r;function i(e){r=e}function a(t){let n=r?.findCredential(t);return n?.token?e(t,`token`,n.token):t}has(`host-webworker`)||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has(`host-webworker`);export{a as addTokenParameter,n as fullVersion,r as id,i as setId,t as version};
|