@arcgis/core 5.2.0-next.124 → 5.2.0-next.126
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/ElevationProfile/ElevationProfileDisplayUnits.d.ts +3 -2
- package/analysis/VolumeMeasurement/VolumeMeasurementDisplayUnits.d.ts +1 -0
- package/arcade/functions/string.js +1 -1
- package/arcgisGlobal.d.ts +2 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/05afa8c2b5929ce0545a.js +1 -0
- package/assets/esri/core/workers/chunks/0a20f84b5f004a77a9f9.js +1 -0
- package/assets/esri/core/workers/chunks/{97cd4145c016cf379120.js → 0a2b7c691a577cb3d189.js} +1 -1
- package/assets/esri/core/workers/chunks/0ccd4200c5a2a5de6e16.js +1 -0
- package/assets/esri/core/workers/chunks/{064445e6f9512817ac87.js → 12b5a645c0987a0efe54.js} +2 -2
- package/assets/esri/core/workers/chunks/{bdf012e591a8476db467.js → 1406a884241809b62bff.js} +1 -1
- package/assets/esri/core/workers/chunks/168b45c5d8233f23793e.js +2 -0
- package/assets/esri/core/workers/chunks/17218d714cb07b607c2f.js +1 -0
- package/assets/esri/core/workers/chunks/1d040aa8951fff3141d9.js +1 -0
- package/assets/esri/core/workers/chunks/{ce08e3369641da0d7a27.js → 1dbb3e25e005a8220779.js} +2 -2
- package/assets/esri/core/workers/chunks/{c39ebd8d469f1e8bb61e.js → 25e212fe9a2ea37c9e81.js} +1 -1
- package/assets/esri/core/workers/chunks/{216d8cb86548e92a8196.js → 2e3fd81653dc0d86456c.js} +1 -1
- package/assets/esri/core/workers/chunks/30604a29df320d7a4c6b.js +1 -0
- package/assets/esri/core/workers/chunks/3a40146568e6dd0b1828.js +1 -0
- package/assets/esri/core/workers/chunks/3ef367c9b7bf1588307d.js +1 -0
- package/assets/esri/core/workers/chunks/4327d2c39a660bd89da7.js +1 -0
- package/assets/esri/core/workers/chunks/4678a8170d8a3ccd1a7b.js +1 -0
- package/assets/esri/core/workers/chunks/{45d87af48a21644590c2.js → 4716693eca44e8f89f5c.js} +1 -1
- package/assets/esri/core/workers/chunks/474d9541d387b31ad275.js +1 -0
- package/assets/esri/core/workers/chunks/{20e4277a4a6c57957202.js → 4d18451e0ea6ca54101a.js} +1 -1
- package/assets/esri/core/workers/chunks/{26bc509a031788bfa678.js → 4f464047c6f6c9486efd.js} +1 -1
- package/assets/esri/core/workers/chunks/{58528ccb7f72ae76d52b.js → 540f60e31b19d85e9371.js} +1 -1
- package/assets/esri/core/workers/chunks/{44857a76be2c0ac65bb9.js → 55a560fd872f7463b33d.js} +1 -1
- package/assets/esri/core/workers/chunks/56acda1eed3a013430e2.js +1 -0
- package/assets/esri/core/workers/chunks/56e97b98dcb8a3f2bcb7.js +1 -0
- package/assets/esri/core/workers/chunks/{eb7f45736c852725b0bb.js → 57ab87e70ef85b9405f9.js} +122 -122
- package/assets/esri/core/workers/chunks/{59cd139712d919e6a738.js → 5adf2792416b22cd602f.js} +1 -1
- package/assets/esri/core/workers/chunks/5fe5ef5ccf480634d159.js +1 -0
- package/assets/esri/core/workers/chunks/67678054342178b601cf.js +1 -0
- package/assets/esri/core/workers/chunks/67dcf9b873cb037b2647.js +1 -0
- package/assets/esri/core/workers/chunks/6c3535aa7250c08b9e5b.js +1 -0
- package/assets/esri/core/workers/chunks/6e8187a77846239ed112.js +2 -0
- package/assets/esri/core/workers/chunks/76548469fe1b9c3b2051.js +1 -0
- package/assets/esri/core/workers/chunks/{52744dfd430cd0c0edfb.js → 78abd6c42f39e6f6ffbb.js} +1 -1
- package/assets/esri/core/workers/chunks/{5993db944b9e7825e0bc.js → 7926faab76a721a2e1c4.js} +1 -1
- package/assets/esri/core/workers/chunks/7d6da4e89aa951e6523f.js +1 -0
- package/assets/esri/core/workers/chunks/7dd94567833386dc74de.js +1 -0
- package/assets/esri/core/workers/chunks/{dc0816f064be576a2fa6.js → 7fcee3a1b900ddc9a5e3.js} +1 -1
- package/assets/esri/core/workers/chunks/806f96ad09e882be41af.js +1 -0
- package/assets/esri/core/workers/chunks/8190fcb1dd10ad20feed.js +1 -0
- package/assets/esri/core/workers/chunks/84db05e872dbf35c80a2.js +1 -0
- package/assets/esri/core/workers/chunks/85739ed6af0f0a3cb302.js +1 -0
- package/assets/esri/core/workers/chunks/{b22de8bf4a4a739bc36d.js → 97602019a1ccad22a03a.js} +1 -1
- package/assets/esri/core/workers/chunks/9ca98fffd43e63d5ade3.js +1 -0
- package/assets/esri/core/workers/chunks/9d6a96e4c7ccedcb0c13.js +1 -0
- package/assets/esri/core/workers/chunks/9ec04faad97be55309b8.js +1 -0
- package/assets/esri/core/workers/chunks/a08385ebf1715414c1a6.js +1 -0
- package/assets/esri/core/workers/chunks/{e22a013ec38989caf9de.js → a790fc6b22acf651574b.js} +1 -1
- package/assets/esri/core/workers/chunks/{2f52ad525744b8793d49.js → a8258636096416c837a2.js} +1 -1
- package/assets/esri/core/workers/chunks/{770ca70d363184e39d60.js → ab8a1140bf31f46f8ebf.js} +1 -1
- package/assets/esri/core/workers/chunks/{813dd84933b407c8fe86.js → b34305474a861aaf6ccb.js} +1 -1
- package/assets/esri/core/workers/chunks/{dc923e50958b68a50014.js → b96358d475dc98034aa4.js} +1 -1
- package/assets/esri/core/workers/chunks/ba435cc73956d9c64a11.js +1 -0
- package/assets/esri/core/workers/chunks/c5b733c3a5b2680042a2.js +1 -0
- package/assets/esri/core/workers/chunks/{f0709c48daca93e759c8.js → c692e583e87af58f6d91.js} +1 -1
- package/assets/esri/core/workers/chunks/{39985c51465b79ff0910.js → c77496c350004ee66eb2.js} +1 -1
- package/assets/esri/core/workers/chunks/{9e5b30b907102bc0c201.js → cb7cb7d57c4e7f76600f.js} +1 -1
- package/assets/esri/core/workers/chunks/{58a17fb3c0dd07c63d57.js → cfaba0470619786e1ef8.js} +2 -2
- package/assets/esri/core/workers/chunks/d371d9279b30548efa02.js +1 -0
- package/assets/esri/core/workers/chunks/d5f0fed415b5b155d57c.js +1 -0
- package/assets/esri/core/workers/chunks/{d3d48401462ef3bf0ad9.js → d5f72670634e73c0b53a.js} +1 -1
- package/assets/esri/core/workers/chunks/d6e914f6ed45ea59034e.js +1 -0
- package/assets/esri/core/workers/chunks/{5afc12671a9a1bb6c56c.js → dc52e036547612949d32.js} +1 -1
- package/assets/esri/core/workers/chunks/e0894a308c84d5c158b0.js +1 -0
- package/assets/esri/core/workers/chunks/e1ae83ff3e0225708d4d.js +1 -0
- package/assets/esri/core/workers/chunks/e35eb93c0fb1f6de8db0.js +1 -0
- package/assets/esri/core/workers/chunks/{df79c00b5ddbef7148a0.js → eaa7cb3ffa8c11706a09.js} +1 -1
- package/assets/esri/core/workers/chunks/eebbc86a15ae3adb5f38.js +1 -0
- package/assets/esri/core/workers/chunks/{eb780f2dafa14f776166.js → f71ec8a260405ed07958.js} +1 -1
- package/assets/esri/core/workers/chunks/fdbda3d2afea25142b86.js +1 -0
- package/assets/esri/libs/pdfjs/pdf.worker.mjs +4 -63051
- package/assets/esri/themes/base/_FocusRegionOverlayItem.scss +18 -0
- package/assets/esri/themes/base/_View.scss +4 -0
- package/assets/esri/themes/base/_core.scss +1 -0
- package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +13 -0
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.ar.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.bg.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.bs.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.ca.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.cs.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.da.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.de.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.el.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.en.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.es.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.et.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.fi.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.fr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.he.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.hr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.hu.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.id.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.it.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.ja.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.ko.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.lt.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.lv.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.nl.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.no.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.pl.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.pt-BR.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.pt-PT.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.ro.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.ru.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.sk.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.sl.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.sr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.sv.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.th.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.tr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.uk.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.vi.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.zh-CN.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.zh-HK.json +1 -1
- package/assets/esri/widgets/Editor/t9n/messages.zh-TW.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.ar.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.bg.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.bs.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.ca.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.cs.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.da.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.de.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.el.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.es.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.et.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.fi.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.fr.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.he.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.hr.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.hu.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.id.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.it.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.ja.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.ko.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.lt.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.lv.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.nl.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.no.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.pl.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.pt-BR.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.pt-PT.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.ro.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.ru.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.sk.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.sl.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.sr.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.sv.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.th.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.tr.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.uk.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.vi.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.zh-CN.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.zh-HK.json +1 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/messages.zh-TW.json +1 -1
- package/chunks/GaussianSplatColorComposition.glsl.js +2 -0
- package/chunks/GaussianSplatEmissionComposition.glsl.js +11 -0
- package/chunks/GlobalIllumination.glsl.js +9 -9
- package/chunks/GlobalIlluminationBlur.glsl.js +8 -8
- package/chunks/HeatmapDensity.glsl.js +5 -5
- package/chunks/Pattern.glsl.js +30 -30
- package/chunks/RibbonLine.glsl.js +19 -19
- package/chunks/earcut.js +1 -1
- package/chunks/portal.js +1 -1
- package/config.js +1 -1
- package/core/accessorSupport/types.d.ts +5 -1
- package/graphic/MapImageGraphicOrigin.js +1 -1
- package/graphic/TileGraphicOrigin.js +1 -1
- package/interfaces.d.ts +8 -0
- package/kernel.js +1 -1
- package/layers/OrientedImageryLayer.js +1 -1
- package/layers/ParquetLayer.d.ts +3 -2
- package/layers/ParquetLayer.js +1 -1
- package/layers/SceneLayer.js +1 -1
- package/layers/geospatialPDF/GeospatialPDFFrame.js +1 -1
- package/layers/geospatialPDF/GeospatialPDFLayerWorker.js +2 -2
- package/layers/geospatialPDF/GeospatialPDFWorkerClient.js +1 -1
- package/layers/geospatialPDF/LGIDictMapFrame.js +1 -1
- package/layers/geospatialPDF/ViewportMeasureFrame.js +1 -1
- package/layers/geospatialPDF/geospatialPDFParserUtils.js +2 -0
- package/layers/geospatialPDF/projectionToWKTUtils.js +2 -0
- package/layers/geospatialPDF/renderExtentUtils.js +1 -1
- package/layers/geospatialPDF/sharedUtils.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/TemporalLayer.js +1 -1
- package/layers/orientedImagery/transformations/imageToWorld.js +1 -1
- package/layers/orientedImagery/transformations/utils.js +1 -1
- package/layers/raster/datasets/GeospatialPDFRaster.js +1 -1
- package/layers/raster/types.d.ts +6 -0
- package/layers/support/TimeInfo.js +1 -1
- package/layers/support/TimeSeriesCalculation.d.ts +32 -0
- package/layers/support/TimeSeriesCalculation.js +2 -0
- package/layers/support/TimeSeriesInfo.d.ts +19 -0
- package/layers/support/TimeSeriesInfo.js +1 -1
- package/layers/support/commonProperties.js +1 -1
- package/layers/support/layersMapping.js +1 -1
- package/layers/support/timeSeriesUtils.d.ts +25 -1
- package/layers/support/timeSeriesUtils.js +1 -1
- package/layers/types.d.ts +1 -0
- package/package.json +2 -2
- package/popup/FeatureContentCollection.d.ts +12 -2
- package/popup/FeatureContentCollection.js +1 -1
- package/popup/types.d.ts +14 -3
- package/portal/schemas/definitions.js +1 -1
- package/portal/schemas/sceneLayerItem.js +1 -1
- package/renderers/support/AuthoringInfo.d.ts +8 -1
- package/renderers/support/AuthoringInfo.js +1 -1
- package/renderers/support/AuthoringInfoVisualVariable.d.ts +8 -1
- package/renderers/support/AuthoringInfoVisualVariable.js +1 -1
- package/rest/imageService/fetchRasterInfo.js +1 -1
- package/rest/knowledgeGraph/DataModel.js +1 -1
- package/smartMapping/renderers/color.d.ts +12 -0
- package/smartMapping/renderers/color.js +1 -1
- package/smartMapping/renderers/opacity.d.ts +6 -0
- package/smartMapping/renderers/opacity.js +1 -1
- package/smartMapping/renderers/size.d.ts +12 -0
- package/smartMapping/renderers/size.js +1 -1
- package/smartMapping/renderers/support/regenerateUtils.js +1 -1
- package/smartMapping/renderers/support/rendererUtils.js +1 -1
- package/smartMapping/renderers/support/timeSeriesUtils.js +1 -1
- package/smartMapping/renderers/type.d.ts +6 -0
- package/smartMapping/renderers/type.js +1 -1
- package/smartMapping/renderers/univariateColorSize.d.ts +6 -0
- package/smartMapping/renderers/univariateColorSize.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/support/gfxUtils.js +1 -1
- package/symbols/support/previewSymbol3D.js +1 -1
- package/symbols/support/svgUtils.js +1 -1
- package/time/timeZoneUtils.js +1 -1
- package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
- package/views/2d/analysis/AreaMeasurementAnalysisView2D.d.ts +8 -0
- package/views/2d/analysis/AreaMeasurementAnalysisView2D.js +1 -1
- package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
- package/views/2d/analysis/DistanceMeasurementAnalysisView2D.d.ts +8 -0
- package/views/2d/analysis/DistanceMeasurementAnalysisView2D.js +1 -1
- package/views/2d/analysis/ElevationProfileAnalysisView2D.d.ts +3 -2
- package/views/3d/analysis/AreaMeasurementAnalysisView3D.js +1 -1
- package/views/3d/analysis/Dimension/DimensionController.js +1 -1
- package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.js +1 -1
- package/views/3d/analysis/ElevationProfileAnalysisView3D.d.ts +3 -2
- package/views/3d/analysis/LineOfSight/LineOfSightEditTool.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightItemTool.js +1 -1
- package/views/3d/analysis/LineOfSight/lineOfSightPlacementUtils.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
- package/views/3d/analysis/VolumeMeasurementAnalysisView3D.d.ts +1 -0
- package/views/3d/analysis/VolumeMeasurementAnalysisView3D.js +1 -1
- package/views/3d/input/handlers/DragRotate.js +1 -1
- package/views/3d/input/handlers/PinchAndPanNavigation.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/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
- package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js +1 -1
- package/views/3d/interactive/placementTools/GroundNavigationPlacementTool3D.js +2 -0
- package/views/3d/navigation/Navigation3D.d.ts +7 -0
- package/views/3d/navigation/Navigation3D.js +1 -1
- package/views/3d/navigation/modes/navigationModeUtils.d.ts +32 -0
- package/views/3d/navigation/modes/navigationModeUtils.js +2 -0
- package/views/3d/state/Constraints.js +1 -1
- package/views/3d/state/controllers/GroundNavigationController.js +1 -1
- package/views/3d/state/controllers/RotateController.js +1 -1
- package/views/3d/state/utils/groundNavigationUtils.js +1 -1
- package/views/3d/support/engineContent/line.js +1 -1
- package/views/3d/support/planarDistanceToGroundRatio.js +2 -0
- package/views/3d/terrain/OverlayManager.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +13 -13
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +2 -2
- 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/lib/GaussianSplatRenderUtils.js +1 -1
- package/views/3d/webgl-engine/lib/GaussianSplatRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/GaussianSplatShadows.js +1 -1
- package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/shaders/GaussianSplatColorComposition.glsl.js +2 -0
- package/views/3d/webgl-engine/shaders/GaussianSplatColorCompositionTechnique.js +2 -0
- package/views/3d/webgl-engine/shaders/GaussianSplatDepthPolicy.js +1 -1
- package/views/3d/webgl-engine/shaders/{GaussianSplatComposition.glsl.js → GaussianSplatEmissionComposition.glsl.js} +1 -1
- package/views/3d/webgl-engine/shaders/GaussianSplatEmissionCompositionTechnique.js +2 -0
- package/views/3d/webgl-engine/shaders/GaussianSplatTechnique.js +1 -1
- package/views/DOMContainer.d.ts +27 -0
- package/views/DOMContainer.js +1 -1
- package/views/PopupView.d.ts +1 -1
- package/views/View.d.ts +10 -1
- package/views/View.js +1 -1
- package/views/analysis/ElevationProfile/ElevationProfileController.js +1 -1
- package/views/analysis/LengthDimensionResult.d.ts +4 -1
- package/views/draw/support/managers/TooltipManager.js +1 -1
- package/views/input/types.d.ts +46 -0
- package/views/interactive/options/SnappingOptions.d.ts +4 -2
- package/views/interactive/options/SnappingOptions.js +1 -1
- package/views/interactive/options/ViewOptions.d.ts +18 -0
- package/views/interactive/options/bindViewToolOptions.js +2 -0
- package/views/interactive/snapping/SnappingManagerPool.js +1 -1
- package/views/interactive/snapping/allLayerSnapping.js +1 -1
- package/views/overlay/FocusRegionOverlayItem.js +2 -0
- package/views/selection/SelectionOperation.d.ts +27 -1
- package/views/selection/types.d.ts +8 -20
- package/views/webgl/renderState.js +1 -1
- package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.d.ts +1 -0
- package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.js +1 -1
- package/widgets/AreaMeasurement2D.js +1 -1
- package/widgets/BasemapLayerList/BasemapLayerListViewModel.d.ts +1 -0
- package/widgets/BasemapLayerList.d.ts +1 -0
- package/widgets/BatchAttributeForm/expressions/types.d.ts +1 -0
- package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +2 -0
- package/widgets/BatchAttributeForm/types.d.ts +5 -1
- package/widgets/BatchAttributeForm.d.ts +1 -0
- package/widgets/Bookmarks/BookmarksViewModel.d.ts +1 -0
- package/widgets/Bookmarks.d.ts +1 -0
- package/widgets/CatalogLayerList/CatalogLayerListViewModel.d.ts +1 -0
- package/widgets/CatalogLayerList.d.ts +1 -0
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.d.ts +1 -0
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.js +1 -1
- package/widgets/DistanceMeasurement2D.js +1 -1
- package/widgets/Editor.d.ts +1 -0
- package/widgets/Editor.js +1 -1
- package/widgets/FeatureForm.d.ts +1 -0
- package/widgets/FeatureTable/FeatureTableViewModel.d.ts +37 -1
- package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.d.ts +26 -2
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/FeatureTable.d.ts +12 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/FeatureTemplates.d.ts +1 -0
- package/widgets/Features/FeaturesViewModel.d.ts +1 -0
- package/widgets/Features.d.ts +2 -1
- package/widgets/HistogramRangeSlider.d.ts +1 -0
- package/widgets/Home/HomeViewModel.d.ts +1 -0
- package/widgets/Home.d.ts +1 -0
- package/widgets/LayerList/LayerListViewModel.d.ts +1 -0
- package/widgets/LayerList.d.ts +1 -0
- package/widgets/Locate/LocateViewModel.d.ts +1 -0
- package/widgets/Locate.d.ts +1 -0
- package/widgets/OrientedImageryViewer/adapters/view/SceneViewAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/components/Alert.js +1 -1
- package/widgets/OrientedImageryViewer/navigation/NavigationManagerPanoramic.js +1 -1
- package/widgets/OrientedImageryViewer/types.d.ts +4 -1
- package/widgets/OrientedImageryViewer.d.ts +4 -1
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/Popup/types.d.ts +7 -0
- package/widgets/Popup.d.ts +1 -0
- package/widgets/Print/PrintViewModel.d.ts +1 -0
- package/widgets/Print.d.ts +1 -0
- package/widgets/Search.d.ts +1 -0
- package/widgets/Sketch.d.ts +1 -0
- package/widgets/Slider.d.ts +4 -0
- package/widgets/TimeSlider.d.ts +1 -0
- package/widgets/Track/TrackViewModel.d.ts +1 -0
- package/widgets/Track.d.ts +1 -0
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.d.ts +1 -0
- package/widgets/UtilityNetworkTrace.d.ts +1 -0
- package/widgets/ValuePicker/types.d.ts +1 -0
- package/widgets/ValuePicker.d.ts +1 -0
- package/widgets/smartMapping/SmartMappingSliderBase.d.ts +1 -0
- package/widgets/support/SelectionList/types.d.ts +2 -0
- package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.d.ts +2 -1
- package/assets/esri/core/workers/chunks/0148cb611bf7c8c5fe8a.js +0 -1
- package/assets/esri/core/workers/chunks/033debcbf6b3683dc4fe.js +0 -2
- package/assets/esri/core/workers/chunks/0acc754907395e83bbc6.js +0 -1
- package/assets/esri/core/workers/chunks/1c38ce72160d5a4e4b3d.js +0 -1
- package/assets/esri/core/workers/chunks/1e46703cb566c25458ad.js +0 -1
- package/assets/esri/core/workers/chunks/23279303cd7698314c56.js +0 -1
- package/assets/esri/core/workers/chunks/25c90092def215949db9.js +0 -1
- package/assets/esri/core/workers/chunks/29ae19206bbeb480be0f.js +0 -1
- package/assets/esri/core/workers/chunks/2f829321bfbd3bacd64f.js +0 -1
- package/assets/esri/core/workers/chunks/38890ac5917942374ab8.js +0 -1
- package/assets/esri/core/workers/chunks/463d69f596d1d34ef275.js +0 -2
- package/assets/esri/core/workers/chunks/475906b079f4f1ddacf2.js +0 -1
- package/assets/esri/core/workers/chunks/49affbed22e201f7c32b.js +0 -1
- package/assets/esri/core/workers/chunks/4c4ba466e23159991322.js +0 -1
- package/assets/esri/core/workers/chunks/4f58e0322707f63f5bf2.js +0 -1
- package/assets/esri/core/workers/chunks/606ac9358f508bda94f2.js +0 -1
- package/assets/esri/core/workers/chunks/724ea2e2843e6dac0a90.js +0 -1
- package/assets/esri/core/workers/chunks/7285a37cd5359aa4bac5.js +0 -1
- package/assets/esri/core/workers/chunks/753d1ff177ecee8e2377.js +0 -1
- package/assets/esri/core/workers/chunks/781fa83e8063b8f685dc.js +0 -1
- package/assets/esri/core/workers/chunks/78c1b75b1a8937eaa3cd.js +0 -1
- package/assets/esri/core/workers/chunks/7ff536284942c5284a16.js +0 -1
- package/assets/esri/core/workers/chunks/83c7c4218bc6ba2f16ee.js +0 -1
- package/assets/esri/core/workers/chunks/8984d02c0ce828fd223a.js +0 -1
- package/assets/esri/core/workers/chunks/8e102a2e134ce6ce0724.js +0 -1
- package/assets/esri/core/workers/chunks/92c852700ad1006f1e76.js +0 -1
- package/assets/esri/core/workers/chunks/9af36ee6a0df224859bc.js +0 -1
- package/assets/esri/core/workers/chunks/a3ab53b534e2872131be.js +0 -1
- package/assets/esri/core/workers/chunks/ac7af417ebf7721d7400.js +0 -1
- package/assets/esri/core/workers/chunks/aed479c14d93955f4798.js +0 -1
- package/assets/esri/core/workers/chunks/bb5ed2a796a45c41b0b4.js +0 -1
- package/assets/esri/core/workers/chunks/be52c319a0a81ce1ba36.js +0 -1
- package/assets/esri/core/workers/chunks/c0ec87800faf99cbd8bd.js +0 -1
- package/assets/esri/core/workers/chunks/c3008b20cb5fd38bd900.js +0 -1
- package/assets/esri/core/workers/chunks/ca5a4f62b09cc8579dc0.js +0 -1
- package/assets/esri/core/workers/chunks/d090baaa974e1e83fa44.js +0 -1
- package/assets/esri/core/workers/chunks/d25210574168ead2f813.js +0 -1
- package/assets/esri/core/workers/chunks/e4e1db4e9e5f13167401.js +0 -1
- package/assets/esri/core/workers/chunks/e9f8325a4cf89ae816cc.js +0 -1
- package/assets/esri/core/workers/chunks/ed7d4e8725aaa0ca4589.js +0 -1
- package/chunks/GaussianSplatComposition.glsl.js +0 -22
- package/layers/geospatialPDF/GeospatialPDFParserUtils.js +0 -2
- package/layers/geospatialPDF/Projection.js +0 -2
- package/views/3d/webgl-engine/shaders/GaussianSplatCompositionTechnique.js +0 -2
- package/views/3d/webgl-engine/shaders/GaussianSplatCompositionTechniqueConfiguration.js +0 -2
- /package/assets/esri/core/workers/chunks/{064445e6f9512817ac87.js.LICENSE.txt → 12b5a645c0987a0efe54.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{033debcbf6b3683dc4fe.js.LICENSE.txt → 168b45c5d8233f23793e.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{463d69f596d1d34ef275.js.LICENSE.txt → 1dbb3e25e005a8220779.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{ce08e3369641da0d7a27.js.LICENSE.txt → 6e8187a77846239ed112.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{58a17fb3c0dd07c63d57.js.LICENSE.txt → cfaba0470619786e1ef8.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{multiplyOpacity as i}from"../../../../core/colorUtils.js";import{makeHandle as s}from"../../../../core/handleUtils.js";import{isAborted as a,ignoreAbortErrors as o}from"../../../../core/promiseUtils.js";import{watch as r,initial as n}from"../../../../core/reactiveUtils.js";import{property as l,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as c}from"../../../../core/support/UpdatingHandles.js";import p from"../../../../symbols/SimpleFillSymbol.js";import m from"../../../../symbols/SimpleLineSymbol.js";import{ExclusiveOperationManager as d}from"../../../analysis/ExclusiveOperationManager.js";import u from"../../../../widgets/Sketch/SketchViewModel.js";function
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{multiplyOpacity as i}from"../../../../core/colorUtils.js";import{makeHandle as s}from"../../../../core/handleUtils.js";import{isAborted as a,ignoreAbortErrors as o}from"../../../../core/promiseUtils.js";import{watch as r,initial as n}from"../../../../core/reactiveUtils.js";import{property as l,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as c}from"../../../../core/support/UpdatingHandles.js";import p from"../../../../symbols/SimpleFillSymbol.js";import m from"../../../../symbols/SimpleLineSymbol.js";import{ExclusiveOperationManager as d}from"../../../analysis/ExclusiveOperationManager.js";import{bindViewToolOptions as u}from"../../../interactive/options/bindViewToolOptions.js";import y from"../../../../widgets/Sketch/SketchViewModel.js";function w(e){return"polygon"===e?.type}let _=class extends t{constructor(e){super(e),this._invisibleAreaSymbol=new p({color:null,outline:null}),this._invisibleLineSymbol=new m({color:null,width:0}),this._operationManager=new d,this._updatingHandles=new c}initialize(){this._sketchViewModel=new y({defaultCreateOptions:{mode:"click"},defaultUpdateOptions:{enableMoveAllGraphics:!1,enableRotation:!1,enableScaling:!1,enableZ:!1,highlightOptions:{enabled:!1},multipleSelectionEnabled:!1,reshapeOptions:{edgeOperation:"none",shapeOperation:"none"},toggleToolOnClick:!1,tool:"reshape"},updateOnGraphicClick:!1,cancelUpdateOnClickAway:!1,view:this.view}),this.addHandles([r(()=>({interactive:this.measurementViewData.interactive,visible:this.measurementViewData.visible}),({interactive:e,visible:t})=>{t&&e&&this._analysis.geometry?"place"!==this._operationManager.currentOperationType&&this.reshape().catch(()=>{}):this._operationManager.stop()}),r(()=>this.measurementViewData.analysis.geometry,e=>{e||(this._operationManager.stop(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll())}),r(()=>this.measurementViewData.snappingOptions,e=>{this._sketchViewModel&&(this._sketchViewModel.snappingOptions=e)},n),u(this._sketchViewModel.sketchOptions,()=>this.view.options),r(()=>this.view.effectiveTheme.accentColor,e=>{this._areaSymbol=new p({color:i(e,.3),outline:new m({color:e,width:2})})},n)])}destroy(){this._areaSymbol?.destroy(),this._invisibleAreaSymbol.destroy(),this._invisibleLineSymbol.destroy(),this._operationManager.destroy(),this._sketchViewModel?.destroy(),this._updatingHandles.destroy()}get state(){if(!this.measurementViewData.visible||!this._operationManager.currentOperationType)return"idle";switch(this._operationManager.currentOperationType){case"place":return"placing";case"reshape":return"reshaping"}}get updating(){return!this._sketchViewModel||this._sketchViewModel.updating||this._updatingHandles.updating}async place(e){return this._operationManager.start("place",async t=>{if(!this._sketchViewModel||!this.measurementViewData.sketchGraphicsLayer)return;const i=this._analysis.clone(),r=e=>{const i="state"in e?e.state:"active",s="graphic"in e?e.graphic:e.graphics?.at(0);switch(i){case"start":case"active":{const e=s?.geometry;"polygon"===e?.type&&(this._analysis.geometry=e);break}case"cancel":case"complete":t.stop(),o(this.reshape())}},n=this._sketchViewModel.on(["create","undo","redo"],r);t.handles.push(n,s(()=>{n.remove(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll();const s=this._analysis;return s.valid?a(e)||i.equals(s)?t.reject():void t.resolve({}):(s.clear(),t.reject())})),this._sketchViewModel.activeLineSymbol=this._invisibleLineSymbol,this._sketchViewModel.polygonSymbol=this._invisibleAreaSymbol,this._sketchViewModel.layer=this.measurementViewData.sketchGraphicsLayer,this._updatingHandles.consumePromise(o(this._sketchViewModel.create("polygon")))},e)}async reshape(e){return this._operationManager.start("reshape",async t=>{if(!this._sketchViewModel)return;const i=()=>this._areaSymbol&&this._sketchViewModel&&this.measurementViewData.manipulatorGraphic&&this.measurementViewData.manipulatorGraphicsLayer?(this._sketchViewModel.activeLineSymbol=null,this._sketchViewModel.polygonSymbol=this._areaSymbol,this._sketchViewModel.layer=this.measurementViewData.manipulatorGraphicsLayer,this._updatingHandles.addPromise(o(this._sketchViewModel.update(this.measurementViewData.manipulatorGraphic,{tool:"reshape"})))):Promise.resolve(),r=this._sketchViewModel.on("update",e=>{const s=e.graphics[0]?.geometry;this._analysis.geometry=w(s)?s:null,"complete"===e.state&&(this.measurementViewData.interactive?i():t.stop())});t.handles.push(r,s(()=>{if(r.remove(),this._sketchViewModel?.cancel(),a(e))return t.reject();t.resolve()})),await i()},e)}get _analysis(){return this.measurementViewData.analysis}};e([l()],_.prototype,"_sketchViewModel",void 0),e([l()],_.prototype,"measurementViewData",void 0),e([l()],_.prototype,"state",null),e([l()],_.prototype,"updating",null),e([l()],_.prototype,"view",void 0),_=e([h("esri.views.2d.analysis.AreaMeasurement.AreaMeasurementTool")],_);export{_ as AreaMeasurementTool};
|
|
@@ -57,6 +57,14 @@ export default abstract class AreaMeasurementAnalysisView2D extends AnalysisView
|
|
|
57
57
|
* It supports [self](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/snapping/SnappingOptions/#selfEnabled) and
|
|
58
58
|
* [feature](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/snapping/SnappingOptions/#featureEnabled) snapping.
|
|
59
59
|
*
|
|
60
|
+
* > [!WARNING]
|
|
61
|
+
* >
|
|
62
|
+
* > **Known Limitations**
|
|
63
|
+
* >
|
|
64
|
+
* > This analysis currently uses its `snappingOptions` rather than [ViewOptions.snapping](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ViewOptions/#snapping).
|
|
65
|
+
* > Tooltips and units configured through `view.options` still apply.
|
|
66
|
+
* > Support for `view.options.snapping` in this analysis is planned for a future release.
|
|
67
|
+
*
|
|
60
68
|
* @since 5.0
|
|
61
69
|
*/
|
|
62
70
|
get snappingOptions(): SnappingOptions;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import{toAdaptiveLengthUnitForArea as e,toAdaptiveAreaUnit as i}from"../../../core/quantity.js";import{property as r,subclass as a}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as s}from"../../../support/getDefaultUnitForView.js";import o from"./AnalysisView2D.js";import{AreaMeasurementAreaVisualization as n}from"./AreaMeasurement/AreaMeasurementAreaVisualization.js";import{AreaMeasurementController as
|
|
2
|
+
import{__decorate as t}from"tslib";import{toAdaptiveLengthUnitForArea as e,toAdaptiveAreaUnit as i}from"../../../core/quantity.js";import{property as r,subclass as a}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as s}from"../../../support/getDefaultUnitForView.js";import o from"./AnalysisView2D.js";import{AreaMeasurementAreaVisualization as n}from"./AreaMeasurement/AreaMeasurementAreaVisualization.js";import{AreaMeasurementController as p}from"./AreaMeasurement/AreaMeasurementController.js";import{AreaMeasurementManipulatorVisualization as l}from"./AreaMeasurement/AreaMeasurementManipulatorVisualization.js";import{AreaMeasurementSketchVisualization as u}from"./AreaMeasurement/AreaMeasurementSketchVisualization.js";import{AreaMeasurementTool as m}from"./AreaMeasurement/AreaMeasurementTool.js";import h from"../../interactive/snapping/SnappingOptions.js";let y=class extends o{constructor(t){super(t),this.analysis=null,this.snappingOptions=new h,this.type="area-measurement-view-2d"}initialize(){const{view:t}=this;this._areaVisualization=new n({view:t,measurementViewData:this}),this._controller=new p({view:t,measurementViewData:this}),this._manipulatorVisualization=new l({view:t,measurementViewData:this}),this._sketchVisualization=new u({view:t,measurementViewData:this}),this._tool=new m({view:t,measurementViewData:this})}destroy(){this._areaVisualization?.destroy(),this._controller?.destroy(),this._manipulatorVisualization?.destroy(),this._sketchVisualization?.destroy(),this._tool?.destroy()}get manipulatorGraphic(){return this._manipulatorVisualization?.graphic}get manipulatorGraphicsLayer(){return this._manipulatorVisualization?.graphicsLayer}get sketchGraphicsLayer(){return this._sketchVisualization?.graphicsLayer}get interactive(){return super.interactive}set interactive(t){super.interactive=t}get result(){const t=this._controller?.result;if(!t)return t;const{unit:r}=this,{area:a,display:s,mode:o,perimeter:n}=t;return{area:a?i(a,r):null,display:s,mode:o,perimeter:n?e(n,r):null}}get unit(){return this.analysis.unit??this.view.options.displayUnits.area??s(this.view)}get updating(){return(this._areaVisualization?.updating??!0)||(this._controller?.updating??!0)||(this._sketchVisualization?.updating??!0)||(this._tool?.updating??!0)}get visible(){return super.visible}set visible(t){super.visible=t}async place(t){return this._tool.place(t)}};t([r()],y.prototype,"_areaVisualization",void 0),t([r()],y.prototype,"_controller",void 0),t([r()],y.prototype,"_manipulatorVisualization",void 0),t([r()],y.prototype,"_sketchVisualization",void 0),t([r()],y.prototype,"_tool",void 0),t([r({constructOnly:!0})],y.prototype,"analysis",void 0),t([r()],y.prototype,"manipulatorGraphic",null),t([r()],y.prototype,"manipulatorGraphicsLayer",null),t([r()],y.prototype,"sketchGraphicsLayer",null),t([r({readOnly:!0})],y.prototype,"result",null),t([r({type:h,nonNullable:!0})],y.prototype,"snappingOptions",void 0),t([r({readOnly:!0})],y.prototype,"type",void 0),t([r({readOnly:!0})],y.prototype,"unit",null),t([r({readOnly:!0})],y.prototype,"updating",null),y=t([a("esri.views.2d.analysis.AreaMeasurementAnalysisView2D")],y);const c=y;export{c as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{multiplyOpacity as i}from"../../../../core/colorUtils.js";import{makeHandle as s}from"../../../../core/handleUtils.js";import{ignoreAbortErrors as a,isAborted as
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{multiplyOpacity as i}from"../../../../core/colorUtils.js";import{makeHandle as s}from"../../../../core/handleUtils.js";import{ignoreAbortErrors as a,isAborted as o}from"../../../../core/promiseUtils.js";import{watch as r,initial as n}from"../../../../core/reactiveUtils.js";import{property as l,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as c}from"../../../../core/support/UpdatingHandles.js";import p from"../../../../symbols/SimpleLineSymbol.js";import{ExclusiveOperationManager as m}from"../../../analysis/ExclusiveOperationManager.js";import{bindViewToolOptions as d}from"../../../interactive/options/bindViewToolOptions.js";import u from"../../../../widgets/Sketch/SketchViewModel.js";function y(e){return"polyline"===e?.type}let w=class extends t{constructor(e){super(e),this._invisibleLineSymbol=new p({color:null,width:0}),this._operationManager=new m,this._updatingHandles=new c}initialize(){this._sketchViewModel=new u({defaultCreateOptions:{mode:"click"},defaultUpdateOptions:{enableMoveAllGraphics:!1,enableRotation:!1,enableScaling:!1,enableZ:!1,highlightOptions:{enabled:!1},multipleSelectionEnabled:!1,reshapeOptions:{edgeOperation:"none",shapeOperation:"none"},toggleToolOnClick:!1,tool:"reshape"},updateOnGraphicClick:!1,view:this.view}),this.addHandles([r(()=>({interactive:this.measurementViewData.interactive,visible:this.measurementViewData.visible}),({interactive:e,visible:t})=>{t&&e&&this._analysis.geometry?"place"!==this._operationManager.currentOperationType&&this.reshape().catch(()=>{}):this._operationManager.stop()}),r(()=>this.measurementViewData.analysis.geometry,e=>{e||(this._operationManager.stop(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll())}),r(()=>this.measurementViewData.snappingOptions,e=>{this._sketchViewModel&&(this._sketchViewModel.snappingOptions=e)},n),d(this._sketchViewModel.sketchOptions,()=>this.view.options),r(()=>this.view.effectiveTheme.accentColor,e=>{this._lineSymbol=new p({color:i(e,.3),width:2})},n)])}destroy(){this._invisibleLineSymbol.destroy(),this._lineSymbol?.destroy(),this._operationManager.destroy(),this._sketchViewModel?.destroy(),this._updatingHandles.destroy()}get state(){if(!this.measurementViewData.visible||!this._operationManager.currentOperationType)return"idle";switch(this._operationManager.currentOperationType){case"place":return"placing";case"reshape":return"reshaping"}}get updating(){return!this._sketchViewModel||this._sketchViewModel.updating||this._updatingHandles.updating}async place(e){return this._operationManager.start("place",async t=>{if(!this._sketchViewModel||!this.measurementViewData.sketchGraphicsLayer)return;const i=this._analysis.clone(),r=this._sketchViewModel.on("create",e=>{switch(e.state){case"start":case"active":{const t=e.graphic?.geometry;"polyline"===t?.type&&(this._analysis.geometry=t);break}case"cancel":case"complete":t.stop(),a(this.reshape())}});t.handles.push(r,s(()=>{r.remove(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll();const s=this._analysis;return s.valid?o(e)||i.equals(s)?t.reject():void t.resolve({}):(s.clear(),t.reject())})),this._sketchViewModel.activeLineSymbol=this._invisibleLineSymbol,this._sketchViewModel.polylineSymbol=this._invisibleLineSymbol,this._sketchViewModel.layer=this.measurementViewData.sketchGraphicsLayer,this._updatingHandles.consumePromise(a(this._sketchViewModel.create("polyline")))},e)}async reshape(e){return this._operationManager.start("reshape",async t=>{if(!this._sketchViewModel)return;const i=()=>this._lineSymbol&&this._sketchViewModel&&this.measurementViewData.manipulatorGraphic&&this.measurementViewData.manipulatorGraphicsLayer?(this._sketchViewModel.activeLineSymbol=null,this._sketchViewModel.polylineSymbol=this._lineSymbol,this._sketchViewModel.layer=this.measurementViewData.manipulatorGraphicsLayer,this._updatingHandles.addPromise(a(this._sketchViewModel.update(this.measurementViewData.manipulatorGraphic,{tool:"reshape"})))):Promise.resolve(),r=this._sketchViewModel.on("update",e=>{const s=e.graphics[0]?.geometry;this._analysis.geometry=y(s)?s:null,"complete"===e.state&&(this.measurementViewData.interactive?i():t.stop())});t.handles.push(r,s(()=>{if(r.remove(),this._sketchViewModel?.cancel(),o(e))return t.reject();t.resolve()})),await i()},e)}get _analysis(){return this.measurementViewData.analysis}};e([l()],w.prototype,"_sketchViewModel",void 0),e([l()],w.prototype,"measurementViewData",void 0),e([l()],w.prototype,"state",null),e([l()],w.prototype,"updating",null),e([l()],w.prototype,"view",void 0),w=e([h("esri.views.2d.analysis.DistanceMeasurement.DistanceMeasurementTool")],w);export{w as DistanceMeasurementTool};
|
|
@@ -56,6 +56,14 @@ export default abstract class DistanceMeasurementAnalysisView2D extends Analysis
|
|
|
56
56
|
* It supports [self](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/snapping/SnappingOptions/#selfEnabled) and
|
|
57
57
|
* [feature](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/snapping/SnappingOptions/#featureEnabled) snapping.
|
|
58
58
|
*
|
|
59
|
+
* > [!WARNING]
|
|
60
|
+
* >
|
|
61
|
+
* > **Known Limitations**
|
|
62
|
+
* >
|
|
63
|
+
* > This analysis currently uses its `snappingOptions` rather than [ViewOptions.snapping](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ViewOptions/#snapping).
|
|
64
|
+
* > Tooltips and units configured through `view.options` still apply.
|
|
65
|
+
* > Support for `view.options.snapping` in this analysis is planned for a future release.
|
|
66
|
+
*
|
|
59
67
|
* @since 5.0
|
|
60
68
|
*/
|
|
61
69
|
get snappingOptions(): SnappingOptions;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import{toAdaptiveLengthUnit as i}from"../../../core/quantity.js";import{property as e,subclass as s}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as a}from"../../../support/getDefaultUnitForView.js";import r from"./AnalysisView2D.js";import{DistanceMeasurementController as n}from"./DistanceMeasurement/DistanceMeasurementController.js";import{DistanceMeasurementLineVisualization as o}from"./DistanceMeasurement/DistanceMeasurementLineVisualization.js";import{DistanceMeasurementManipulatorVisualization as l}from"./DistanceMeasurement/DistanceMeasurementManipulatorVisualization.js";import{DistanceMeasurementSketchVisualization as p}from"./DistanceMeasurement/DistanceMeasurementSketchVisualization.js";import{DistanceMeasurementTool as u}from"./DistanceMeasurement/DistanceMeasurementTool.js";import c from"../../interactive/snapping/SnappingOptions.js";let m=class extends r{constructor(t){super(t),this.analysis=null,this.snappingOptions=new c,this.type="distance-measurement-view-2d"}initialize(){const{view:t}=this;this._lineVisualization=new o({view:t,measurementViewData:this}),this._controller=new n({view:t,measurementViewData:this}),this._manipulatorVisualization=new l({view:t,measurementViewData:this}),this._sketchVisualization=new p({view:t,measurementViewData:this}),this._tool=new u({view:t,measurementViewData:this})}destroy(){this._lineVisualization?.destroy(),this._controller?.destroy(),this._manipulatorVisualization?.destroy(),this._sketchVisualization?.destroy(),this._tool?.destroy()}get manipulatorGraphic(){return this._manipulatorVisualization?.graphic}get manipulatorGraphicsLayer(){return this._manipulatorVisualization?.graphicsLayer}get sketchGraphicsLayer(){return this._sketchVisualization?.graphicsLayer}get interactive(){return super.interactive}set interactive(t){super.interactive=t}get result(){const t=this._controller?.result;return t?{...t,length:i(t.length,this.unit)}:t}get unit(){return this.analysis.unit??a(this.view)}get updating(){return(this._controller?.updating??!0)||(this._lineVisualization?.updating??!0)||(this._sketchVisualization?.updating??!0)||(this._tool?.updating??!0)}get visible(){return super.visible}set visible(t){super.visible=t}async place(t){return this._tool.place(t)}};t([e()],m.prototype,"_lineVisualization",void 0),t([e()],m.prototype,"_controller",void 0),t([e()],m.prototype,"_manipulatorVisualization",void 0),t([e()],m.prototype,"_sketchVisualization",void 0),t([e()],m.prototype,"_tool",void 0),t([e({constructOnly:!0})],m.prototype,"analysis",void 0),t([e()],m.prototype,"manipulatorGraphic",null),t([e()],m.prototype,"manipulatorGraphicsLayer",null),t([e()],m.prototype,"sketchGraphicsLayer",null),t([e({readOnly:!0})],m.prototype,"result",null),t([e({type:c,nonNullable:!0})],m.prototype,"snappingOptions",void 0),t([e({readOnly:!0})],m.prototype,"type",void 0),t([e({readOnly:!0})],m.prototype,"unit",null),t([e({readOnly:!0})],m.prototype,"updating",null),m=t([s("esri.views.2d.analysis.DistanceMeasurementAnalysisView2D")],m);const h=m;export{h as default};
|
|
2
|
+
import{__decorate as t}from"tslib";import{toAdaptiveLengthUnit as i}from"../../../core/quantity.js";import{property as e,subclass as s}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as a}from"../../../support/getDefaultUnitForView.js";import r from"./AnalysisView2D.js";import{DistanceMeasurementController as n}from"./DistanceMeasurement/DistanceMeasurementController.js";import{DistanceMeasurementLineVisualization as o}from"./DistanceMeasurement/DistanceMeasurementLineVisualization.js";import{DistanceMeasurementManipulatorVisualization as l}from"./DistanceMeasurement/DistanceMeasurementManipulatorVisualization.js";import{DistanceMeasurementSketchVisualization as p}from"./DistanceMeasurement/DistanceMeasurementSketchVisualization.js";import{DistanceMeasurementTool as u}from"./DistanceMeasurement/DistanceMeasurementTool.js";import c from"../../interactive/snapping/SnappingOptions.js";let m=class extends r{constructor(t){super(t),this.analysis=null,this.snappingOptions=new c,this.type="distance-measurement-view-2d"}initialize(){const{view:t}=this;this._lineVisualization=new o({view:t,measurementViewData:this}),this._controller=new n({view:t,measurementViewData:this}),this._manipulatorVisualization=new l({view:t,measurementViewData:this}),this._sketchVisualization=new p({view:t,measurementViewData:this}),this._tool=new u({view:t,measurementViewData:this})}destroy(){this._lineVisualization?.destroy(),this._controller?.destroy(),this._manipulatorVisualization?.destroy(),this._sketchVisualization?.destroy(),this._tool?.destroy()}get manipulatorGraphic(){return this._manipulatorVisualization?.graphic}get manipulatorGraphicsLayer(){return this._manipulatorVisualization?.graphicsLayer}get sketchGraphicsLayer(){return this._sketchVisualization?.graphicsLayer}get interactive(){return super.interactive}set interactive(t){super.interactive=t}get result(){const t=this._controller?.result;return t?{...t,length:i(t.length,this.unit)}:t}get unit(){return this.analysis.unit??this.view.options.displayUnits.length??a(this.view)}get updating(){return(this._controller?.updating??!0)||(this._lineVisualization?.updating??!0)||(this._sketchVisualization?.updating??!0)||(this._tool?.updating??!0)}get visible(){return super.visible}set visible(t){super.visible=t}async place(t){return this._tool.place(t)}};t([e()],m.prototype,"_lineVisualization",void 0),t([e()],m.prototype,"_controller",void 0),t([e()],m.prototype,"_manipulatorVisualization",void 0),t([e()],m.prototype,"_sketchVisualization",void 0),t([e()],m.prototype,"_tool",void 0),t([e({constructOnly:!0})],m.prototype,"analysis",void 0),t([e()],m.prototype,"manipulatorGraphic",null),t([e()],m.prototype,"manipulatorGraphicsLayer",null),t([e()],m.prototype,"sketchGraphicsLayer",null),t([e({readOnly:!0})],m.prototype,"result",null),t([e({type:c,nonNullable:!0})],m.prototype,"snappingOptions",void 0),t([e({readOnly:!0})],m.prototype,"type",void 0),t([e({readOnly:!0})],m.prototype,"unit",null),t([e({readOnly:!0})],m.prototype,"updating",null),m=t([s("esri.views.2d.analysis.DistanceMeasurementAnalysisView2D")],m);const h=m;export{h as default};
|
|
@@ -40,8 +40,9 @@ export default abstract class ElevationProfileAnalysisView2D extends AnalysisVie
|
|
|
40
40
|
/**
|
|
41
41
|
* Units used for all the [results](https://developers.arcgis.com/javascript/latest/references/core/views/2d/analysis/ElevationProfileAnalysisView2D/#results) and [statistics](https://developers.arcgis.com/javascript/latest/references/core/views/2d/analysis/ElevationProfileAnalysisView2D/#statistics) of the elevation profile analysis.
|
|
42
42
|
*
|
|
43
|
-
* If not specified
|
|
44
|
-
*
|
|
43
|
+
* If units are not specified in [ElevationProfileAnalysis.displayUnits](https://developers.arcgis.com/javascript/latest/references/core/analysis/ElevationProfileAnalysis/#displayUnits), they are read from
|
|
44
|
+
* [ViewOptions.displayUnits](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ViewOptions/#displayUnits), when configured. Otherwise, units are chosen
|
|
45
|
+
* automatically based on the magnitude of the results.
|
|
45
46
|
*/
|
|
46
47
|
get effectiveDisplayUnits(): ElevationProfileEffectiveDisplayUnits;
|
|
47
48
|
/**
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import"../../../core/has.js";import{abortMaybe as t,destroyMaybe as i}from"../../../core/maybe.js";import{toAdaptiveLengthUnitForArea as s,toAdaptiveAreaUnit as a}from"../../../core/quantity.js";import{property as r,subclass as o}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as n}from"../../../support/getDefaultUnitForView.js";import l from"./AnalysisView3D.js";import{AreaMeasurementController as p}from"./AreaMeasurement/support/AreaMeasurementController.js";import{AreaMeasurement3DPathHelper as u}from"./AreaMeasurement/support/AreaMeasurementPathHelper.js";import{AreaMeasurementVisualization as m}from"./AreaMeasurement/support/AreaMeasurementVisualization.js";import y from"../interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js";import{connectAnalysisViewToTool as h,removeAnalysisViewTool as d,startPlaceOperation as v}from"../../analysis/analysisViewUtils.js";let c=class extends l{constructor(e){super(e),this.type="area-measurement-view-3d",this.analysis=null,this.measurementData=null,this.lastDraggedVertex=null,this.stagedPoint=null,this.mode=0,this.tool=null,this.userOperation=null}initialize(){const{analysis:e,view:t}=this;this.path=new u({view:t,areaMeasurement:e}),this._analysisVisualization=new m({view:t,analysis:e,analysisViewData:this}),this._analysisController=new p({view:t,analysis:e,analysisViewData:this}),this.addHandles(h(this,y))}destroy(){d(this),this.userOperation=t(this.userOperation),this._analysisController=i(this._analysisController),this._analysisVisualization=i(this._analysisVisualization),this.path.destroy()}get visible(){return super.visible}set visible(e){super.visible=e}get interactive(){return super.interactive}set interactive(e){super.interactive=e}get updating(){return!!this._analysisVisualization?.loadingMessages||!!this._analysisController?.updating}get result(){const e=this.measurementData?.measurements;if(!e)return null;const{unit:t}=this,{mode:i}=e,r="geodesic"===i,o=r?e.geodesicArea:e.area,n=r?e.geodesicPerimeter:e.perimeter;return{mode:i,area:o?a(o,t):null,perimeter:n?s(n,t):null}}get viewData(){return this._analysisVisualization.viewData}get areaLabel(){return this._analysisVisualization.areaLabel}get perimeterLabel(){return this._analysisVisualization.perimeterLabel}get validMeasurement(){return this.path.isValidPolygon}get unit(){return this.analysis.unit??n(this.view)}get testData(){}place(e){return v(this,{placementOptions:e})}};e([r()],c.prototype,"_analysisVisualization",void 0),e([r()],c.prototype,"_analysisController",void 0),e([r({readOnly:!0})],c.prototype,"type",void 0),e([r({constructOnly:!0,nonNullable:!0})],c.prototype,"analysis",void 0),e([r()],c.prototype,"updating",null),e([r()],c.prototype,"result",null),e([r()],c.prototype,"measurementData",void 0),e([r()],c.prototype,"viewData",null),e([r()],c.prototype,"areaLabel",null),e([r()],c.prototype,"perimeterLabel",null),e([r()],c.prototype,"validMeasurement",null),e([r()],c.prototype,"path",void 0),e([r()],c.prototype,"lastDraggedVertex",void 0),e([r()],c.prototype,"stagedPoint",void 0),e([r()],c.prototype,"mode",void 0),e([r()],c.prototype,"unit",null),e([r()],c.prototype,"tool",void 0),e([r()],c.prototype,"userOperation",void 0),c=e([o("esri.views.3d.analysis.AreaMeasurementAnalysisView3D")],c);const g=c;export{g as default};
|
|
2
|
+
import{__decorate as e}from"tslib";import"../../../core/has.js";import{abortMaybe as t,destroyMaybe as i}from"../../../core/maybe.js";import{toAdaptiveLengthUnitForArea as s,toAdaptiveAreaUnit as a}from"../../../core/quantity.js";import{property as r,subclass as o}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as n}from"../../../support/getDefaultUnitForView.js";import l from"./AnalysisView3D.js";import{AreaMeasurementController as p}from"./AreaMeasurement/support/AreaMeasurementController.js";import{AreaMeasurement3DPathHelper as u}from"./AreaMeasurement/support/AreaMeasurementPathHelper.js";import{AreaMeasurementVisualization as m}from"./AreaMeasurement/support/AreaMeasurementVisualization.js";import y from"../interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js";import{connectAnalysisViewToTool as h,removeAnalysisViewTool as d,startPlaceOperation as v}from"../../analysis/analysisViewUtils.js";let c=class extends l{constructor(e){super(e),this.type="area-measurement-view-3d",this.analysis=null,this.measurementData=null,this.lastDraggedVertex=null,this.stagedPoint=null,this.mode=0,this.tool=null,this.userOperation=null}initialize(){const{analysis:e,view:t}=this;this.path=new u({view:t,areaMeasurement:e}),this._analysisVisualization=new m({view:t,analysis:e,analysisViewData:this}),this._analysisController=new p({view:t,analysis:e,analysisViewData:this}),this.addHandles(h(this,y))}destroy(){d(this),this.userOperation=t(this.userOperation),this._analysisController=i(this._analysisController),this._analysisVisualization=i(this._analysisVisualization),this.path.destroy()}get visible(){return super.visible}set visible(e){super.visible=e}get interactive(){return super.interactive}set interactive(e){super.interactive=e}get updating(){return!!this._analysisVisualization?.loadingMessages||!!this._analysisController?.updating}get result(){const e=this.measurementData?.measurements;if(!e)return null;const{unit:t}=this,{mode:i}=e,r="geodesic"===i,o=r?e.geodesicArea:e.area,n=r?e.geodesicPerimeter:e.perimeter;return{mode:i,area:o?a(o,t):null,perimeter:n?s(n,t):null}}get viewData(){return this._analysisVisualization.viewData}get areaLabel(){return this._analysisVisualization.areaLabel}get perimeterLabel(){return this._analysisVisualization.perimeterLabel}get validMeasurement(){return this.path.isValidPolygon}get unit(){return this.analysis.unit??this.view.options.displayUnits.area??n(this.view)}get testData(){}place(e){return v(this,{placementOptions:e})}};e([r()],c.prototype,"_analysisVisualization",void 0),e([r()],c.prototype,"_analysisController",void 0),e([r({readOnly:!0})],c.prototype,"type",void 0),e([r({constructOnly:!0,nonNullable:!0})],c.prototype,"analysis",void 0),e([r()],c.prototype,"updating",null),e([r()],c.prototype,"result",null),e([r()],c.prototype,"measurementData",void 0),e([r()],c.prototype,"viewData",null),e([r()],c.prototype,"areaLabel",null),e([r()],c.prototype,"perimeterLabel",null),e([r()],c.prototype,"validMeasurement",null),e([r()],c.prototype,"path",void 0),e([r()],c.prototype,"lastDraggedVertex",void 0),e([r()],c.prototype,"stagedPoint",void 0),e([r()],c.prototype,"mode",void 0),e([r()],c.prototype,"unit",null),e([r()],c.prototype,"tool",void 0),e([r()],c.prototype,"userOperation",void 0),c=e([o("esri.views.3d.analysis.AreaMeasurementAnalysisView3D")],c);const g=c;export{g as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import e from"../../../../core/Accessor.js";import{destroyHandle as s}from"../../../../core/handleUtils.js";import
|
|
2
|
+
import{__decorate as t}from"tslib";import e from"../../../../core/Accessor.js";import{destroyHandle as s}from"../../../../core/handleUtils.js";import i from"../../../../core/Logger.js";import{mapCollection as o}from"../../../../core/mapCollectionUtils.js";import{debounce as r}from"../../../../core/promiseUtils.js";import{watch as n,syncAndInitial as a}from"../../../../core/reactiveUtils.js";import{convertUnit as m}from"../../../../core/units.js";import{property as p,subclass as l}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as d}from"../../../../core/support/UpdatingHandles.js";import{getDefaultUnitForView as c}from"../../../../support/getDefaultUnitForView.js";import{isGeodesicDimension as u,computeGeometryFromDimension as h,computationToGeometryDependencies as y,computeLength as g}from"./lengthDimensionUtils.js";import{GeometryWorkerHandle as f}from"../../../support/GeometryWorkerHandle.js";import{geodeticDistanceThresholdMeters as w}from"../../../support/measurementWorkerUtils.js";let _=class extends e{constructor(t){super(t),this._measurementWorker=new f({preloadGeodetic:!0}),this._updatingHandles=new d}initialize(){const t=o(()=>this.analysisViewData.computations,({computation:t})=>this._watchComputation(t));this.addHandles(s(t))}destroy(){this._measurementWorker.destroy(),this._updatingHandles.destroy()}get analysis(){return this.analysisViewData.analysis}get _defaultUnit(){return this.view.options.displayUnits.length??c(this.view)}get updating(){return this._updatingHandles.updating}_watchComputation(t){const e=r(this._computeLengthAsync.bind(this));return n(()=>({dependencies:y(t),unit:this._defaultUnit}),({dependencies:s,unit:o})=>{const{measureType:r}=s;if(u(s)&&"direct"!==r){const e=Math.round(m(w,"meters","kilometers"));return i.getLogger(this).warnOnce(`A ${r} dimension in the analysis (id: '${this.analysis.id}') will not display, because only direct dimensions can measure lengths greater than ${e} km. Update the measureType of the affected dimension to "direct" to display it.`),void(t.geometry=null)}const n=h(s,this.view.renderCoordsHelper,t.geometry);this._updatingHandles.consumePromise(e(t,n,r,o))},a)}async _computeLengthAsync(t,e,s,i){t.geometry=e,t.result.length=await g(e,s,i,this._measurementWorker)}};t([p({constructOnly:!0})],_.prototype,"analysisViewData",void 0),t([p({constructOnly:!0})],_.prototype,"view",void 0),t([p()],_.prototype,"analysis",null),t([p()],_.prototype,"_defaultUnit",null),_=t([l("esri.views.3d.analysis.Dimension.DimensionController")],_);export{_ as DimensionController};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import"../../../core/has.js";import{abortMaybe as e,destroyMaybe as i}from"../../../core/maybe.js";import{property as a,subclass as s}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as l}from"../../../support/getDefaultUnitForView.js";import n from"./AnalysisView3D.js";import{DirectLineMeasurementController as o}from"./DirectLineMeasurement/DirectLineMeasurementController.js";import{DirectLineMeasurementVisualization as r}from"./DirectLineMeasurement/DirectLineMeasurementVisualization.js";import u from"../interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js";import{connectAnalysisViewToTool as p,removeAnalysisViewTool as y,startPlaceOperation as h}from"../../analysis/analysisViewUtils.js";let d=class extends n{constructor(t){super(t),this.type="direct-line-measurement-view-3d",this.analysis=null,this.tool=null,this.result=null,this.measurementMode=0,this.elevationAlignedStartPoint=null,this.elevationAlignedEndPoint=null,this.userOperation=null}initialize(){const{analysis:t,view:e}=this;this._analysisVisualization=new r({view:e,analysis:t,analysisView:this}),this._analysisController=new o({view:e,analysis:t,viewData:this}),this.addHandles(p(this,u))}destroy(){y(this),this.userOperation=e(this.userOperation),this._analysisController=i(this._analysisController),this._analysisVisualization=i(this._analysisVisualization)}get updating(){return!!this._analysisVisualization?.loadingMessages||!!this._analysisController?.updating}get visible(){return super.visible}set visible(t){super.visible=t}get interactive(){return super.interactive}set interactive(t){super.interactive=t}get viewMode(){return this._analysisVisualization.viewMode}get actualVisualizedMeasurement(){return this._analysisVisualization.actualVisualizedMeasurement}get visualElementOrientation(){return this._analysisVisualization.visualElementOrientation}set visualElementOrientation(t){this._analysisVisualization.visualElementOrientation=t}get allowVisualElementsOrientationChange(){return this._analysisVisualization.allowVisualElementsOrientationChange}set allowVisualElementsOrientationChange(t){this._analysisVisualization.allowVisualElementsOrientationChange=t}get triangleCollapseRatioThreshold(){return this._analysisVisualization.triangleCollapseRatioThreshold}set triangleCollapseRatioThreshold(t){this._analysisVisualization.triangleCollapseRatioThreshold=t}get directLabelText(){return this._analysisVisualization.labels.direct?.text??""}get horizontalLabelText(){return this._analysisVisualization.labels.horizontal?.text??""}get verticalLabelText(){return this._analysisVisualization.labels.vertical?.text??""}get unit(){return this.analysis.unit??l(this.view)}get testData(){}place(t){return h(this,{placementOptions:t})}};t([a()],d.prototype,"_analysisVisualization",void 0),t([a()],d.prototype,"_analysisController",void 0),t([a()],d.prototype,"updating",null),t([a({readOnly:!0})],d.prototype,"type",void 0),t([a({constructOnly:!0,nonNullable:!0})],d.prototype,"analysis",void 0),t([a()],d.prototype,"tool",void 0),t([a()],d.prototype,"result",void 0),t([a()],d.prototype,"measurementMode",void 0),t([a()],d.prototype,"elevationAlignedStartPoint",void 0),t([a()],d.prototype,"elevationAlignedEndPoint",void 0),t([a({readOnly:!0})],d.prototype,"viewMode",null),t([a({readOnly:!0})],d.prototype,"actualVisualizedMeasurement",null),t([a()],d.prototype,"visualElementOrientation",null),t([a()],d.prototype,"allowVisualElementsOrientationChange",null),t([a()],d.prototype,"triangleCollapseRatioThreshold",null),t([a({readOnly:!0})],d.prototype,"directLabelText",null),t([a({readOnly:!0})],d.prototype,"horizontalLabelText",null),t([a({readOnly:!0})],d.prototype,"verticalLabelText",null),t([a()],d.prototype,"unit",null),t([a()],d.prototype,"userOperation",void 0),d=t([s("esri.views.3d.analysis.DirectLineMeasurementAnalysisView3D")],d);const m=d;export{m as default};
|
|
2
|
+
import{__decorate as t}from"tslib";import"../../../core/has.js";import{abortMaybe as e,destroyMaybe as i}from"../../../core/maybe.js";import{property as a,subclass as s}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as l}from"../../../support/getDefaultUnitForView.js";import n from"./AnalysisView3D.js";import{DirectLineMeasurementController as o}from"./DirectLineMeasurement/DirectLineMeasurementController.js";import{DirectLineMeasurementVisualization as r}from"./DirectLineMeasurement/DirectLineMeasurementVisualization.js";import u from"../interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js";import{connectAnalysisViewToTool as p,removeAnalysisViewTool as y,startPlaceOperation as h}from"../../analysis/analysisViewUtils.js";let d=class extends n{constructor(t){super(t),this.type="direct-line-measurement-view-3d",this.analysis=null,this.tool=null,this.result=null,this.measurementMode=0,this.elevationAlignedStartPoint=null,this.elevationAlignedEndPoint=null,this.userOperation=null}initialize(){const{analysis:t,view:e}=this;this._analysisVisualization=new r({view:e,analysis:t,analysisView:this}),this._analysisController=new o({view:e,analysis:t,viewData:this}),this.addHandles(p(this,u))}destroy(){y(this),this.userOperation=e(this.userOperation),this._analysisController=i(this._analysisController),this._analysisVisualization=i(this._analysisVisualization)}get updating(){return!!this._analysisVisualization?.loadingMessages||!!this._analysisController?.updating}get visible(){return super.visible}set visible(t){super.visible=t}get interactive(){return super.interactive}set interactive(t){super.interactive=t}get viewMode(){return this._analysisVisualization.viewMode}get actualVisualizedMeasurement(){return this._analysisVisualization.actualVisualizedMeasurement}get visualElementOrientation(){return this._analysisVisualization.visualElementOrientation}set visualElementOrientation(t){this._analysisVisualization.visualElementOrientation=t}get allowVisualElementsOrientationChange(){return this._analysisVisualization.allowVisualElementsOrientationChange}set allowVisualElementsOrientationChange(t){this._analysisVisualization.allowVisualElementsOrientationChange=t}get triangleCollapseRatioThreshold(){return this._analysisVisualization.triangleCollapseRatioThreshold}set triangleCollapseRatioThreshold(t){this._analysisVisualization.triangleCollapseRatioThreshold=t}get directLabelText(){return this._analysisVisualization.labels.direct?.text??""}get horizontalLabelText(){return this._analysisVisualization.labels.horizontal?.text??""}get verticalLabelText(){return this._analysisVisualization.labels.vertical?.text??""}get unit(){return this.analysis.unit??this.view.options.displayUnits.length??l(this.view)}get testData(){}place(t){return h(this,{placementOptions:t})}};t([a()],d.prototype,"_analysisVisualization",void 0),t([a()],d.prototype,"_analysisController",void 0),t([a()],d.prototype,"updating",null),t([a({readOnly:!0})],d.prototype,"type",void 0),t([a({constructOnly:!0,nonNullable:!0})],d.prototype,"analysis",void 0),t([a()],d.prototype,"tool",void 0),t([a()],d.prototype,"result",void 0),t([a()],d.prototype,"measurementMode",void 0),t([a()],d.prototype,"elevationAlignedStartPoint",void 0),t([a()],d.prototype,"elevationAlignedEndPoint",void 0),t([a({readOnly:!0})],d.prototype,"viewMode",null),t([a({readOnly:!0})],d.prototype,"actualVisualizedMeasurement",null),t([a()],d.prototype,"visualElementOrientation",null),t([a()],d.prototype,"allowVisualElementsOrientationChange",null),t([a()],d.prototype,"triangleCollapseRatioThreshold",null),t([a({readOnly:!0})],d.prototype,"directLabelText",null),t([a({readOnly:!0})],d.prototype,"horizontalLabelText",null),t([a({readOnly:!0})],d.prototype,"verticalLabelText",null),t([a()],d.prototype,"unit",null),t([a()],d.prototype,"userOperation",void 0),d=t([s("esri.views.3d.analysis.DirectLineMeasurementAnalysisView3D")],d);const m=d;export{m as default};
|
|
@@ -41,8 +41,9 @@ export default abstract class ElevationProfileAnalysisView3D extends AnalysisVie
|
|
|
41
41
|
/**
|
|
42
42
|
* Units used for all the [results](https://developers.arcgis.com/javascript/latest/references/core/views/3d/analysis/ElevationProfileAnalysisView3D/#results) and [statistics](https://developers.arcgis.com/javascript/latest/references/core/views/3d/analysis/ElevationProfileAnalysisView3D/#statistics) of the elevation profile analysis.
|
|
43
43
|
*
|
|
44
|
-
* If not specified
|
|
45
|
-
*
|
|
44
|
+
* If units are not specified in [ElevationProfileAnalysis.displayUnits](https://developers.arcgis.com/javascript/latest/references/core/analysis/ElevationProfileAnalysis/#displayUnits), they are read from
|
|
45
|
+
* [ViewOptions.displayUnits](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ViewOptions/#displayUnits), when configured. Otherwise, units are chosen
|
|
46
|
+
* automatically based on the magnitude of the results.
|
|
46
47
|
*/
|
|
47
48
|
get effectiveDisplayUnits(): ElevationProfileEffectiveDisplayUnits;
|
|
48
49
|
/**
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import e from"../../../../core/Accessor.js";import{watch as i,syncAndInitial as s}from"../../../../core/reactiveUtils.js";import{property as o,subclass as n}from"../../../../core/accessorSupport/decorators.js";import{snapshotLineOfSightTargetState as l,restoreLineOfSightTargetState as r}from"./LineOfSightAuthoringUtils.js";import{LineOfSightItemManipulatedObject3D as a}from"./LineOfSightItemManipulatedObject3D.js";import{LineOfSightItemTool as h}from"./LineOfSightItemTool.js";import{discRadiusSmall as c}from"../../interactive/editingTools/manipulations/config.js";import{MoveTool3D as m}from"../../interactive/editingTools/move/MoveTool3D.js";import d from"../../../interactive/options/InteractiveToolOptions.js";let
|
|
2
|
+
import{__decorate as t}from"tslib";import e from"../../../../core/Accessor.js";import{watch as i,syncAndInitial as s}from"../../../../core/reactiveUtils.js";import{property as o,subclass as n}from"../../../../core/accessorSupport/decorators.js";import{snapshotLineOfSightTargetState as l,restoreLineOfSightTargetState as r}from"./LineOfSightAuthoringUtils.js";import{LineOfSightItemManipulatedObject3D as a}from"./LineOfSightItemManipulatedObject3D.js";import{LineOfSightItemTool as h}from"./LineOfSightItemTool.js";import{discRadiusSmall as c}from"../../interactive/editingTools/manipulations/config.js";import{MoveTool3D as m}from"../../interactive/editingTools/move/MoveTool3D.js";import{bindViewToolOptions as d}from"../../../interactive/options/bindViewToolOptions.js";import u from"../../../interactive/options/InteractiveToolOptions.js";let _=class extends e{get visible(){return this._get("visible")??!0}set visible(t){this._set("visible",t),this._itemTool.visible=t,this._moveTool.visible=t}get manipulatorsInteractive(){return this._get("manipulatorsInteractive")??!0}set manipulatorsInteractive(t){this._set("manipulatorsInteractive",t),this._itemTool.manipulatorsInteractive=t}constructor(t){super(t),this._selectedItem=null,this._objectByItem=new Map,this._undoStack=[],this._redoStack=[],this._itemTool=new h({analysisViewData:t.analysisViewData,snappingManager:t.snappingManager,view:t.view}),this._moveTool=new m({enableVisualElements:!1,manipulatorRadius:c,snappingManager:t.snappingManager,toolOptions:new u,view:t.view})}initialize(){this.view.tools.add(this._itemTool),this.view.tools.add(this._moveTool),this._itemTool.visible=this.visible,this._moveTool.visible=this.visible,this._itemTool.manipulatorsInteractive=this.manipulatorsInteractive;const t=t=>{const e=t.at(0);null!=e&&this._itemTool.showInteractionVisuals(e)},e=()=>this._itemTool.hideInteractionVisuals();this.addHandles([d(this._moveTool.toolOptions,()=>this.view.options),i(()=>({observer:this.analysis.observer,targets:this.analysis.targets.toArray()}),({observer:t,targets:e})=>this._syncObjects(t,e),s),this._itemTool.events.on("select-item",({item:t})=>this._setSelectedItem(t)),this._itemTool.events.on("selection-cleared",()=>{if(this._moveTool.hasFocusedManipulators){const t=null==this._selectedItem?null:this._objectByItem.get(this._selectedItem);this._itemTool.selectObject(t)}else this._setSelectedItem(null)}),this._itemTool.events.on("delete-item",({target:t})=>this._deleteTarget(t)),this._itemTool.events.on("record-undo",({record:t})=>this._recordHistory(v([t]))),this._moveTool.events.on("record-undo",({updates:t})=>this._recordHistory(v(t))),this._moveTool.events.on("hold",({objects:e})=>t(e)),this._moveTool.events.on("move-start",({objects:e})=>t(e)),this._moveTool.events.on("move-stop",e),i(()=>this._moveTool.firstGrabbedManipulator,t=>{null==t&&e()})])}destroy(){this.stop(),this.view.tools.remove(this._itemTool),this.view.tools.remove(this._moveTool),this._itemTool.destroy(),this._moveTool.destroy();for(const t of this._objectByItem.values())this.removeHandles(t),t.destroy();this._objectByItem.clear(),this._undoStack.length=0,this._redoStack.length=0}get active(){return this._itemTool.active||this._moveTool.active}get canRedo(){return this._redoStack.length>0}get canUndo(){return this._undoStack.length>0}get hasSelection(){return null!=this._selectedItem}get selectedItem(){return this._selectedItem}get updating(){return this._itemTool.updating||this._moveTool.updating}get laserLineVisualElement(){return this._itemTool.laserLineVisualElement}get verticalLineVisualElement(){return this._itemTool.verticalLineVisualElement}selectItem(t){return!!this._objectByItem.has(t)&&(this._setSelectedItem(t),!0)}clearSelection(){return!!this.hasSelection&&(this._setSelectedItem(null),!0)}deleteSelectedItem(){const t=this._selectedItem;if(null==t)return!1;const e=this.analysis.targets.find(e=>e===t);return null!=e&&this._deleteTarget(e)}getObserverManipulator(){const t=this.analysis.observer,e=null==t?null:this._itemTool.getManipulator(t);return null!=e&&p(e)?e:null}getTargetManipulator(t){const e=this._itemTool.getManipulator(t);return null!=e&&g(e)?e:null}hasManipulatorAt(t,e){return this._itemTool.hasManipulatorAt(t,e)}redo(){const t=this._redoStack.pop();null!=t&&(t.redo()?(this._undoStack.push(t),this._notifyHistoryChanged()):this._redoStack.push(t))}setEditableFlag(t,e){this._itemTool.setEditableFlag(t,e),this._moveTool.setEditableFlag(t,e)}stop(){this.view.activeTool!==this._itemTool&&this.view.activeTool!==this._moveTool||(this.view.activeTool=null),this._itemTool.hideInteractionVisuals(),this.snappingManager.doneSnapping(),this.clearSelection()}undo(){const t=this._undoStack.pop();null!=t&&(t.undo(),this._redoStack.push(t),this._notifyHistoryChanged())}_syncObjects(t,e){const i=new Set(null==t?e:[t,...e]);for(const[s,o]of this._objectByItem)i.has(s)||(this._selectedItem===s&&this._setSelectedItem(null),this.removeHandles(o),this._itemTool.removeObject(o),this._objectByItem.delete(s),o.destroy());null!=t&&this._ensureObject(t,"observer");for(const s of e)this._ensureObject(s,"target");this._setSelectedItem(this._selectedItem)}_ensureObject(t,e){if(this._objectByItem.has(t))return;const i=new a({analysisViewData:this.analysisViewData,intersector:this.intersector,item:t,itemType:e,view:this.view});this._objectByItem.set(t,i),this._itemTool.addObject(i),this.addHandles(i.on("modified-externally",()=>{this._selectedItem===t&&this._setSelectedItem(t)}),i)}_setSelectedItem(t){const e=null==t?null:this._objectByItem.get(t);this._selectedItem=null==e?null:t,this._itemTool.selectObject(e),this._moveTool.objects.removeAll(),null!=e&&this._moveTool.objects.add(e),this._itemTool.interacting=null!=this._selectedItem}_deleteTarget(t){if(this.analysis.targets.length<=1)return!1;const e=this.analysis.targets.indexOf(t);if(e<0)return!1;const i=l(t),s=this._selectedItem===t;return this.analysis.targets.remove(t),this._recordHistory({undo:()=>{r(i,t),this.analysis.targets.add(t,Math.min(e,this.analysis.targets.length)),s&&this._setSelectedItem(t)},redo:()=>!(this.analysis.targets.includes(t)&&this.analysis.targets.length<=1)&&(this.analysis.targets.remove(t),this._selectedItem===t&&this._setSelectedItem(null),!0)}),!0}_recordHistory(t){this._undoStack.push(t),this._redoStack.length=0,this._notifyHistoryChanged()}_notifyHistoryChanged(){this.notifyChange("canUndo"),this.notifyChange("canRedo")}get testInfo(){return{moveTooltip:this._moveTool.tooltip}}};function v(t){return{undo:()=>{for(let e=t.length-1;e>=0;e--)t[e].undo(null)},redo:()=>{for(const e of t)e.redo(null);return!0}}}function p(t){return"observer"===t.metadata.type}function g(t){return"target"===t.metadata.type}t([o({constructOnly:!0})],_.prototype,"analysisViewData",void 0),t([o({constructOnly:!0})],_.prototype,"analysis",void 0),t([o({constructOnly:!0})],_.prototype,"intersector",void 0),t([o({constructOnly:!0})],_.prototype,"snappingManager",void 0),t([o({constructOnly:!0})],_.prototype,"view",void 0),t([o()],_.prototype,"visible",null),t([o()],_.prototype,"manipulatorsInteractive",null),t([o()],_.prototype,"_selectedItem",void 0),t([o()],_.prototype,"active",null),t([o()],_.prototype,"canRedo",null),t([o()],_.prototype,"canUndo",null),t([o()],_.prototype,"selectedItem",null),t([o()],_.prototype,"updating",null),_=t([n("esri.views.3d.analysis.LineOfSight.LineOfSightEditTool")],_);export{_ as LineOfSightEditTool};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import{EventEmitter as i}from"../../../../core/Evented.js";import{handlesGroup as e}from"../../../../core/handleUtils.js";import{destroyMaybe as n,removeMaybe as o}from"../../../../core/maybe.js";import{initial as s}from"../../../../core/reactiveUtils.js";import{property as a,subclass as r}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as l}from"../../../../core/support/UpdatingHandles.js";import
|
|
2
|
+
import{__decorate as t}from"tslib";import{EventEmitter as i}from"../../../../core/Evented.js";import{handlesGroup as e}from"../../../../core/handleUtils.js";import{destroyMaybe as n,removeMaybe as o}from"../../../../core/maybe.js";import{initial as s}from"../../../../core/reactiveUtils.js";import{property as a,subclass as r}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as l}from"../../../../core/support/UpdatingHandles.js";import{create as p,fromPoints as c}from"../../../../geometry/support/lineSegment.js";import{LineOfSightInteractionVisuals as u}from"./LineOfSightInteractionVisuals.js";import{LineOfSightObserverManipulator as d,LineOfSightTargetManipulator as h,LineOfSightTargetManipulatorState as m,getInteractiveLineOfSightTargetManipulatorState as v}from"./LineOfSightManipulators.js";import{SnappingVisualizer3D as g}from"../../interactive/SnappingVisualizer3D.js";import{screenToMapAtSceneSurface as _}from"../../interactive/editingTools/dragEventPipeline3D.js";import{connectTooltipToManipulatedObject as b}from"../../interactive/editingTools/tooltipUtils3D.js";import{mouseButtons as y}from"../../../input/mouseButtons.js";import{createManipulatorDragEventPipeline as f,dragAtLocation as M,sceneSnappingAtLocation as j,dragManipulatedObject as V}from"../../../interactive/dragEventPipeline.js";import{InteractiveToolBase as I}from"../../../interactive/InteractiveToolBase.js";import{bindViewToolOptions as O}from"../../../interactive/options/bindViewToolOptions.js";import w from"../../../interactive/options/InteractiveToolOptions.js";import{SnappingContext as S}from"../../../interactive/snapping/SnappingContext.js";import{createSnapDragEventPipelineStep as T}from"../../../interactive/snapping/SnappingDragPipelineStep.js";import{makeTooltip as B,enterInputModeIfAvailable as R}from"../../../interactive/tooltip/tooltipCommonUtils.js";import{MovePointTooltipInfo as H}from"../../../interactive/tooltip/infos/MovePointTooltipInfo.js";const U=p();let x=class extends I{constructor(t){super(t),this.events=new i,this.automaticManipulatorSelection=!1,this.removeIncompleteOnCancel=!1,this.interacting=!1,this.manipulatorsInteractive=!0,this._objectByItem=new Map,this._manipulatorByObject=new Map,this._updatingHandles=new l,this._toolOptions=new w,this._interactionVisuals=null,this._grabbedManipulator=null,this._visualsManipulator=null,this._tooltipHandle=null,this._tooltipUndoRecord=null,this._tooltipInfo=new H({toolOptions:this._toolOptions,viewType:"3d"})}initialize(){const{view:t}=this;this._tooltip=B(()=>({view:t,options:this._toolOptions.tooltips})),this._interactionVisuals=new u({view:t}),this.addHandles([O(this._toolOptions,()=>t.options),this._updatingHandles.add(()=>({analysisVisible:this.analysisViewData.visible,computations:this.analysisViewData.computations.toArray().map(t=>({isTargetVisible:t.computationResult.isTargetVisible,isValid:t.computationResult.isValid,target:t.target})),grabbedManipulator:this._grabbedManipulator,interacting:this.interacting,manipulatorsInteractive:this.manipulatorsInteractive,visible:this.visible}),()=>this._syncManipulators(),s)]),this.finishToolCreation()}destroy(){this._disconnectTooltip(),this._tooltip=n(this._tooltip),this._interactionVisuals=n(this._interactionVisuals),this._updatingHandles.destroy(),this._objectByItem.clear(),this._manipulatorByObject.clear(),super.destroy()}get updating(){return this._updatingHandles.updating||this.snappingManager.updating}get laserLineVisualElement(){return this._interactionVisuals?.laserLineVisualElement??null}get verticalLineVisualElement(){return this._interactionVisuals?.verticalLineVisualElement??null}showInteractionVisuals(t){this._visualsManipulator=this._manipulatorByObject.get(t),this._syncInteractionVisuals()}hideInteractionVisuals(){this._visualsManipulator=null,this._syncInteractionVisuals()}addObject(t){if(this._manipulatorByObject.has(t))return;const i="observer"===t.itemType?new d(this.view,{deleting:!1,intersection:null,type:"observer"}):new h(this.view,{deleting:!1,target:t.item,type:"target"});i.cursor="move",this._objectByItem.set(t.item,t),this._manipulatorByObject.set(t,i),this.manipulators.add(i),this.addHandles(this._connectManipulator(t,i),t),this._syncManipulator(t,i)}removeObject(t){const i=this._manipulatorByObject.get(t);null!=i&&(this._grabbedManipulator===i&&(this._grabbedManipulator=null,this._disconnectTooltip()),this._visualsManipulator===i&&this.hideInteractionVisuals(),this.removeHandles(t),this.manipulators.remove(i),i.destroy(),this._objectByItem.delete(t.item),this._manipulatorByObject.delete(t))}getManipulator(t){const i=this._objectByItem.get(t);return null==i?null:this._manipulatorByObject.get(i)}hasManipulatorAt(t,i){for(const e of this._manipulatorByObject.values())if(e.consumesClicks&&null!=e.intersectionDistance(t,i))return!0;return!1}selectObject(t){let i=!1;for(const[e,n]of this._manipulatorByObject){const o=e===t;n.selected=o,i||=o}return this._syncManipulators(),i}onInputEvent(t){"hold"===t.type&&null!=this._grabbedManipulator&&(this._visualsManipulator=this._grabbedManipulator,this._syncInteractionVisuals()),R(t,this._tooltip)}onManipulatorSelectionChanged(){[...this._manipulatorByObject.values()].some(t=>t.selected)||this.events.emit("selection-cleared")}_connectManipulator(t,i){const n=()=>this._syncManipulator(t,i);return e([t.on("committed",n),t.on("modified-externally",n),i.events.on("immediate-click",e=>{this.events.emit("select-item",{item:t.item}),e.button===y.Right&&"target"===i.metadata.type&&this.events.emit("delete-item",{target:i.metadata.target}),e.stopPropagation()}),i.events.on("grab-changed",({action:e})=>{"start"===e?(this.events.emit("select-item",{item:t.item}),this._grabbedManipulator=i,this._connectTooltip(t)):this._grabbedManipulator===i&&(this._grabbedManipulator=null,this.hideInteractionVisuals(),this._disconnectTooltip())}),i.events.on("drag",i=>{t.updateDragIntersection(i),"start"===i.action&&this.showInteractionVisuals(t)}),i.events.on("location-update",()=>this._syncInteractionVisuals()),this._createDragHandle(t,i)])}_createDragHandle(t,i){return f(i,(e,n,o,s)=>{const a=t.operations;if(null==a)return;let r=null;const{cancelSnapping:l,snappingStep:p}=T({snappingContext:new S({editGeometryOperations:a,elevationInfo:t.elevationInfo,pointer:s,visualizer:new g}),snappingManager:this.snappingManager,updatingHandles:this._updatingHandles,useZ:!0});o.next(t=>(r?.undo(null),r=null,t)).next(l);const c=a.data.allVerticesUnordered.at(0);n.next(i=>("start"===i.action&&(r=t.createUndoRecord()),{...i,snapOrigin:c?.pos})).next(M(this.view,i.elevationAlignedLocation)).next(_(this.view,a.data.geometry,t.elevationInfo,a.data.spatialReference)).next(j(this.view,t.elevationInfo)).next(...p).next(V(t)).next(t=>("end"===t.action&&null!=r&&(this.events.emit("record-undo",{record:r}),r=null),t))})}_connectTooltip(t){this._disconnectTooltip(),this._tooltipHandle=b(this._tooltip,t,()=>({activeTooltipInfo:this._tooltipInfo,callbacks:{onBeforeUpdate:()=>this.endDrag(),onMoveStart:()=>{this._tooltipUndoRecord=t.createUndoRecord()},onMove:()=>{},onMoveStop:()=>{null!=this._tooltipUndoRecord&&(this.events.emit("record-undo",{record:this._tooltipUndoRecord}),this._tooltipUndoRecord=null)},onRotateStart:()=>{},onRotate:()=>{},onRotateStop:()=>{},onScaleStart:()=>{},onScale:()=>{},onScaleStop:()=>{}},toolOptions:this._toolOptions}))}_disconnectTooltip(){this._tooltipHandle=o(this._tooltipHandle),this._tooltipUndoRecord=null,this._tooltip.clear()}_syncManipulators(){for(const[t,i]of this._manipulatorByObject)this._syncManipulator(t,i);this._syncInteractionVisuals()}_syncManipulator(t,i){const e=t.origin;if(i.available=this.visible&&t.visible&&null!=e,i.interactive=this.manipulatorsInteractive&&(null==this._grabbedManipulator||this._grabbedManipulator===i),null!=e&&(i.elevationAlignedLocation=e),"target"!==t.itemType)return;const n=this.analysisViewData.computations.find(i=>i.target===t.item),o=null!=n&&n.computationResult.isValid?n.computationResult.isTargetVisible?m.visible:m.occluded:m.undefined;i.state=this.interacting&&i.selected?v(o):o}_syncInteractionVisuals(){const t=this._interactionVisuals,i=this._visualsManipulator,e=this.visible&&this.analysisViewData.visible;if(null==t||null==i||!e)return void t?.hide();const n=[...this._manipulatorByObject.entries()].find(([t])=>"observer"===t.itemType)?.[1];if(null==n)return void t.hide();const o=i===n?null:c(n.renderLocation,i.renderLocation,U);t.update({target:i.renderLocation,lineVerticalPlaneSegment:o,visible:!0})}};t([a({constructOnly:!0})],x.prototype,"analysisViewData",void 0),t([a({constructOnly:!0})],x.prototype,"snappingManager",void 0),t([a({constructOnly:!0})],x.prototype,"view",void 0),t([a()],x.prototype,"automaticManipulatorSelection",void 0),t([a()],x.prototype,"removeIncompleteOnCancel",void 0),t([a()],x.prototype,"interacting",void 0),t([a()],x.prototype,"manipulatorsInteractive",void 0),t([a()],x.prototype,"_grabbedManipulator",void 0),t([a()],x.prototype,"updating",null),x=t([r("esri.views.3d.analysis.LineOfSight.LineOfSightItemTool")],x);export{x as LineOfSightItemTool};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{destroyHandle as e}from"../../../../core/handleUtils.js";import{watch as n,syncAndInitial as o}from"../../../../core/reactiveUtils.js";import{LineOfSightDrawToolRenderer as t}from"./LineOfSightDrawToolRenderer.js";import{isLineOfSightPlacementLeafPlugin as i}from"./LineOfSightPlacementLeafPlugin.js";import{LineOfSightRayIntersector as r}from"./LineOfSightRayIntersector.js";import{DrawTool as a}from"../../../draw/DrawTool.js";import s from"../../../interactive/options/InteractiveToolOptions.js";import{createScreenPointFromEvent as
|
|
2
|
+
import{destroyHandle as e}from"../../../../core/handleUtils.js";import{watch as n,syncAndInitial as o}from"../../../../core/reactiveUtils.js";import{LineOfSightDrawToolRenderer as t}from"./LineOfSightDrawToolRenderer.js";import{isLineOfSightPlacementLeafPlugin as i}from"./LineOfSightPlacementLeafPlugin.js";import{LineOfSightRayIntersector as r}from"./LineOfSightRayIntersector.js";import{DrawTool as a}from"../../../draw/DrawTool.js";import{bindViewToolOptions as s}from"../../../interactive/options/bindViewToolOptions.js";import l from"../../../interactive/options/InteractiveToolOptions.js";import{createScreenPointFromEvent as p}from"../../../support/screenUtils.js";function c(c){const{analysis:f,analysisViewData:m,snappingManager:v,view:d,getVisible:g,getSourceElevationInfo:u,getSnapToSceneEnabled:w,onCancel:b,onComplete:h,onManipulatorCountChange:j,shouldPreventVertexAdd:I}=c,y=u(),S=new t({analysis:f,analysisViewData:m,view:d}),T=new r({view:d}),V=new l,D=new a({elevationInfo:y,enableVertexVisuals:!1,hasZ:!0,renderer:S,toolOptions:V,snappingManager:v,view:d});return S.elevationInfo=y,D.addHandles([e(S),e(T),s(V,()=>d.options),D.on("cancel",()=>b(D)),D.on("complete",()=>h(D)),n(()=>[D.surfaceManager,w()],([e,n])=>{e&&(e.snapToSceneEnabled=n)},o),n(()=>[g(),m.visible,u()],([e,n,o])=>{D.visible=e&&n,S.analysisVisible=D.visible,D.elevationInfo=o,S.elevationInfo=o,S.refresh()},o),n(()=>D.manipulators.length,()=>j(D),o),D.on(["before-vertex-add","before-vertex-add-at-point"],e=>{const n=e.detail.originalEvent;if("immediate-click"!==n?.type)return;const o=p(n);if(I(o,n.pointerType))return void e.preventDefault();const t=T.getScreenPointIntersection(o);if(null==t?.mapPoint)e.preventDefault();else{const e=D.mostDownstreamPlugin;i(e)&&(e.preservedIntersection=t)}})]),{drawTool:D,renderer:S}}export{c as createDrawTool};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../../../../core/Collection.js";import"../../../../core/has.js";import{mapCollection as i}from"../../../../core/mapCollectionUtils.js";import{destroyMaybe as o,removeMaybe as s}from"../../../../core/maybe.js";import{watch as n,sync as l,initial as a}from"../../../../core/reactiveUtils.js";import{property as r,subclass as p}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as d}from"../../../../core/support/UpdatingHandles.js";import{ViewshedInteractionVisuals as c}from"./ViewshedInteractionVisuals.js";import{ViewshedSnappingController as u}from"./ViewshedSnappingController.js";import{ViewshedSubTool as h}from"./ViewshedSubTool.js";import{findSubTool as v}from"./viewshedSubToolUtils.js";import{connectTooltipToManipulatedObject as b}from"../../interactive/editingTools/tooltipUtils3D.js";import{InteractiveToolBase as g}from"../../../interactive/InteractiveToolBase.js";import{sketchKeys as _}from"../../../interactive/keybindings.js";import T from"../../../interactive/options/InteractiveToolOptions.js";import{enterInputModeIfAvailable as y,makeTooltip as
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../../../../core/Collection.js";import"../../../../core/has.js";import{mapCollection as i}from"../../../../core/mapCollectionUtils.js";import{destroyMaybe as o,removeMaybe as s}from"../../../../core/maybe.js";import{watch as n,sync as l,initial as a}from"../../../../core/reactiveUtils.js";import{property as r,subclass as p}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as d}from"../../../../core/support/UpdatingHandles.js";import{ViewshedInteractionVisuals as c}from"./ViewshedInteractionVisuals.js";import{ViewshedSnappingController as u}from"./ViewshedSnappingController.js";import{ViewshedSubTool as h}from"./ViewshedSubTool.js";import{findSubTool as v}from"./viewshedSubToolUtils.js";import{connectTooltipToManipulatedObject as b}from"../../interactive/editingTools/tooltipUtils3D.js";import{InteractiveToolBase as g}from"../../../interactive/InteractiveToolBase.js";import{sketchKeys as _}from"../../../interactive/keybindings.js";import{bindViewToolOptions as T}from"../../../interactive/options/bindViewToolOptions.js";import m from"../../../interactive/options/InteractiveToolOptions.js";import{enterInputModeIfAvailable as y,makeTooltip as V}from"../../../interactive/tooltip/tooltipCommonUtils.js";import{MovePointTooltipInfo as w}from"../../../interactive/tooltip/infos/MovePointTooltipInfo.js";let S=class extends g{constructor(e){super(e),this.subToolHandles=new t,this.removeIncompleteOnCancel=!1,this.automaticManipulatorSelection=!1,this.multiTouchEnabled=!1,this._selectedManipulator=null,this._observerToolOptions=new m,this._observerTooltipConnectionHandle=null,this._updatingHandles=new d}initialize(){const{snappingManager:e,view:t}=this;this._interactionVisuals=new c({view:t}),this._snappingController=new u({snappingManager:e,view:t}),this._initializeObserverTooltip(t);const o=this.analysisViewData.viewshedComputedDataHandles;this.subToolHandles=i(()=>o,({viewshedComputedData:e})=>{const t=new h({analysis:this.analysis,analysisViewData:this.analysisViewData,parentTool:this,view:this.view,viewshedComputedData:e});return{subTool:t,remove:()=>{this.selectedViewshed===e.viewshed&&(this.selectedViewshed=null),t.destroy()}}}),this.addHandles([T(this._observerToolOptions,()=>t.options),n(()=>this.firstGrabbedManipulator,e=>{if(null!=e){const t=this._findSubTool(e)?.viewshed;this.selectedViewshed=t,this._selectManipulator(e)}else this._selectedSubTool?.onManipulatorSelectionChanged()},l),this._updatingHandles.add(()=>{const e=this.selectedViewshedComputedData;return null==e?null:{subTool:this._selectedSubTool,observer:e.elevationAlignedObserverRenderSpace,target:e.elevationAlignedTargetRenderSpace}},e=>{if(null==e)return;const{subTool:t,observer:i,target:o}=e;t?.moveInteractionState.dragging?this._updateInteractionVisualsLocation(i,!0):t?.scaleOrientInteractionState.dragging&&this._updateInteractionVisualsLocation(o,!1)},a),this._updatingHandles.add(()=>this.analysisViewData.visible,()=>this.updateInteractionVisualsVisibility(),a),this._updatingHandles.add(()=>this.selectedViewshed,e=>{const t=this._selectedManipulator,i=this._selectedSubTool;this._connectObserverTooltip(i),null==e?this._selectManipulator(null):null!=t&&i.hasManipulator(t)||this._selectManipulator(i.observerManipulator)},a)])}destroy(){this._selectManipulator(null),this._disconnectObserverTooltip(),o(this.subToolHandles),o(this._interactionVisuals),o(this._snappingController),o(this._observerTooltip),this._updatingHandles.destroy()}get updating(){return!!this._snappingController?.updating||this._updatingHandles.updating||this.subToolHandles.some(({subTool:e})=>e.updating)}get grabbing(){return this.subToolHandles.some(({subTool:e})=>e.grabbing)}get cursor(){return null}get selectedViewshed(){return this.analysisViewData.selectedViewshed}set selectedViewshed(e){this.analysisViewData.selectedViewshed=e}get selectedViewshedComputedData(){return this._selectedSubTool?.viewshedComputedData}onManipulatorSelectionChanged(){this.subToolHandles.forEach(({subTool:e})=>e.onManipulatorSelectionChanged())}updateInteractionVisualsVisibility(e=!1){const t=this._selectedSubTool,i=this.selectedViewshedComputedData;if(null==t||null==i)return void this._interactionVisuals?.setVisibility(!1);const o=t.moveInteractionState,s=e?o.grabbing:o.dragging,n=t.scaleOrientInteractionState,l=e?n.grabbing:n.dragging;if(!(this.analysisViewData.visible&&(s||l)))return void this._interactionVisuals?.setVisibility(!1);const a=s?i.elevationAlignedObserverRenderSpace:i.elevationAlignedTargetRenderSpace;this._interactionVisuals?.update({location:a,laserlineVisible:!0,verticalLineVisible:s,intersectsWorldUp:s})}createObserverMoveSnappingPipeline(e,t,i,o=!1){return this._snappingController.createObserverMoveSnappingPipeline(e,t,i,o)}onActivate(){this.updateInteractionVisualsVisibility()}onDeactivate(){this.updateInteractionVisualsVisibility()}onInputEvent(e){if(!this.destroyed&&!y(e,this._observerTooltip))switch(e.type){case"key-down":_.cancel===e.key?this._cancelKeyHandler(e):_.delete.includes(e.key)&&this._deleteKeyHandler(e);break;case"hold":this.updateInteractionVisualsVisibility(!0)}}_updateInteractionVisualsLocation(e,t){this._interactionVisuals?.updateLocation(e,t)}_initializeObserverTooltip(e){const t=this._observerToolOptions;this._observerTooltip=V(()=>({view:e,options:t.tooltips})),this._observerTooltipInfo=new w({toolOptions:t,viewType:e.type})}_connectObserverTooltip(e){if(this._disconnectObserverTooltip(),null==e)return void this._observerTooltip.clear();const t=e.observerManipulatedObject;this._observerTooltipConnectionHandle=b(this._observerTooltip,t,()=>({toolOptions:this._observerToolOptions,activeTooltipInfo:this._observerTooltipInfo,callbacks:{onBeforeUpdate:()=>this.updateInteractionVisualsVisibility(),onMoveStart:()=>{},onMove:()=>{},onMoveStop:()=>{},onRotateStart:()=>{},onRotate:()=>{},onRotateStop:()=>{},onScaleStart:()=>{},onScale:()=>{},onScaleStop:()=>{}}}))}_disconnectObserverTooltip(){this._observerTooltipConnectionHandle=s(this._observerTooltipConnectionHandle)}_cancelKeyHandler(e){this.grabbing||(this.selectedViewshed=null,e.stopPropagation())}_deleteKeyHandler(e){const t=this.selectedViewshed;null!=t&&(this.analysis.viewsheds.remove(t),e.stopPropagation())}get _selectedSubTool(){return this._findSubTool(this.selectedViewshed)}_findSubTool(e){return v(this.subToolHandles,e)}_selectManipulator(e){const t=this._selectedManipulator;t!==e&&(this._selectedManipulator=e,null!=t&&(t.selected=!1),null!=e&&(e.selected=!0),this._findSubTool(t)?.onManipulatorSelectionChanged(),this._selectedSubTool?.onManipulatorSelectionChanged())}get test(){}};e([r({constructOnly:!0})],S.prototype,"analysis",void 0),e([r({constructOnly:!0})],S.prototype,"analysisViewData",void 0),e([r({constructOnly:!0})],S.prototype,"intersector",void 0),e([r({constructOnly:!0})],S.prototype,"snappingManager",void 0),e([r({constructOnly:!0})],S.prototype,"view",void 0),e([r()],S.prototype,"subToolHandles",void 0),e([r()],S.prototype,"removeIncompleteOnCancel",void 0),e([r()],S.prototype,"automaticManipulatorSelection",void 0),e([r()],S.prototype,"multiTouchEnabled",void 0),e([r()],S.prototype,"_selectedManipulator",void 0),e([r()],S.prototype,"_interactionVisuals",void 0),e([r()],S.prototype,"_snappingController",void 0),e([r()],S.prototype,"_observerTooltip",void 0),e([r()],S.prototype,"_observerTooltipInfo",void 0),e([r()],S.prototype,"updating",null),e([r()],S.prototype,"grabbing",null),e([r()],S.prototype,"cursor",null),e([r()],S.prototype,"selectedViewshed",null),e([r()],S.prototype,"selectedViewshedComputedData",null),e([r()],S.prototype,"_selectedSubTool",null),S=e([p("esri.views.3d.analysis.Viewshed.ViewshedEditTool")],S);export{S as ViewshedEditTool};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../../../../analysis/Viewshed.js";import o from"../../../../core/Accessor.js";import"../../../../core/has.js";import{createAbortError as i,throwIfAborted as n,onAbort as a}from"../../../../core/promiseUtils.js";import{watch as s,sync as
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../../../../analysis/Viewshed.js";import o from"../../../../core/Accessor.js";import"../../../../core/has.js";import{createAbortError as i,throwIfAborted as n,onAbort as a}from"../../../../core/promiseUtils.js";import{watch as s,syncAndInitial as r,sync as l}from"../../../../core/reactiveUtils.js";import{property as c,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{create as p}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{absoluteHeightElevationInfo as d}from"../../../../support/elevationInfoUtils.js";import{createDrawTool as v,getFeatureReference as _}from"./placementUtils.js";import{detachToolFromView as m}from"./toolLifecycleUtils.js";import u from"./ViewshedPlacementOperation.js";import{createViewshedPlacementRootPluginConfiguration as w}from"./ViewshedPlacementRootPlugin.js";import{computeParametersFromTargetPoint as g}from"./viewshedToolUtils.js";import{vectorToRender as P}from"../../interactive/support/viewUtils.js";import{DrawManipulator3D as b}from"../../../draw/DrawManipulator3D.js";import{ViewEventPriorities as f}from"../../../input/InputManager.js";import{sketchKeys as y}from"../../../interactive/keybindings.js";import{bindViewToolOptions as O}from"../../../interactive/options/bindViewToolOptions.js";import S from"../../../interactive/options/InteractiveToolOptions.js";const T="multiple",D=Symbol("hiddenManipulatorHandle");let V=class extends o{constructor(e){super(e),this.placementMode=T,this.observerPlacementElevationInfo=null,this.stagedViewshed=null,this._placeOperation=null,this._drawTool=null,this._renderer=null,this._toolOptions=new S,this._observerScenePoint=p(),this._targetScenePoint=p(),this._mapPointVector=p(),this.creationState=null}initialize(){this.addHandles([O(this._toolOptions,()=>this.view.options),s(()=>[this._drawTool?.tooltipManager,"placing-observer"===this.creationState],([e,t])=>{e&&(e.enabled=t)},r),this.view.on("key-down",e=>this._handleKeyDown(e),f.DEFAULT),s(()=>{const{stagedViewshed:e}=this;return{stagedViewshed:e,stagedViewshedInAnalysis:null!=e&&this.analysis.viewsheds.includes(e)}},({stagedViewshed:e,stagedViewshedInAnalysis:t})=>{null==e||t||this.analysis.viewsheds.add(e)},l)])}destroy(){this._cancelPlacementOperation()}get updating(){return!!this._drawTool?.updating}get active(){return!!this._drawTool?.active}startPlaceOperation(e,t){this._removeStaged(),this.creationState=null,this._rejectPlaceOperation(i()),n(t);const{resolve:o,reject:s,promise:r}=Promise.withResolvers(),l=a(t,()=>this._cancelPlacementOperation());return this._placeOperation=new u({abortHandle:l,reject:s,resolve:o}),this.placementMode=e,this.observerPlacementElevationInfo=t?.elevationInfo,this.callbacks.setSelectedViewshed(null),this._startObserverPlacement(),r}cancelPlaceOperation(){null==this.creationState&&null==this._placeOperation||(this._cancelPlacementOperation(),this.callbacks.cancelTool())}_handleDeleteDuringCreation(){return null!=this.creationState&&(this._destroyDrawTool(),this._removeStaged(),this.callbacks.setSelectedViewshed(null),this._startObserverPlacement(),!0)}_handleKeyDown(e){null!=this.creationState&&(y.cancel===e.key?(this._handleCancelDuringCreation(),e.stopPropagation(),e.preventDefault()):y.delete.includes(e.key)&&(this._handleDeleteDuringCreation(),e.stopPropagation(),e.preventDefault()))}_handleCancelDuringCreation(){if(this._removeStaged()&&"multiple"===this.placementMode)return this.callbacks.setSelectedViewshed(null),void this._startObserverPlacement();this._destroyDrawTool(),this._abortCreation()}_removeStaged(){const{stagedViewshed:e}=this;return this.stagedViewshed=null,!!e&&(this.analysis.viewsheds.remove(e),!0)}_cancelPlacementOperation(){this._destroyDrawTool(),this._removeStaged(),this.creationState=null,this._finishPlaceOperation()}_abortCreation(){this.callbacks.cancelTool(),this.creationState=null,this._finishPlaceOperation()}_handleObserverPlacementComplete(e,o,i){const n=new t({observer:e,elevationInfo:this.observerPlacementElevationInfo,feature:i});this.analysis.viewsheds.add(n),this.stagedViewshed=n,this.creationState="placing-target",this._updateStagedViewshed(o),this.callbacks.setSelectedViewshed(null)}_onCancel(e){const t=this._removeStaged();return"placing-observer"===this.creationState?t&&"multiple"===this.placementMode?(this.callbacks.setSelectedViewshed(null),void this._startObserverPlacement()):(this._destroyDrawTool(e),void this._abortCreation()):t?(this.creationState="placing-observer",this.callbacks.setSelectedViewshed(null),void("multiple"!==this.placementMode?(this._destroyDrawTool(e),this._abortCreation()):this._startPointPlacement())):(this._destroyDrawTool(e),void this._abortCreation())}_handleTargetPlacementComplete(e){this._updateStagedViewshed(e);const t=this.stagedViewshed;this._placeOperation?.markPlacedViewshed(),this.stagedViewshed=null,this.callbacks.setSelectedViewshed(t)}_resolvePlaceOperation(){this._clearPlaceOperationAndRun(e=>e?.resolve())}_finishPlaceOperation(){this._clearPlaceOperationAndRun(e=>e?.finish())}_rejectPlaceOperation(e){this._clearPlaceOperationAndRun(t=>t?.reject(e))}_clearPlaceOperationAndRun(e){const t=this._placeOperation;this._placeOperation=null,this.observerPlacementElevationInfo=null,e(t)}_startObserverPlacement(){this.creationState="placing-observer",this._startPointPlacement()}_startPointPlacement(){this._drawTool&&this._destroyDrawTool(this._drawTool);const{drawTool:e,renderer:t}=v({analysisViewData:this.analysisViewData,snappingManager:this.snappingManager,view:this.view,toolOptions:this._toolOptions,elevationInfo:this._observerDrawToolElevationInfo,getSnapToSceneEnabled:()=>this._snapToSceneEnabled,onCancel:e=>this._onCancel(e),onComplete:e=>this._onComplete(e),onManipulatorCountChange:e=>this._onManipulatorCountChange(e),isPlacingObserver:()=>"placing-observer"===this.creationState});this._drawTool=e,this._renderer=t;try{this.view.addAndActivateTool(e),e.begin([w({mode:this.placementMode,onObserverComplete:(e,t)=>this._onObserverMapPointComplete(e,t),onTargetComplete:e=>this._onTargetMapPointComplete(e),onObserverPreview:e=>this._onObserverMapPointPreview(e),onTargetPreview:e=>this._onTargetMapPointPreview(e)})])}catch(o){this._destroyDrawTool(e),this._rejectPlaceOperation(o instanceof Error?o:new Error(String(o)))}}_onComplete(e){this._removeStaged(),this._resolvePlaceOperation(),this._destroyDrawTool(e),this.creationState=null}_onObserverMapPointComplete(e,t){const{intersector:o,snappingManager:i,view:n}=this,a=e.clone(),s=this._toScenePoint(e,this._targetScenePoint,this._observerDrawToolElevationInfo),r=_({intersector:o,snappingManager:i,screenPoint:t,view:n});this._renderer?.updatePlacementLocation(s),this._handleObserverPlacementComplete(a,s,r),this._setDrawToolElevationInfo(d)}_onTargetMapPointComplete(e){const t=this._toScenePoint(e,this._targetScenePoint);this._renderer?.updatePlacementLocation(t),this._handleTargetPlacementComplete(t),"multiple"===this.placementMode&&(this.creationState="placing-observer",this._setDrawToolElevationInfo(this._observerDrawToolElevationInfo),this._onObserverMapPointPreview(e))}_onObserverMapPointPreview(e){const t=e.clone(),o=this._toScenePoint(t,this._observerScenePoint,this._observerDrawToolElevationInfo);this._renderer?.updatePlacementLocation(o)}_onTargetMapPointPreview(e){const t=this._toScenePoint(e,this._targetScenePoint);this._renderer?.updatePlacementLocation(t),this._updateStagedViewshed(t)}_setDrawToolElevationInfo(e){const t=this._drawTool;t&&(t.elevationInfo=e)}get _observerDrawToolElevationInfo(){return this.observerPlacementElevationInfo??d}get _snapToSceneEnabled(){const e=this.observerPlacementElevationInfo?.mode;return("placing-observer"!==this.creationState||null==e||"absolute-height"===e)&&null}_onManipulatorCountChange(e){e.removeHandles(D);const t=[];e.manipulators.forEach(({manipulator:e})=>{e instanceof b&&t.push(e.disableDisplay())}),e.addHandles(t,D)}_destroyDrawTool(e=this._drawTool){this._drawTool=null,this._renderer=null,e&&m(this.view,e)}_toScenePoint(e,t,o=d){const{x:i,y:n,z:a,spatialReference:s}=e,r=this._mapPointVector;return r[0]=i,r[1]=n,r[2]=a??0,P(r,s,o,this.view,t)}_updateStagedViewshed(e){const t=this.stagedViewshed;if(!t)return;const o=this.callbacks.findViewshedComputedData(t);if(!o)return;const{heading:i,tilt:n,farDistance:a}=g(this.view,o,e);t.farDistance=a,t.tilt=n,t.heading=i}get test(){}};e([c({constructOnly:!0})],V.prototype,"analysis",void 0),e([c({constructOnly:!0})],V.prototype,"analysisViewData",void 0),e([c({constructOnly:!0})],V.prototype,"intersector",void 0),e([c({constructOnly:!0})],V.prototype,"snappingManager",void 0),e([c({constructOnly:!0})],V.prototype,"view",void 0),e([c({constructOnly:!0})],V.prototype,"callbacks",void 0),e([c()],V.prototype,"placementMode",void 0),e([c()],V.prototype,"observerPlacementElevationInfo",void 0),e([c()],V.prototype,"stagedViewshed",void 0),e([c()],V.prototype,"_placeOperation",void 0),e([c()],V.prototype,"_drawTool",void 0),e([c()],V.prototype,"_renderer",void 0),e([c()],V.prototype,"_toolOptions",void 0),e([c()],V.prototype,"updating",null),e([c()],V.prototype,"active",null),e([c()],V.prototype,"creationState",void 0),V=e([h("esri.views.3d.analysis.Viewshed.ViewshedPlacementController")],V);export{V as ViewshedPlacementController};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import{deg2rad as i}from"../../../../core/mathUtils.js";import{valueInUnit as o}from"../../../../core/quantity.js";import{watch as e,sync as s,syncAndInitial as n}from"../../../../core/reactiveUtils.js";import{verticalLengthUnitFromSpatialReference as a,convertUnit as l}from"../../../../core/units.js";import{property as r,subclass as p}from"../../../../core/accessorSupport/decorators.js";import{rotateZ as h}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{subtract as u,lerp as d}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{clone as c,fromArray as m}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{UpdatingHandles as
|
|
2
|
+
import{__decorate as t}from"tslib";import{deg2rad as i}from"../../../../core/mathUtils.js";import{valueInUnit as o}from"../../../../core/quantity.js";import{watch as e,sync as s,syncAndInitial as n}from"../../../../core/reactiveUtils.js";import{verticalLengthUnitFromSpatialReference as a,convertUnit as l}from"../../../../core/units.js";import{property as r,subclass as p}from"../../../../core/accessorSupport/decorators.js";import{rotateZ as h}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{subtract as u,lerp as d}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{clone as c,fromArray as m}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{UpdatingHandles as v}from"../../../../core/support/UpdatingHandles.js";import{sv3d as f,sm4d as _}from"../../../../geometry/support/vectorStacks.js";import{IsShiftEdgeOnScreenFlag as y}from"../Slice/sliceToolUtils.js";import{calculateTranslateRotateFromBases as g}from"../../interactive/manipulatorUtils.js";import{screenToZConstrained as w}from"../../interactive/editingTools/dragEventPipeline3D.js";import{ShiftManipulator as T}from"../../interactive/manipulators/ShiftManipulator.js";import{createManipulatorDragEventPipeline as U,addMapTranslation as M}from"../../../interactive/dragEventPipeline.js";import{InteractiveToolBase as j}from"../../../interactive/InteractiveToolBase.js";import O from"../../../interactive/options/InteractiveToolOptions.js";import E from"../../../interactive/support/Units.js";import{makeTooltip as I,enterInputModeIfAvailable as V}from"../../../interactive/tooltip/tooltipCommonUtils.js";import{ElevationTooltipInfo as b}from"../../../interactive/tooltip/infos/ElevationTooltipInfo.js";import{elevationFromZ as P}from"../../../support/euclideanLengthMeasurementUtils.js";let x=class extends j{constructor(t){super(t),this.multiTouchEnabled=!1,this._updatingHandles=new v,this.toolOptions=new O}initialize(){const{view:t}=this;this._shiftManipulator=new T(t,0,8),this._shiftManipulator.state|=y,this.manipulators.add(this._shiftManipulator),this.addHandles([this._createDragPipeline(),e(()=>this.analysisViewData.targetGeometry,()=>this._updateManipulatorPosition(),s),e(()=>this._showManipulator,t=>this._updateManipulatorVisibility(t),n)]),this._initializeTooltip(),this.finishToolCreation()}_initializeTooltip(){const{view:t}=this;this.tooltip=I(()=>({view:t,options:this.toolOptions.tooltips})),this._tooltipInfo=new b({toolOptions:this.toolOptions}),this.toolOptions.tooltips.enabled=!0,this.toolOptions.tooltips.placement="trailing",this._updateToolOptions(),this.addHandles([this._updatingHandles.add(()=>this.analysisViewData.effectiveTargetElevation,()=>this._updateTooltip()),this._updatingHandles.add(()=>this._shouldShowTooltip,t=>{t?this._showTooltip():this._hideTooltip()}),this.tooltip.on("commit",()=>{const t=this._tooltipInfo.elevation.actual,i=a(this.view.spatialReference);if(null==t||null==i)return;const e=o(t,i);this._updateValue(e,{recordUndo:this.analysis.cutFillOptions.targetElevation})}),e(()=>[this.analysis.displayUnits.elevation,this.analysis.inputUnits.elevation,t.options.displayUnits.verticalLength,t.options.inputUnits.verticalLength],()=>this._updateToolOptions(),n)])}destroy(){this._shiftManipulator.destroy(),this.tooltip.destroy(),this._updatingHandles.destroy()}get updating(){return this._updatingHandles.updating}onInputEvent(t){if(!this.destroyed&&!V(t,this.tooltip))return super.onInputEvent(t)}onHide(){this._hideTooltip()}onEditableChange(){this.internallyEditable||this._hideTooltip()}get _shouldShowTooltip(){return this._showManipulator&&(this.hasFocusedManipulators||"input"===this.tooltip.mode)}get _showManipulator(){const{interactive:t,targetGeometry:i,visible:o}=this.analysisViewData,{measureType:e}=this.analysis;return o&&t&&null!=i&&"cut-fill"===e}_createDragPipeline(){return U(this._shiftManipulator,(t,i,o)=>{const e=c(t.renderLocation),s=this.analysis.inputUnits.elevation??"meters",n=a(this.view.spatialReference);let r;i.next(w(this.view,e,this.view.spatialReference)).next(M()).next(t=>{if("start"===t.action){const{targetElevation:t}=this.analysis.cutFillOptions;r=t&&n?l(t,s,n):void 0}return this._updateValue(null!=r?r+t.translationZ:t.mapEnd.z,"end"===t.action?{recordUndo:r}:void 0),t}),o.next(()=>{this._updateValue(r)})})}_updateManipulatorPosition(){const{targetGeometry:t}=this.analysisViewData,{renderCoordsHelper:o}=this.view;if(!t)return;const e=.5,s=t.rings[0],n=m(s[0]),a=m(s[1]);o.toRenderCoords(n,t.spatialReference,n),o.toRenderCoords(a,t.spatialReference,a);const l=f.get();u(l,a,n);const r=f.get();d(r,n,a,e);const p=o.worldBasisAtPosition(r,1,f.get()),v=o.worldBasisAtPosition(r,0,f.get()),y=g(p,v,r,_.get()),w=o.headingAtPosition(r,l),T=t.isClockwise(t.rings[0])?-Math.PI/2:Math.PI/2;h(y,y,i(w)+T),y[12]=0,y[13]=0,y[14]=0,this._shiftManipulator.renderLocation=c(r),this._shiftManipulator.modelTransform=y}_updateManipulatorVisibility(t){this._shiftManipulator.available=t}_updateValue(t,i){const o=P(t,this.view.spatialReference);if(null==o)return;const e=this.analysis.inputUnits.elevation??"meters",s=l(o.value,o.unit,e),n=t=>{this.analysis.cutFillOptions.targetElevation=t};if(n(s),i&&"recordUndo"in i){const t=i.recordUndo;this.emit("record-undo",{apply:()=>n(s),undo:()=>n(t)})}}_getUpdatedTooltipInfo(){const{effectiveTargetElevation:t}=this.analysisViewData;return t?(this._tooltipInfo.elevation.actual=P(t,this.view.spatialReference),this._tooltipInfo):this._tooltipInfo}_updateTooltip(){this._shouldShowTooltip&&(this.tooltip.info=this._getUpdatedTooltipInfo())}_showTooltip(){this._updateTooltip()}_hideTooltip(){this.tooltip?.clear(),this.tooltip?.exitInputMode({focusOnView:!1})}_updateToolOptions(){const{analysis:t}=this,{displayUnits:i,inputUnits:o}=t,e=this.view.options;this.toolOptions.values.inputUnits=new E({verticalLength:o.elevation??e.inputUnits.verticalLength}),this.toolOptions.values.displayUnits=new E({verticalLength:i.elevation??e.displayUnits.verticalLength})}};t([r()],x.prototype,"multiTouchEnabled",void 0),t([r()],x.prototype,"updating",null),t([r({constructOnly:!0})],x.prototype,"analysis",void 0),t([r({constructOnly:!0})],x.prototype,"view",void 0),t([r({constructOnly:!0})],x.prototype,"analysisViewData",void 0),t([r({constructOnly:!0,type:O})],x.prototype,"toolOptions",void 0),t([r()],x.prototype,"_shouldShowTooltip",null),t([r()],x.prototype,"_showManipulator",null),x=t([p("esri.views.3d.analysis.VolumeMeasurement.VolumeMeasurementShiftTool")],x);export{x as VolumeMeasurementShiftTool};
|
|
@@ -28,6 +28,7 @@ import type { VolumeMeasurementPlacementResult } from "./VolumeMeasurement/types
|
|
|
28
28
|
* > **Things to consider:**
|
|
29
29
|
* >
|
|
30
30
|
* > - When using the "cut-fill" [VolumeMeasurementAnalysis.measureType](https://developers.arcgis.com/javascript/latest/references/core/analysis/VolumeMeasurementAnalysis/#measureType) in [interactive](https://developers.arcgis.com/javascript/latest/references/core/views/3d/analysis/VolumeMeasurementAnalysisView3D/#interactive) mode, hover over the shift manipulator, press `Tab` to activate the tooltip input mode, and enter the elevation of the target surface.
|
|
31
|
+
* > - The cut-fill elevation tooltip is enabled by default and remains enabled independently of [ViewOptions.tooltips](https://developers.arcgis.com/javascript/latest/references/core/views/interactive/options/ViewOptions/#tooltips). Support for this setting is planned for a future release.
|
|
31
32
|
* > - Snapping is enabled by default. This can be temporarily disabled by holding the `CTRL` key.
|
|
32
33
|
* > - Layer types currently supported for snapping are: [FeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/), [GraphicsLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GraphicsLayer/) (except Mesh geometries),
|
|
33
34
|
* > [GeoJSONLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GeoJSONLayer/), [WFSLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/WFSLayer/), [CSVLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/CSVLayer/),
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import"../../../core/has.js";import{destroyMaybe as t}from"../../../core/maybe.js";import{verticalLengthUnitFromSpatialReference as i,convertUnit as r}from"../../../core/units.js";import{property as o,subclass as l}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as s}from"../../../support/getDefaultUnitForView.js";import n from"./AnalysisView3D.js";import{VolumeMeasurementController as a}from"./VolumeMeasurement/VolumeMeasurementController.js";import u from"./VolumeMeasurement/VolumeMeasurementTool.js";import{VolumeMeasurementVisualization as p}from"./VolumeMeasurement/VolumeMeasurementVisualization.js";let m=class extends n{constructor(e){super(e),this.type="volume-measurement-view-3d",this.analysis=null}initialize(){const{analysis:e,view:t}=this;this._controller=new a({view:t,analysis:e,viewData:this}),this._tool=new u({analysis:e,view:t,viewData:this}),this._visualization=new p({view:t,analysis:e,viewData:this})}destroy(){this._controller=t(this._controller),this._visualization=t(this._visualization),this._tool.destroy()}get error(){return this._controller?.error??null}get result(){return this._controller?.result}get interactive(){return super.interactive}set interactive(e){super.interactive=e}get visible(){return super.visible}set visible(e){super.visible=e}get elevationAlignedGeometry(){return this._controller?.elevationAlignedGeometry}get effectiveTargetElevation(){const{cutFillOptions:e,inputUnits:t}=this.analysis,{targetElevation:o}=e,l=t?.elevation??"meters",s=i(this.view.spatialReference);if(null!=o&&null!=s)return r(o,l,s);const n=this.elevationAlignedGeometry?.extent;return null==n?.zmin||null==n?.zmax?null:(n.zmax+n.zmin)/2}get targetGeometry(){return this._controller?.targetGeometry}get effectiveDisplayUnits(){const{displayUnits:e}=this.analysis,t=s(this.view);return{elevation:e.elevation??t,volume:e.volume??t,area:e.area??t,length:e.length??t}}get depthExtremaPositions(){return this._controller?.depthExtremaPositions}get analysisObb(){return this._controller?.analysisObb}get updating(){return this._controller?.updating||this._tool?.updating||this._visualization?.updating}place(e){return this._tool.place(e)}get test(){}};e([o()],m.prototype,"error",null),e([o({readOnly:!0})],m.prototype,"type",void 0),e([o({constructOnly:!0,nonNullable:!0})],m.prototype,"analysis",void 0),e([o({readOnly:!0})],m.prototype,"result",null),e([o()],m.prototype,"elevationAlignedGeometry",null),e([o({type:Number})],m.prototype,"effectiveTargetElevation",null),e([o()],m.prototype,"targetGeometry",null),e([o()],m.prototype,"effectiveDisplayUnits",null),e([o()],m.prototype,"depthExtremaPositions",null),e([o()],m.prototype,"analysisObb",null),e([o()],m.prototype,"updating",null),e([o()],m.prototype,"_controller",void 0),m=e([l("esri.views.3d.analysis.VolumeMeasurementAnalysisView3D")],m);const
|
|
2
|
+
import{__decorate as e}from"tslib";import"../../../core/has.js";import{destroyMaybe as t}from"../../../core/maybe.js";import{verticalLengthUnitFromSpatialReference as i,convertUnit as r}from"../../../core/units.js";import{property as o,subclass as l}from"../../../core/accessorSupport/decorators.js";import{getDefaultUnitForView as s}from"../../../support/getDefaultUnitForView.js";import n from"./AnalysisView3D.js";import{VolumeMeasurementController as a}from"./VolumeMeasurement/VolumeMeasurementController.js";import u from"./VolumeMeasurement/VolumeMeasurementTool.js";import{VolumeMeasurementVisualization as p}from"./VolumeMeasurement/VolumeMeasurementVisualization.js";let m=class extends n{constructor(e){super(e),this.type="volume-measurement-view-3d",this.analysis=null}initialize(){const{analysis:e,view:t}=this;this._controller=new a({view:t,analysis:e,viewData:this}),this._tool=new u({analysis:e,view:t,viewData:this}),this._visualization=new p({view:t,analysis:e,viewData:this})}destroy(){this._controller=t(this._controller),this._visualization=t(this._visualization),this._tool.destroy()}get error(){return this._controller?.error??null}get result(){return this._controller?.result}get interactive(){return super.interactive}set interactive(e){super.interactive=e}get visible(){return super.visible}set visible(e){super.visible=e}get elevationAlignedGeometry(){return this._controller?.elevationAlignedGeometry}get effectiveTargetElevation(){const{cutFillOptions:e,inputUnits:t}=this.analysis,{targetElevation:o}=e,l=t?.elevation??"meters",s=i(this.view.spatialReference);if(null!=o&&null!=s)return r(o,l,s);const n=this.elevationAlignedGeometry?.extent;return null==n?.zmin||null==n?.zmax?null:(n.zmax+n.zmin)/2}get targetGeometry(){return this._controller?.targetGeometry}get effectiveDisplayUnits(){const{displayUnits:e}=this.analysis,t=this.view.options.displayUnits,i=s(this.view);return{elevation:e.elevation??t.verticalLength??i,volume:e.volume??t.volume??i,area:e.area??t.area??i,length:e.length??t.length??i}}get depthExtremaPositions(){return this._controller?.depthExtremaPositions}get analysisObb(){return this._controller?.analysisObb}get updating(){return this._controller?.updating||this._tool?.updating||this._visualization?.updating}place(e){return this._tool.place(e)}get test(){}};e([o()],m.prototype,"error",null),e([o({readOnly:!0})],m.prototype,"type",void 0),e([o({constructOnly:!0,nonNullable:!0})],m.prototype,"analysis",void 0),e([o({readOnly:!0})],m.prototype,"result",null),e([o()],m.prototype,"elevationAlignedGeometry",null),e([o({type:Number})],m.prototype,"effectiveTargetElevation",null),e([o()],m.prototype,"targetGeometry",null),e([o()],m.prototype,"effectiveDisplayUnits",null),e([o()],m.prototype,"depthExtremaPositions",null),e([o()],m.prototype,"analysisObb",null),e([o()],m.prototype,"updating",null),e([o()],m.prototype,"_controller",void 0),m=e([l("esri.views.3d.analysis.VolumeMeasurementAnalysisView3D")],m);const v=m;export{v as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{createScreenPointArray as t}from"../../../../core/screenUtils.js";import{RotateController as r}from"../../state/controllers/RotateController.js";import{InputHandler as e}from"../../../input/InputHandler.js";import{
|
|
2
|
+
import{createScreenPointArray as t}from"../../../../core/screenUtils.js";import{RotateController as r}from"../../state/controllers/RotateController.js";import{InputHandler as e}from"../../../input/InputHandler.js";import{eventMatchesPointerActions as o}from"../../../input/handlers/support.js";class a extends e{constructor(t,r,e,o){super(!0),this._view=t,this.pointerActions=r,this._pivot=e,this.registerIncoming("drag",o,t=>this._handleDrag(t))}_handleDrag(e){const a=e.data;if(a.pointers.size>1||!o(e.data,this.pointerActions))return;const s=t(a.center.x,a.center.y);switch(a.action){case"start":this._cameraController&&(this._cameraController.end(),this._cameraController=null),this._cameraController=new r({view:this._view,pivot:this._pivot}),this._view.state.switchCameraController(this._cameraController),this._cameraController.begin(s);break;case"update":this._cameraController&&this._cameraController.update(s);break;case"end":this._cameraController&&(this._cameraController.end(),this._cameraController=null);break;default:return}e.stopPropagation()}}export{a as DragRotate};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{PinchAndPanControllerGlobal as t}from"../../state/controllers/PinchAndPanControllerGlobal.js";import{PinchAndPanControllerLocal as e}from"../../state/controllers/PinchAndPanControllerLocal.js";import{InputHandler as s}from"../../../input/InputHandler.js";import{
|
|
2
|
+
import{PinchAndPanControllerGlobal as t}from"../../state/controllers/PinchAndPanControllerGlobal.js";import{PinchAndPanControllerLocal as e}from"../../state/controllers/PinchAndPanControllerLocal.js";import{InputHandler as s}from"../../../input/InputHandler.js";import{eventMatchesPointerActions as r}from"../../../input/handlers/support.js";class i extends s{constructor(t,e,s){super(!0),this._view=t,this.pointerActions=e,this._lastEndTimestamp=0,this._lastTimestamp=0,this.registerIncoming("drag",s,t=>this._handleDrag(t))}_handleDrag(t){if(1===t.data.pointers.size&&"removed"!==t.data.action&&!r(t.data,this.pointerActions))return;const e=t.timestamp-this._lastEndTimestamp,s=40,i=this._momentum&&this._momentum.running&&e<s;switch(t.data.action){case"start":case"update":if(i)break;this._controller&&this._controller.running?t.data.timestamp-this._lastTimestamp>2&&(this._controller.update(t.data),this._lastTimestamp=t.timestamp):this._startController(t);break;case"end":case"removed":this._endController(t,!0);break;case"added":this._endController(t,!1),this._startController(t)}t.stopPropagation()}_endController(t,e){if(this._controller?.running){this._lastEndTimestamp=t.timestamp;const s=this._controller.end(t.data);e&&s&&(this._momentum=s,this._view.state.switchCameraController(this._momentum))}this._controller=null}_startController(t){this._controller=this._createController(),this._view.state.switchCameraController(this._controller),this._controller.begin(t.data),this._lastTimestamp=t.timestamp}_createController(){return this._view.state.isGlobal?new t({view:this._view}):new e({view:this._view})}}export{i as PinchAndPanNavigation};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{
|
|
2
|
+
import{ignoreAbortErrors as t}from"../../../../../core/promiseUtils.js";import{createScreenPointArray as e}from"../../../../../core/screenUtils.js";import{copy as i,subtract as o,add as r}from"../../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as s}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{getReferenceEllipsoid as n}from"../../../../../geometry/ellipsoidUtils.js";import{fromRenderCamera as a}from"../../../webgl.js";import{shortenTranslation as m}from"../../../state/utils/groundNavigationUtils.js";import{pickPointAndInitSphere as l}from"../../../state/utils/navigationUtils.js";import{OffsetCorrectionController as c}from"../../../state/utils/OffsetCorrectionController.js";import p from"../../../webgl/RenderCamera.js";import{InputHandler as h}from"../../../../input/InputHandler.js";import{eventMatchesPointerAction as f}from"../../../../input/handlers/support.js";const _=.99,g=2,u=1e3,d=500;class v extends h{constructor(t,e){super(!0),this._view=t,this._tmpTranslation=s(),this._tmpTargetLocation=s(),this._tmpCenterOffset=s(),this.registerIncoming("double-click",e,t=>this._handleDoubleClick(t)),this._offsetCorrectionController=new c(this._view)}_handleDoubleClick(t){if("ground"!==this._view.navigation.mode.type)return;const{data:e}=t;f(e,"primary")&&(this._move(t),t.stopPropagation())}_move(s){const c=this._view.state.camera,h=(new p).copyFrom(c),f=e(s.data.x,s.data.y);if(this._view.state.isGlobal){const t=l(this._view,this._view.state.camera,f,n(this._view.spatialReference).radius,1,{});if(null==t.scenePickPoint||!t.hasGeometryIntersection)return;i(this._tmpTargetLocation,t.scenePickPoint)}else{if(!this._view.sceneIntersectionHelper.intersectScreenFreePointFallback(f,this._tmpTargetLocation,{}))return}o(this._tmpTranslation,this._tmpTargetLocation,c.eye),m(this._tmpTranslation,this._tmpTranslation,_,g),r(this._tmpTargetLocation,c.eye,this._tmpTranslation),o(this._tmpCenterOffset,h.center,h.eye),h.eye=this._tmpTargetLocation,h.center=r(this._tmpCenterOffset,this._tmpTargetLocation,this._tmpCenterOffset),this._offsetCorrectionController.immediatelyCorrectGroundElevation(h,u),t(this._view.goTo(a(this._view,h),{liftOffDisabled:!0,duration:d}))}}export{v as GroundDoubleClickMove};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import"../../../../../core/has.js";import{GroundNavigationController as t}from"../../../state/controllers/GroundNavigationController.js";import{InputHandler as e}from"../../../../input/InputHandler.js";import{
|
|
2
|
+
import"../../../../../core/has.js";import{GroundNavigationController as t}from"../../../state/controllers/GroundNavigationController.js";import{InputHandler as e}from"../../../../input/InputHandler.js";import{eventMatchesPointerActions as s}from"../../../../input/handlers/support.js";class r extends e{constructor(t,e,s){super(!0),this._view=t,this.pointerActions=e,this._modifiers=s,this._lastEndTimestamp=0,this._lastTimestamp=0,this.registerIncoming("drag",s,t=>this._handleDrag(t))}_handleDrag(t){if(1===t.data.pointers.size&&!s(t.data,this.pointerActions))return;const e=t.timestamp-this._lastEndTimestamp,r=40,i=this._momentum&&this._momentum.running&&e<r;switch(t.data.action){case"start":case"update":if(i)break;this._controller&&this._controller.running?t.data.timestamp-this._lastTimestamp>2&&(this._controller.update(t.data),this._lastTimestamp=t.timestamp):this._startController(t);break;case"end":case"removed":this._endController(t,!0);break;case"added":this._endController(t,!1),this._startController(t)}t.stopPropagation()}_endController(t,e){if(this._controller?.running){this._lastEndTimestamp=t.timestamp;const s=this._controller.end(t.data);e&&s&&(this._momentum=s,this._view.state.switchCameraController(this._momentum))}this._controller=null}_startController(t){this._controller=this._createController(),this._view.state.switchCameraController(this._controller),this._controller.begin(t.data),this._lastTimestamp=t.timestamp}_createController(){return new t({view:this._view})}get test(){}}export{r as GroundNavigation};
|