@arcgis/core 5.0.0-next.53 → 5.0.0-next.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Basemap.d.ts +1 -1
- package/Color.js +1 -1
- package/PopupTemplate.d.ts +2 -2
- package/WebLinkChart.d.ts +1 -1
- package/applications/Components/QuantityFormatter.d.ts +7 -7
- package/applications/Components/analysisUtils.d.ts +28 -53
- package/applications/Components/baUtils.d.ts +8 -0
- package/applications/Components/featureUtils.d.ts +1 -1
- package/applications/Components/imageryUtils.d.ts +2 -2
- package/applications/Components/layerOriginUtils.d.ts +3 -3
- package/applications/Components/reactiveUtils.d.ts +24 -5
- package/applications/Excalibur/videoViewUtils.d.ts +2 -2
- package/applications/ExperienceBuilder/sketchUtils.d.ts +6 -6
- package/applications/KnowledgeStudio/generalSdkInternalAccess.d.ts +7 -13
- package/applications/KnowledgeStudio/generalSharedKgUtils.d.ts +7 -7
- package/applications/KnowledgeStudio/reshape.d.ts +6 -15
- package/applications/MapViewer/mediaUtils.d.ts +4 -4
- package/applications/MapViewer/templateUtils.d.ts +3 -3
- package/applications/PortalApp/layerUtils.d.ts +10 -0
- package/applications/PortalApp/layerUtils.js +5 -0
- package/arcade/featureSetUtils.js +1 -1
- package/arcade/featureset/support/shared.js +1 -1
- package/arcade.d.ts +33 -17
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{5aa354854219361f722b.js → 0099f4729c94c779ba35.js} +1 -1
- package/assets/esri/core/workers/chunks/00e407d262c49890afa8.js +1 -0
- package/assets/esri/core/workers/chunks/{15a0750c10b510564a42.js → 01d38a9ca9e88c38aab9.js} +1 -1
- package/assets/esri/core/workers/chunks/087cf25ca211836a084a.js +1 -0
- package/assets/esri/core/workers/chunks/{a3f23f08337e101e4e64.js → 097001462d93b78b64f4.js} +1 -1
- package/assets/esri/core/workers/chunks/0a39c6dc57bd60d5587e.js +1 -0
- package/assets/esri/core/workers/chunks/0d1e8d5d9abee38e275e.js +316 -0
- package/assets/esri/core/workers/chunks/{cef873da468668eb95cb.js → 18cc131fd63d8c15df54.js} +3 -4
- package/assets/esri/core/workers/chunks/{da922e861d5845ae0979.js → 1ab98591d2f2bc604505.js} +1 -1
- package/assets/esri/core/workers/chunks/1b2e17c04c34cfa671a1.js +1 -0
- package/assets/esri/core/workers/chunks/211837df0edada4414c5.js +1 -0
- package/assets/esri/core/workers/chunks/22b07c54a5fcc27771b0.js +1 -0
- package/assets/esri/core/workers/chunks/{cd8fec3500e6503ae020.js → 23a9dd9454d5249bbd59.js} +1 -1
- package/assets/esri/core/workers/chunks/311c4914a4f69f3c1525.js +1 -0
- package/assets/esri/core/workers/chunks/316f3e93aa0db48ef129.js +1 -0
- package/assets/esri/core/workers/chunks/{108675a17e432a02cf66.js → 35cbc61a006351620ead.js} +1 -1
- package/assets/esri/core/workers/chunks/{1bf4b5e5402790ccb450.js → 369f37060608342a4262.js} +1 -1
- package/assets/esri/core/workers/chunks/3b5e71b156244789f624.js +1 -0
- package/assets/esri/core/workers/chunks/3f0959b1abafe516146e.js +1 -0
- package/assets/esri/core/workers/chunks/{553ca1e55e9f1359839c.js → 44c228388a95fa958827.js} +1 -1
- package/assets/esri/core/workers/chunks/454c15367cccbf63af7a.js +1 -0
- package/assets/esri/core/workers/chunks/{f3d8d5fe15501220792d.js → 495b11fdecc3ba90d454.js} +1 -1
- package/assets/esri/core/workers/chunks/4f33a2ecb154a2c2449c.js +1 -0
- package/assets/esri/core/workers/chunks/{b1d3d2c93c189e215f67.js → 5047acfd66539eefe353.js} +1 -1
- package/assets/esri/core/workers/chunks/{cddce67919e13e2f365e.js → 51fd6662245b920af652.js} +1 -1
- package/assets/esri/core/workers/chunks/52726458f590e726d52c.js +1 -0
- package/assets/esri/core/workers/chunks/{d677b378449257103ec4.js → 58cf5b9a6aa685fc3367.js} +1 -1
- package/assets/esri/core/workers/chunks/{395a0773ccafd1f24c4d.js → 5d31fbabaa875f8627c0.js} +1 -1
- package/assets/esri/core/workers/chunks/67a45faa80316f43c51b.js +1 -0
- package/assets/esri/core/workers/chunks/6d09965ab2bff9da88b6.js +1 -0
- package/assets/esri/core/workers/chunks/{521aac8a665e98e4ca78.js → 700122f775b98a7ed353.js} +1 -1
- package/assets/esri/core/workers/chunks/{a92c1171314a68504c1b.js → 7353d78feba7e6302b6e.js} +1 -1
- package/assets/esri/core/workers/chunks/{13ce8e8d45779b11ee12.js → 7f4fa2f2e85863d3cfb9.js} +1 -1
- package/assets/esri/core/workers/chunks/{a4f89568205d78d91cfe.js → 80c36f1786ae0be00962.js} +1 -1
- package/assets/esri/core/workers/chunks/{549f4ab9e285deaf04fb.js → 81d89107ff82604a3ea0.js} +1 -1
- package/assets/esri/core/workers/chunks/8208c073e606973ea1ad.js +1 -0
- package/assets/esri/core/workers/chunks/{62ed6b45482e39d67785.js → 893a5ab0c2df9262efd8.js} +1 -1
- package/assets/esri/core/workers/chunks/{1f0c7ab33e466a37c7f9.js → 8c1f1eb36198ce40ef13.js} +1 -1
- package/assets/esri/core/workers/chunks/92928c56b312e1514600.js +1 -0
- package/assets/esri/core/workers/chunks/94929cf2b9fc66a93882.js +1 -0
- package/assets/esri/core/workers/chunks/94f02082a006003ef5a9.js +1 -0
- package/assets/esri/core/workers/chunks/951e3c911a3486b1e609.js +1 -0
- package/assets/esri/core/workers/chunks/{54666586754949bfa584.js → 983356eb4fd0a0dcf3fd.js} +1 -1
- package/assets/esri/core/workers/chunks/a16e75ff5cd9b22be197.js +1 -0
- package/assets/esri/core/workers/chunks/{36d9208895abd1ba4ff1.js → a623676c74745e040a2a.js} +1 -1
- package/assets/esri/core/workers/chunks/{1065fd655bb7cee243fd.js → a624dd283d264dce35a8.js} +1 -1
- package/assets/esri/core/workers/chunks/{2dfaead2ec6434513d45.js → a6742abe3ebe371e85f1.js} +1 -1
- package/assets/esri/core/workers/chunks/acc7ff44bfcb5c195114.js +1 -0
- package/assets/esri/core/workers/chunks/ad92427bf597a6e0a299.js +1 -0
- package/assets/esri/core/workers/chunks/{640085b5ade5c7f16228.js → b285de471ca90f38ec25.js} +1 -1
- package/assets/esri/core/workers/chunks/b8f83a272fc41765031d.js +1 -0
- package/assets/esri/core/workers/chunks/{19270a2de33f2662005b.js → b93f2bd6429879f92143.js} +1 -1
- package/assets/esri/core/workers/chunks/be6cc8a1485961f22372.js +1 -0
- package/assets/esri/core/workers/chunks/{bf5a120bc0c4851dbb69.js → bef2a70d382515b3c84e.js} +1 -1
- package/assets/esri/core/workers/chunks/{e2973e5626e5039209f9.js → c448540065690cac0744.js} +1 -1
- package/assets/esri/core/workers/chunks/cc67f066c3c0c2a1a37c.js +33 -0
- package/assets/esri/core/workers/chunks/{95057105f1b3bf805140.js → cd2ea924cb91cdb6dde9.js} +1 -1
- package/assets/esri/core/workers/chunks/d199deff988eaefe18b4.js +1 -0
- package/assets/esri/core/workers/chunks/{2ef4c0092c59a98a5532.js → d54988c21ea5667d00b7.js} +1 -1
- package/assets/esri/core/workers/chunks/d94a2ad5a91de7086fbe.js +1 -0
- package/assets/esri/core/workers/chunks/{23396a6318edf9264c1f.js → dcf6f7001f470f76bd3e.js} +1 -1
- package/assets/esri/core/workers/chunks/{cd39a53ef74f47604977.js → e03c706e327f4989280a.js} +1 -1
- package/assets/esri/core/workers/chunks/e47535f795b15608a6cb.js +1 -0
- package/assets/esri/core/workers/chunks/e572ffc1d000e4e6325f.js +1 -0
- package/assets/esri/core/workers/chunks/ed38c1043e6a83f49f93.js +1 -0
- package/assets/esri/core/workers/chunks/{11ab10668632648b2ba7.js → f2e8abb556a380cc2941.js} +1 -1
- package/assets/esri/core/workers/chunks/f44f358db5c56d5bbc0c.js +1 -0
- package/assets/esri/core/workers/chunks/fa95c9248fbfab338f2e.js +1 -0
- package/chunks/ComponentShader.glsl.js +29 -29
- package/chunks/Haze.glsl.js +15 -21
- package/config.d.ts +1 -1
- package/config.js +1 -1
- package/core/Collection.d.ts +1 -1
- package/core/Error.d.ts +1 -1
- package/core/Evented.d.ts +1 -1
- package/core/accessorSupport/decorators.d.ts +1 -1
- package/core/colorUtils.js +1 -1
- package/editing/sharedTemplates/SharedTemplate.d.ts +1 -1
- package/editing/sharedTemplates/SharedTemplateMetadata.d.ts +1 -1
- package/geometry/Mesh.d.ts +1 -2
- package/geometry/coordinateFormatter.d.ts +1 -1
- package/geometry/projectionUtils.js +1 -1
- package/geometry/support/MeshMaterial.d.ts +1 -1
- package/geometry/support/MeshMaterialMetallicRoughness.d.ts +1 -1
- package/geometry/support/MeshTexture.d.ts +1 -1
- package/geometry/support/meshUtils/{interfaces.d.ts → types.d.ts} +10 -1
- package/geometry/support/meshUtils.d.ts +1 -1
- package/geometry/support/normalizeUtils.d.ts +1 -1
- package/geometry/support/typeUtils.d.ts +3 -1
- package/geometry/support/typeUtils.js +1 -1
- package/geometry/types.d.ts +5 -0
- package/interfaces.d.ts +758 -786
- package/intl/date.d.ts +1 -1
- package/kernel.js +1 -1
- package/layers/CSVLayer.d.ts +3 -3
- package/layers/CatalogLayer.d.ts +1 -1
- package/layers/FeatureLayer.d.ts +1 -1
- package/layers/GaussianSplatLayer.d.ts +22 -0
- package/layers/GeoJSONLayer.d.ts +3 -3
- package/layers/ImageryTileLayer.d.ts +9 -9
- package/layers/MapImageLayer.d.ts +2 -2
- package/layers/OrientedImageryLayer.d.ts +2 -2
- package/layers/ParquetLayer.d.ts +1 -1
- package/layers/RouteLayer.d.ts +3 -3
- package/layers/SceneLayer.d.ts +3 -3
- package/layers/SubtypeGroupLayer.d.ts +1 -1
- package/layers/VectorTileLayer.d.ts +3 -3
- package/layers/VideoLayer.d.ts +2 -2
- package/layers/WCSLayer.d.ts +1 -1
- package/layers/WFSLayer.d.ts +3 -3
- package/layers/catalog/CatalogFootprintLayer.d.ts +3 -3
- package/layers/graphics/sources/OGCFeatureSource.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/graphics/sources/support/clientSideDefaults.js +1 -1
- package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +2 -2
- package/layers/knowledgeGraph/layerUtils.js +1 -1
- package/layers/mixins/ArcGISImageService.d.ts +7 -7
- package/layers/mixins/BlendLayer.d.ts +2 -2
- package/layers/mixins/EditBusLayer.d.ts +6 -0
- package/layers/mixins/FeatureLayerBase.d.ts +2 -2
- package/layers/mixins/ImageryTileMixin.d.ts +4 -4
- package/layers/mixins/properties/ILayerWithGetFeatureTitle.d.ts +1 -1
- package/layers/ogc/wcsUtils.d.ts +1 -1
- package/layers/orientedImagery/transformations/imageToWorld.d.ts +2 -2
- package/layers/orientedImagery/transformations/{interfaces.d.ts → types.d.ts} +1 -1
- package/layers/orientedImagery/transformations/worldToImage.d.ts +2 -2
- package/layers/raster/datasets/wcsCapabilitiesParser.d.ts +1 -1
- package/layers/raster/datasets/wcsCoverageParser.d.ts +1 -1
- package/layers/raster/functions/creators/createAppearenceFunctions.d.ts +2 -2
- package/layers/raster/functions/creators/createBandIndexFunctions.d.ts +1 -1
- package/layers/raster/functions/creators/createChangeFunctions.d.ts +1 -1
- package/layers/raster/functions/creators/createConversionFunctions.d.ts +1 -1
- package/layers/raster/functions/creators/createDataManagementFunctions.d.ts +2 -2
- package/layers/raster/functions/creators/createLocalFunctions.d.ts +1 -1
- package/layers/raster/functions/creators/createMultiRasterAnalysisFunctions.d.ts +1 -1
- package/layers/raster/functions/creators/createStatisticsFunctions.d.ts +1 -1
- package/layers/raster/functions/creators/createSurfaceFunctions.d.ts +1 -1
- package/layers/support/ControlPoint.d.ts +3 -3
- package/layers/support/ControlPointsGeoreference.d.ts +6 -6
- package/layers/support/EditingCapabilities.d.ts +2 -2
- package/layers/support/FeatureEffect.d.ts +3 -3
- package/layers/support/LabelClass.d.ts +1 -1
- package/layers/support/RasterInfo.d.ts +1 -1
- package/layers/support/SpriteSource.d.ts +1 -1
- package/layers/support/StreamConnection.d.ts +1 -1
- package/layers/support/Sublayer.d.ts +1 -1
- package/layers/support/SubtypeSublayer.d.ts +2 -2
- package/layers/support/TimeInfo.d.ts +1 -1
- package/layers/support/capabilities.js +1 -1
- package/layers/support/layerUtils.js +1 -1
- package/layers/support/rasterFunctionUtils.d.ts +1 -1
- package/layers/support/serviceCapabilitiesUtils.js +1 -1
- package/layers/support/{interfaces.d.ts → types.d.ts} +6 -6
- package/layers/{interfaces.d.ts → types.d.ts} +18 -1
- package/linkChart/ChronologicalLayoutSettings.d.ts +1 -1
- package/linkChart/OrganicLayoutSettings.d.ts +1 -1
- package/networks/Network.d.ts +4 -4
- package/networks/UtilityNetwork.d.ts +8 -8
- package/networks/support/TopologyValidationJobInfo.d.ts +1 -1
- package/networks/support/TraceJobInfo.d.ts +1 -1
- package/package.json +1 -1
- package/popup/content/CustomContent.d.ts +1 -1
- package/portal/PortalItem.d.ts +1 -1
- package/portal/PortalItemResource.d.ts +1 -1
- package/portal/PortalUser.d.ts +2 -2
- package/renderers/FlowRenderer.d.ts +1 -1
- package/renderers/RasterStretchRenderer.d.ts +2 -2
- package/renderers/Renderer.d.ts +1 -1
- package/renderers/VectorFieldRenderer.d.ts +1 -1
- package/renderers/mixins/VisualVariablesMixin.d.ts +3 -3
- package/renderers/support/AuthoringInfo.d.ts +1 -1
- package/renderers/support/rasterRendererHelper.d.ts +1 -1
- package/renderers/support/renderingInfoUtils.js +1 -1
- package/renderers/{interfaces.d.ts → types.d.ts} +3 -1
- package/renderers/visualVariables/SizeVariable.d.ts +1 -1
- package/renderers/visualVariables/VisualVariable.d.ts +1 -1
- package/request/{interfaces.d.ts → types.d.ts} +10 -10
- package/request.d.ts +4 -4
- package/rest/closestFacility.d.ts +1 -1
- package/rest/featureService/FeatureService.d.ts +1 -1
- package/rest/featureService/FeatureService.js +1 -1
- package/rest/featureService/{interfaces.d.ts → types.d.ts} +16 -3
- package/rest/featureService/utils.d.ts +1 -1
- package/rest/find.d.ts +1 -1
- package/rest/geometryService.d.ts +1 -1
- package/rest/geoprocessor.d.ts +1 -1
- package/rest/identify.d.ts +1 -1
- package/rest/imageService.d.ts +5 -5
- package/rest/knowledgeGraphService.d.ts +19 -19
- package/rest/lastMileDelivery.d.ts +1 -1
- package/rest/locator.d.ts +1 -1
- package/rest/networkService.d.ts +1 -1
- package/rest/networks/queryAssociations.d.ts +1 -1
- package/rest/networks/synthesizeAssociationGeometries.d.ts +1 -1
- package/rest/networks/trace.d.ts +1 -1
- package/rest/places.d.ts +1 -1
- package/rest/print.d.ts +2 -2
- package/rest/query.d.ts +2 -2
- package/rest/route.d.ts +1 -1
- package/rest/serviceArea.d.ts +1 -1
- package/rest/support/AddressToLocationsParameters.d.ts +1 -1
- package/rest/support/AddressesToLocationsParameters.d.ts +1 -1
- package/rest/support/AttributeBinsQuery.d.ts +3 -3
- package/rest/support/JobInfo.d.ts +2 -2
- package/rest/support/LastMileDeliveryParameters.d.ts +1 -1
- package/rest/support/LocationToAddressParameters.d.ts +1 -1
- package/rest/support/ParameterValue.d.ts +1 -1
- package/rest/support/ProjectParameters.d.ts +1 -1
- package/rest/symbolService.d.ts +3 -3
- package/smartMapping/heuristics/binLevel.d.ts +1 -1
- package/smartMapping/heuristics/scaleRange.d.ts +1 -1
- package/smartMapping/heuristics/sizeRange.d.ts +1 -1
- package/smartMapping/heuristics/{interfaces.d.ts → types.d.ts} +1 -1
- package/smartMapping/popup/clusters.d.ts +1 -1
- package/smartMapping/popup/templates.d.ts +1 -1
- package/smartMapping/raster/renderers/classBreaks.d.ts +2 -2
- package/smartMapping/raster/renderers/colormap.d.ts +1 -1
- package/smartMapping/raster/renderers/flow.d.ts +4 -4
- package/smartMapping/raster/renderers/rgb.d.ts +2 -2
- package/smartMapping/raster/renderers/shadedRelief.d.ts +1 -1
- package/smartMapping/raster/renderers/stretch.d.ts +2 -2
- package/smartMapping/raster/renderers/{interfaces.d.ts → types.d.ts} +1 -1
- package/smartMapping/raster/renderers/uniqueValue.d.ts +1 -1
- package/smartMapping/raster/renderers/vectorField.d.ts +1 -1
- package/smartMapping/raster/support/utils.d.ts +1 -1
- package/smartMapping/renderers/color.d.ts +4 -4
- package/smartMapping/renderers/dotDensity.d.ts +3 -3
- package/smartMapping/renderers/heatmap.d.ts +3 -3
- package/smartMapping/renderers/location.d.ts +2 -2
- package/smartMapping/renderers/opacity.d.ts +3 -3
- package/smartMapping/renderers/pieChart.d.ts +3 -3
- package/smartMapping/renderers/predominance.d.ts +2 -2
- package/smartMapping/renderers/relationship.d.ts +4 -4
- package/smartMapping/renderers/size.d.ts +4 -4
- package/smartMapping/renderers/support/rendererUtils.d.ts +1 -1
- package/smartMapping/renderers/type.d.ts +3 -3
- package/smartMapping/renderers/univariateColorSize.d.ts +4 -4
- package/smartMapping/statistics/classBreaks.d.ts +2 -2
- package/smartMapping/statistics/heatmapStatistics.d.ts +2 -2
- package/smartMapping/statistics/histogram.d.ts +1 -2
- package/smartMapping/statistics/predominantCategories.d.ts +2 -2
- package/smartMapping/statistics/summaryStatistics.d.ts +2 -2
- package/smartMapping/statistics/summaryStatisticsForAge.d.ts +1 -1
- package/smartMapping/statistics/support/ageUtils.d.ts +1 -1
- package/smartMapping/statistics/types.d.ts +571 -0
- package/smartMapping/statistics/uniqueValues.d.ts +2 -2
- package/smartMapping/symbology/color.d.ts +1 -1
- package/smartMapping/symbology/dotDensity.d.ts +1 -1
- package/smartMapping/symbology/flow.d.ts +1 -1
- package/smartMapping/symbology/heatmap.d.ts +1 -1
- package/smartMapping/symbology/location.d.ts +1 -1
- package/smartMapping/symbology/pieChart.d.ts +1 -1
- package/smartMapping/symbology/predominance.d.ts +1 -1
- package/smartMapping/symbology/relationship.d.ts +1 -1
- package/smartMapping/symbology/size.d.ts +1 -1
- package/smartMapping/symbology/support/colorRamps.d.ts +1 -1
- package/smartMapping/symbology/type.d.ts +1 -1
- package/smartMapping/types.d.ts +18 -0
- package/support/revision.js +1 -1
- package/support/tests/setupServiceMocksMesh.js +1 -1
- package/support/timeUtils.d.ts +1 -1
- package/symbols/LineStyleMarker3D.d.ts +1 -1
- package/symbols/LineSymbol3DLayer.d.ts +1 -1
- package/symbols/LineSymbolMarker.d.ts +1 -1
- package/symbols/PathSymbol3DLayer.d.ts +1 -1
- package/symbols/SimpleLineSymbol.d.ts +1 -1
- package/symbols/patterns/LineStylePattern3D.d.ts +1 -1
- package/symbols/patterns/StylePattern3D.d.ts +1 -1
- package/symbols/support/ElevationInfo.d.ts +1 -1
- package/symbols/support/Symbol3DOutline.d.ts +1 -1
- package/symbols/support/symbolUtils.d.ts +2 -2
- package/time/TimeExtent.d.ts +1 -1
- package/unionTypes.d.ts +3 -3
- package/versionManagement/VersionManagementService.d.ts +1 -1
- package/versionManagement/VersionManager.d.ts +3 -3
- package/versionManagement/VersioningState.d.ts +1 -1
- package/versionManagement/utils.d.ts +1 -1
- package/versionManagement/versionAdapters/utils.d.ts +7 -7
- package/views/2d/analysis/ElevationProfile/ElevationProfileLineVisualization2D.js +1 -1
- package/views/2d/analysis/ElevationProfile/ElevationProfileVisualization2D.js +1 -1
- package/views/2d/analysis/ElevationProfileAnalysisView2D.d.ts +1 -2
- package/views/2d/engine/vectorTiles/style/StyleProperty.js +1 -1
- package/views/2d/layers/BaseLayerView2D.d.ts +2 -2
- package/views/2d/layers/BaseLayerViewGL2D.d.ts +9 -9
- package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
- package/views/2d/{layers/support/interfaces.d.ts → types.d.ts} +68 -1
- package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
- package/views/3d/analysis/Dimension/DimensionVisualization.js +1 -1
- package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
- package/views/3d/analysis/Dimension/lengthDimensionManipulatorUtils.js +1 -1
- package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
- package/views/3d/analysis/ElevationProfile/ElevationProfileLineVisualization3D.js +1 -1
- package/views/3d/analysis/ElevationProfile/ElevationProfileVisualization3D.js +1 -1
- package/views/3d/analysis/ElevationProfileAnalysisView3D.d.ts +1 -2
- package/views/3d/analysis/LineOfSight/LineOfSightManipulators.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightVisualization.js +1 -1
- package/views/3d/analysis/ShadowCastAnalysisView3D.d.ts +2 -2
- package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
- package/views/3d/analysis/Slice/ResizeManipulator.js +1 -1
- package/views/3d/analysis/Slice/RotateManipulator.js +1 -1
- package/views/3d/analysis/Slice/ShiftManipulator.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedArrowManipulator.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedConfiguration.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedFieldOfViewManipulation.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedSubVisualization.js +1 -1
- package/views/3d/analysis/Viewshed/viewshedToolManipulatorUtils.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.js +1 -1
- package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
- package/views/3d/environment/ChapmanRaymarching.glsl.js +6 -7
- package/views/3d/environment/PrecipitationTechnique.js +1 -1
- package/views/3d/environment/SimpleAtmosphereTechnique.js +1 -1
- package/views/3d/interactive/SnappingVisualizer3D.js +1 -1
- package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
- package/views/3d/interactive/editingTools/manipulations/MoveXYAxisManipulation.js +1 -1
- package/views/3d/interactive/editingTools/manipulations/MoveXYDiscManipulation.js +1 -1
- package/views/3d/interactive/editingTools/manipulations/MoveZManipulation.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/settings.js +1 -1
- package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DView.js +1 -1
- package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/SceneLayerWorker.js +1 -1
- package/views/3d/layers/{I3SMeshWorkerHandle.js → SceneLayerWorkerHandle.js} +1 -1
- package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/pipeline/symbolization/IconSymbolLayerRenderer.js +1 -1
- package/views/3d/layers/i3s/I3SClientMaterialUtil.js +1 -1
- package/views/3d/layers/support/edgeUtils.js +1 -1
- package/views/3d/support/flow/geometryUtils.js +1 -1
- package/views/3d/support/viewpointUtils.js +1 -1
- package/views/3d/terrain/BlendLayersTechnique.js +1 -1
- package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
- package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js +1 -2
- package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +18 -27
- package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
- package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaOutlineItem.js +1 -1
- package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightApplyTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/HighlightToSingleTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
- package/views/3d/webgl-engine/effects/laserlines/LaserlinePathData.js +1 -1
- package/views/3d/webgl-engine/effects/laserlines/LaserlinePathTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/stars/StarsTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/CutFillColor.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextRenderParameters.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/CutFillMaskTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/CutFillTargetDepthTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
- package/views/LinkChartView.d.ts +5 -5
- package/views/Magnifier.d.ts +1 -1
- package/views/MapView.d.ts +11 -12
- package/views/PopupView.d.ts +1 -1
- package/views/SceneView.d.ts +6 -7
- package/views/SceneViewHitTestResult.d.ts +1 -1
- package/views/View2D.d.ts +8 -8
- package/views/analysis/ElevationProfile/ElevationProfileHoveredPointVisualization.js +1 -1
- package/views/analysis/ElevationProfile/ElevationProfileResult.d.ts +1 -1
- package/views/analysis/ElevationProfile/types.d.ts +68 -0
- package/views/analysis/types.d.ts +2 -2
- package/views/draw/Draw.d.ts +1 -1
- package/views/draw/DrawAction.d.ts +1 -1
- package/views/input/IViewEvents.d.ts +1 -1
- package/views/interactive/Tooltip.d.ts +1 -1
- package/views/interactive/sketch/SketchValueOptions.d.ts +1 -1
- package/views/interactive/tooltip/types.d.ts +4 -0
- package/views/layers/BuildingComponentSublayerView.d.ts +1 -1
- package/views/layers/BuildingSceneLayerView.d.ts +1 -1
- package/views/layers/ImageryLayerViewMixin.d.ts +1 -1
- package/views/layers/PointCloudLayerView.d.ts +1 -1
- package/views/navigation/NavigationActionMap.d.ts +1 -1
- package/views/support/colorUtils.d.ts +1 -1
- package/views/{interfaces.d.ts → types.d.ts} +91 -5
- package/views/ui/DefaultUI.d.ts +1 -1
- package/views/ui/UI.d.ts +1 -1
- package/webdoc/widgets/FloorFilter.d.ts +2 -2
- package/webdoc/widgets/TimeSlider.d.ts +5 -5
- package/webmap/InitialViewProperties.d.ts +2 -2
- package/webscene/Environment.d.ts +3 -3
- package/webscene/InitialViewProperties.d.ts +0 -1
- package/webscene/Slide.d.ts +36 -4
- package/webscene/Slide.js +1 -1
- package/webscene/support/SlidePopupInfo.d.ts +2 -2
- package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.d.ts +1 -1
- package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.d.ts +7 -1
- package/widgets/AreaMeasurement3D.d.ts +1 -0
- package/widgets/Attachments/AttachmentsViewModel.d.ts +1 -1
- package/widgets/Attachments.d.ts +1 -1
- package/widgets/Attribution/AttributionViewModel.d.ts +2 -2
- package/widgets/BasemapGallery/support/LocalBasemapsSource.d.ts +1 -1
- package/widgets/BasemapGallery/support/PortalBasemapsSource.d.ts +1 -1
- package/widgets/BasemapLayerList/BasemapLayerListViewModel.d.ts +2 -2
- package/widgets/BasemapLayerList.d.ts +1 -1
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.d.ts +4 -4
- package/widgets/BatchAttributeForm/inputs/BatchFormInputs.d.ts +1 -1
- package/widgets/BatchAttributeForm/inputs/EditableInput.d.ts +1 -1
- package/widgets/BatchAttributeForm/inputs/GroupInput.d.ts +1 -1
- package/widgets/BatchAttributeForm/inputs/InputBase.d.ts +1 -1
- package/widgets/BatchAttributeForm/inputs/SingleFeatureInput.d.ts +1 -1
- package/widgets/BatchAttributeForm.d.ts +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.d.ts +5 -5
- package/widgets/Bookmarks/{interfaces.d.ts → types.d.ts} +1 -1
- package/widgets/Bookmarks.d.ts +5 -5
- package/widgets/BuildingExplorer/BuildingExplorerViewModel.d.ts +1 -0
- package/widgets/BuildingExplorer/BuildingLevel.d.ts +1 -0
- package/widgets/BuildingExplorer/BuildingNumericFilterViewModel.d.ts +1 -0
- package/widgets/BuildingExplorer/BuildingPhase.d.ts +1 -0
- package/widgets/BuildingExplorer.d.ts +3 -0
- package/widgets/CatalogLayerList/CatalogLayerListViewModel.d.ts +2 -2
- package/widgets/CatalogLayerList.d.ts +1 -1
- package/widgets/Compass/CompassViewModel.d.ts +1 -1
- package/widgets/CoordinateConversion/CoordinateConversionViewModel.d.ts +4 -4
- package/widgets/CoordinateConversion/support/Conversion.d.ts +1 -1
- package/widgets/CoordinateConversion/support/Format.d.ts +2 -2
- package/widgets/CoordinateConversion.d.ts +1 -1
- package/widgets/Daylight/DaylightViewModel.d.ts +3 -1
- package/widgets/Daylight/VisibleElements.d.ts +3 -0
- package/widgets/Daylight/types.d.ts +6 -0
- package/widgets/Daylight.d.ts +4 -2
- package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.d.ts +7 -1
- package/widgets/DirectLineMeasurement3D.d.ts +1 -0
- package/widgets/Directions/DirectionsViewModel.d.ts +3 -3
- package/widgets/Directions.d.ts +3 -3
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.d.ts +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.d.ts +1 -1
- package/widgets/Editor/CreateFeaturesWorkflowData.d.ts +2 -2
- package/widgets/Editor/EditorViewModel.d.ts +5 -5
- package/widgets/Editor/MergeFeaturesWorkflow.d.ts +1 -1
- package/widgets/Editor/SplitFeatureWorkflow.d.ts +1 -1
- package/widgets/Editor/SplitFeatureWorkflowData.d.ts +1 -1
- package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
- package/widgets/Editor/UpdateFeaturesWorkflow.d.ts +1 -1
- package/widgets/Editor/UpdateFeaturesWorkflowData.d.ts +1 -1
- package/widgets/Editor/UpdateWorkflow.d.ts +1 -1
- package/widgets/Editor/Workflow.d.ts +1 -1
- package/widgets/Editor/support/EditorEditingCapabilities.d.ts +9 -9
- package/widgets/Editor/support/EditorItem.d.ts +4 -4
- package/widgets/Editor/support/SketchController.js +1 -1
- package/widgets/Editor/{interfaces.d.ts → types.d.ts} +1 -1
- package/widgets/Editor.d.ts +9 -9
- package/widgets/ElevationProfile/ElevationProfileLine.d.ts +2 -1
- package/widgets/ElevationProfile/ElevationProfileLineGround.d.ts +1 -0
- package/widgets/ElevationProfile/ElevationProfileLineInput.d.ts +1 -0
- package/widgets/ElevationProfile/ElevationProfileLineQuery.d.ts +2 -1
- package/widgets/ElevationProfile/ElevationProfileLineView.d.ts +2 -0
- package/widgets/ElevationProfile/ElevationProfileViewModel.d.ts +3 -5
- package/widgets/ElevationProfile/ElevationProfileVisibleElements.d.ts +3 -0
- package/widgets/ElevationProfile/support/ProfileLines3D.js +1 -1
- package/widgets/ElevationProfile/types.d.ts +149 -0
- package/widgets/ElevationProfile.d.ts +6 -5
- package/widgets/Expand/ExpandViewModel.d.ts +1 -1
- package/widgets/Expand.d.ts +2 -2
- package/widgets/Feature/FeatureViewModel.d.ts +5 -5
- package/widgets/Feature.d.ts +2 -2
- package/widgets/FeatureForm/EditableInput.d.ts +1 -1
- package/widgets/FeatureForm/FeatureFormViewModel.d.ts +3 -3
- package/widgets/FeatureForm/GroupInput.d.ts +1 -1
- package/widgets/FeatureForm.d.ts +2 -2
- package/widgets/FeatureTable/AttachmentsColumn.d.ts +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.d.ts +3 -4
- package/widgets/FeatureTable/Grid/Column.d.ts +2 -3
- package/widgets/FeatureTable/Grid/{support/interfaces.d.ts → types.d.ts} +57 -0
- package/widgets/FeatureTable/RelationshipColumn.d.ts +1 -1
- package/widgets/FeatureTable/support/ColumnTemplateBase.d.ts +2 -3
- package/widgets/FeatureTable/support/interfaces.d.ts +2 -3
- package/widgets/FeatureTable.d.ts +3 -4
- package/widgets/FeatureTemplates/FeatureTemplatesViewModel.d.ts +4 -4
- package/widgets/FeatureTemplates/TemplateItem.d.ts +1 -1
- package/widgets/FeatureTemplates/{interfaces.d.ts → types.d.ts} +1 -1
- package/widgets/FeatureTemplates.d.ts +3 -3
- package/widgets/Features/FeaturesViewModel.d.ts +11 -11
- package/widgets/Features.d.ts +10 -10
- package/widgets/Histogram/HistogramViewModel.d.ts +3 -3
- package/widgets/Histogram.d.ts +3 -3
- package/widgets/HistogramRangeSlider/HistogramRangeSliderViewModel.d.ts +3 -3
- package/widgets/HistogramRangeSlider.d.ts +11 -11
- package/widgets/LayerList/LayerListViewModel.d.ts +1 -1
- package/widgets/LayerList/ListItem.d.ts +1 -1
- package/widgets/LayerList.d.ts +1 -1
- package/widgets/Legend/LegendViewModel.d.ts +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.d.ts +1 -1
- package/widgets/Legend.d.ts +1 -1
- package/widgets/LineOfSight/LineOfSightTarget.d.ts +1 -0
- package/widgets/LineOfSight/LineOfSightViewModel.d.ts +1 -0
- package/widgets/LineOfSight.d.ts +1 -0
- package/widgets/Locate/LocateViewModel.d.ts +1 -1
- package/widgets/Locate.d.ts +1 -1
- package/widgets/Measurement/MeasurementViewModel.d.ts +2 -2
- package/widgets/Measurement.d.ts +1 -1
- package/widgets/Popup.d.ts +7 -7
- package/widgets/Print/CustomTemplate.d.ts +1 -1
- package/widgets/Print/PrintViewModel.d.ts +2 -2
- package/widgets/Print.d.ts +1 -1
- package/widgets/ScaleRangeSlider.d.ts +2 -2
- package/widgets/Search/LocatorSearchSource.d.ts +2 -2
- package/widgets/Search/SearchSource.d.ts +3 -3
- package/widgets/Search/types.d.ts +64 -0
- package/widgets/Search.d.ts +1 -1
- package/widgets/ShadowCast/ShadowCastViewModel.d.ts +1 -1
- package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
- package/widgets/Sketch/SketchViewModel.d.ts +5 -5
- package/widgets/Sketch/{support/interfaces.d.ts → types.d.ts} +17 -17
- package/widgets/Sketch.d.ts +1 -1
- package/widgets/Slice/SliceViewModel.d.ts +1 -0
- package/widgets/Slice.d.ts +1 -0
- package/widgets/Slider/SliderViewModel.d.ts +3 -3
- package/widgets/Slider/{interfaces.d.ts → types.d.ts} +2 -2
- package/widgets/Slider.d.ts +4 -4
- package/widgets/Swipe/SwipeViewModel.d.ts +1 -1
- package/widgets/Swipe.d.ts +1 -1
- package/widgets/TableList/ListItem.d.ts +1 -1
- package/widgets/TableList/TableListViewModel.d.ts +2 -2
- package/widgets/TableList.d.ts +1 -1
- package/widgets/TimeSlider/TimeSliderViewModel.d.ts +5 -5
- package/widgets/TimeSlider.d.ts +14 -15
- package/widgets/TimeZoneLabel.d.ts +1 -2
- package/widgets/Track/TrackViewModel.d.ts +1 -1
- package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.d.ts +2 -2
- package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
- package/widgets/ValuePicker/ValuePickerSlider.d.ts +1 -1
- package/widgets/ValuePicker.d.ts +2 -2
- package/widgets/VersionManagement/VersionManagementViewModel.d.ts +3 -3
- package/widgets/Weather/VisibleElements.d.ts +3 -0
- package/widgets/Weather/WeatherViewModel.d.ts +2 -1
- package/widgets/Weather/types.d.ts +9 -0
- package/widgets/Weather.d.ts +1 -0
- package/widgets/Widget.d.ts +2 -1
- package/widgets/smartMapping/BinaryColorSizeSlider.d.ts +0 -3
- package/widgets/smartMapping/ClassedColorSlider/ClassedColorSliderViewModel.d.ts +1 -3
- package/widgets/smartMapping/ClassedColorSlider.d.ts +2 -2
- package/widgets/smartMapping/ClassedSizeSlider/ClassedSizeSliderViewModel.d.ts +1 -2
- package/widgets/smartMapping/ClassedSizeSlider.d.ts +2 -2
- package/widgets/smartMapping/ColorSizeSlider/ColorSizeSliderViewModel.d.ts +5 -5
- package/widgets/smartMapping/ColorSizeSlider.d.ts +3 -2
- package/widgets/smartMapping/ColorSlider/ColorSliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/ColorSlider.d.ts +1 -1
- package/widgets/smartMapping/HeatmapSlider/HeatmapSliderViewModel.d.ts +2 -4
- package/widgets/smartMapping/HeatmapSlider.d.ts +2 -4
- package/widgets/smartMapping/OpacitySlider/OpacitySliderViewModel.d.ts +1 -1
- package/widgets/smartMapping/OpacitySlider.d.ts +1 -1
- package/widgets/smartMapping/SizeSlider.d.ts +2 -2
- package/widgets/smartMapping/SmartMappingPrimaryHandleSliderViewModel.d.ts +2 -2
- package/widgets/smartMapping/SmartMappingSliderBase.d.ts +11 -14
- package/widgets/smartMapping/SmartMappingSliderViewModel.d.ts +5 -6
- package/widgets/smartMapping/{support/interfaces.d.ts → types.d.ts} +52 -5
- package/widgets/support/GeolocationPositioning.d.ts +1 -1
- package/widgets/support/GridControls/GridControlsViewModel.d.ts +1 -1
- package/widgets/support/goToUtils.d.ts +1 -1
- package/widgets/{interfaces.d.ts → types.d.ts} +71 -15
- package/arcade/featureset/support/shared.d.ts +0 -16
- package/assets/esri/core/workers/chunks/0359ac6d938e0df936d0.js +0 -1
- package/assets/esri/core/workers/chunks/1db058f91a8e17b24db6.js +0 -1
- package/assets/esri/core/workers/chunks/1e286fb7bb833f00dd88.js +0 -1
- package/assets/esri/core/workers/chunks/262232437d37a7460b11.js +0 -1
- package/assets/esri/core/workers/chunks/2d6fa00273a73d44297d.js +0 -1
- package/assets/esri/core/workers/chunks/2fae37f34b28a46841e3.js +0 -1
- package/assets/esri/core/workers/chunks/3b1471f908fdecec2815.js +0 -1
- package/assets/esri/core/workers/chunks/48b3906ac3ec57253d90.js +0 -1
- package/assets/esri/core/workers/chunks/49b581782f63abb6dd9f.js +0 -1
- package/assets/esri/core/workers/chunks/4abe2c56aecc9e9b8e86.js +0 -1
- package/assets/esri/core/workers/chunks/51b78eca012eac92dd07.js +0 -1
- package/assets/esri/core/workers/chunks/5ce524e0060053f35592.js +0 -316
- package/assets/esri/core/workers/chunks/5d244fcf5c075afccdc6.js +0 -1
- package/assets/esri/core/workers/chunks/6b8c15f3970289e73a47.js +0 -1
- package/assets/esri/core/workers/chunks/6cfcfebe9a4c491e453a.js +0 -1
- package/assets/esri/core/workers/chunks/710b29729f252f11115d.js +0 -1
- package/assets/esri/core/workers/chunks/72a520802b8accfd4512.js +0 -1
- package/assets/esri/core/workers/chunks/73892ac79b24b05e6863.js +0 -33
- package/assets/esri/core/workers/chunks/75d8244b725a2aee2003.js +0 -1
- package/assets/esri/core/workers/chunks/93b139be6488a1b4ba19.js +0 -1
- package/assets/esri/core/workers/chunks/a5e7c9517939f762c518.js +0 -1
- package/assets/esri/core/workers/chunks/a63ff3e9a9f3853d12f3.js +0 -1
- package/assets/esri/core/workers/chunks/a81a7cba815adb575c36.js +0 -1
- package/assets/esri/core/workers/chunks/a8fd635d1165db8616ab.js +0 -1
- package/assets/esri/core/workers/chunks/b638ce18b93d3cfb9967.js +0 -1
- package/assets/esri/core/workers/chunks/ba7e97b1e324118b8156.js +0 -1
- package/assets/esri/core/workers/chunks/c0d6336c10b4081c4e32.js +0 -1
- package/assets/esri/core/workers/chunks/cc4ae105e727d9211d82.js +0 -1
- package/assets/esri/core/workers/chunks/d7a62504e00989202c45.js +0 -1
- package/assets/esri/core/workers/chunks/e25be3b6b67ce6b03011.js +0 -1
- package/assets/esri/core/workers/chunks/e5ac9b048b16fef9840c.js +0 -1
- package/assets/esri/core/workers/chunks/efa95c50d1ed8e74219f.js +0 -1
- package/assets/esri/core/workers/chunks/f379fd459a103f42d447.js +0 -1
- package/assets/esri/core/workers/chunks/ffcdc7ae03b0570e0db8.js +0 -1
- package/geometry/interfaces.d.ts +0 -2
- package/geometry/support/interfaces.d.ts +0 -3
- package/geometry/support/meshUtils/exporters/gltf/interfaces.d.ts +0 -11
- package/renderers/support/interfaces.d.ts +0 -2
- package/smartMapping/statistics/interfaces.d.ts +0 -571
- package/smartMapping/support/adapters/interfaces.d.ts +0 -18
- package/views/2d/interfaces.d.ts +0 -67
- package/views/analysis/ElevationProfile/ElevationProfileHoveredPointsVisualization.js +0 -5
- package/views/analysis/ElevationProfile/interfaces.d.ts +0 -73
- package/views/interactive/sketch/interfaces.d.ts +0 -2
- package/views/interactive/tooltip/interfaces.d.ts +0 -2
- package/views/support/interfaces.d.ts +0 -87
- package/widgets/Daylight/support/daylightUtils.d.ts +0 -4
- package/widgets/ElevationProfile/ElevationProfileInteraction.d.ts +0 -13
- package/widgets/ElevationProfile/elevationProfileLineTypes.d.ts +0 -6
- package/widgets/ElevationProfile/interfaces.d.ts +0 -103
- package/widgets/ElevationProfile/support/constants.d.ts +0 -14
- package/widgets/FeatureTable/Grid/interfaces.d.ts +0 -57
- package/widgets/Search/support/interfaces.d.ts +0 -67
- package/widgets/Weather/enums.d.ts +0 -9
- package/widgets/smartMapping/ClassedColorSlider/interfaces.d.ts +0 -19
- package/widgets/smartMapping/ClassedSizeSlider/interfaces.d.ts +0 -18
- package/widgets/smartMapping/interfaces.d.ts +0 -13
- package/widgets/support/interfaces.d.ts +0 -56
- /package/analysis/{interfaces.d.ts → types.d.ts} +0 -0
- /package/core/accessorSupport/{interfaces.d.ts → types.d.ts} +0 -0
- /package/core/{interfaces.d.ts → types.d.ts} +0 -0
- /package/editing/sharedTemplates/{interfaces.d.ts → types.d.ts} +0 -0
- /package/editing/{interfaces.d.ts → types.d.ts} +0 -0
- /package/layers/effects/{interfaces.d.ts → types.d.ts} +0 -0
- /package/layers/orientedImagery/{interfaces.d.ts → types.d.ts} +0 -0
- /package/layers/raster/datasets/{interfaces.d.ts → types.d.ts} +0 -0
- /package/layers/raster/functions/{interfaces.d.ts → types.d.ts} +0 -0
- /package/linkChart/{interfaces.d.ts → types.d.ts} +0 -0
- /package/popup/{interfaces.d.ts → types.d.ts} +0 -0
- /package/rest/lastMileDelivery/{interfaces.d.ts → types.d.ts} +0 -0
- /package/rest/{interfaces.d.ts → types.d.ts} +0 -0
- /package/smartMapping/popup/{interfaces.d.ts → types.d.ts} +0 -0
- /package/smartMapping/raster/support/adapters/{interfaces.d.ts → types.d.ts} +0 -0
- /package/smartMapping/symbology/{interfaces.d.ts → types.d.ts} +0 -0
- /package/statistics/{interfaces.d.ts → types.d.ts} +0 -0
- /package/symbols/support/{interfaces.d.ts → types.d.ts} +0 -0
- /package/symbols/{interfaces.d.ts → types.d.ts} +0 -0
- /package/time/{interfaces.d.ts → types.d.ts} +0 -0
- /package/versionManagement/versionAdapters/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/2d/analysis/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/3d/analysis/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/3d/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/draw/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/input/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/navigation/{interfaces.d.ts → types.d.ts} +0 -0
- /package/views/ui/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Attachments/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/BasemapGallery/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/BasemapLayerList/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/BatchAttributeForm/inputs/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/BatchAttributeForm/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/CatalogLayerList/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Feature/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/FeatureForm/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Histogram/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/HistogramRangeSlider/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/LayerList/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Measurement/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/OrientedImageryViewer/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Popup/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Print/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/ScaleRangeSlider/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Swipe/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/TableList/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/TimeSlider/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/Track/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/ValuePicker/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/support/GridControls/{interfaces.d.ts → types.d.ts} +0 -0
- /package/widgets/support/forms/{interfaces.d.ts → types.d.ts} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type ShadowCastAnalysis from "../../../analysis/ShadowCastAnalysis.js";
|
|
2
|
-
import type { ScreenPoint } from "../../../core/
|
|
2
|
+
import type { ScreenPoint } from "../../../core/types.js";
|
|
3
3
|
import type { AnalysisView3D } from "./AnalysisView3D.js";
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -9,7 +9,7 @@ import type { AnalysisView3D } from "./AnalysisView3D.js";
|
|
|
9
9
|
* The ShadowCastAnalysisView3D is responsible for rendering a [ShadowCastAnalysis](https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-ShadowCastAnalysis.html)
|
|
10
10
|
* using custom visualizations. The [methods](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-ShadowCastAnalysisView3D.html#getDurationAtScreen)
|
|
11
11
|
* on the analysis view provide developers with the ability to obtain the specific shadow duration at the certain
|
|
12
|
-
* [point](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-
|
|
12
|
+
* [point](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-types.html#ScreenPoint) on the screen.
|
|
13
13
|
*
|
|
14
14
|
* The view for an analysis can be retrieved using [SceneView#whenAnalysisView()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#whenAnalysisView)
|
|
15
15
|
* similar to how layer views are retrieved for layers using [SceneView#whenLayerView()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#whenLayerView).
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as t}from"tslib";import
|
|
5
|
+
import{__decorate as t}from"tslib";import{isSome as e}from"../../../core/arrayUtils.js";import{createTask as i}from"../../../core/asyncUtils.js";import"../../../core/has.js";import{abortMaybe as r,destroyMaybe as s}from"../../../core/maybe.js";import{after as n,throwIfAborted as o}from"../../../core/promiseUtils.js";import{watch as a,syncAndInitial as l}from"../../../core/reactiveUtils.js";import{createScreenPointArray as u,createRenderScreenPointArray as c}from"../../../core/screenUtils.js";import{offsetDateUTC as p,convertTime as h}from"../../../core/timeUtils.js";import{property as d,subclass as m}from"../../../core/accessorSupport/decorators.js";import{create as _}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{AnalysisView3D as v}from"./AnalysisView3D.js";import{registerAnalysisView as f,hideOtherAnalysisViews as g}from"./ShadowCast/analysisViewRegister.js";import{ShadowCastTooltip as y}from"./ShadowCast/ShadowCastTooltip.js";import{longitudeToTimezone as w}from"../support/earthUtils.js";import{computeDirectionsOverTime as D}from"../support/sunUtils.js";import{breadthFirstBinaryPartitioning as P}from"../../../widgets/support/traversalUtils.js";let C=class extends v{constructor(t){super(t),this.type="shadow-cast-view-3d",this.analysis=null,this._stopPreviewingTask=null,this._forcePreview=!1,this._autoRestoreForcePreviewEnabled=!0,this._tooltip=null}initialize(){this.addHandles([f(this.view,this),a(()=>this._forcePreviewDependencies,()=>{r(this._stopPreviewingTask),this._forcePreview=!0,this._autoRestoreForcePreviewEnabled&&(this._stopPreviewingTask=i(async t=>{await n(V,t),o(t),this._forcePreview=!1}))},l),a(()=>({renderer:this._renderer,visible:this.visible}),({renderer:t,visible:e})=>{e&&g(this.view,this),t?.setParameters({shadowCast:{enabled:e}})},l),a(()=>({renderer:this._renderer,parameters:this._visualizationParameters,visible:this.visible}),({renderer:t,parameters:e,visible:i})=>{T(t,i,e)},l),a(()=>({renderer:this._renderer,lightDirections:this._lightDirections,lightDirectionsContext:this._lightDirectionsContext,visible:this.visible}),({renderer:t,lightDirections:e,lightDirectionsContext:i,visible:r})=>{T(t,r,{lightDirections:e,lightDirectionsContext:i})},l),a(()=>({renderer:this._renderer,previewing:this._previewing,visible:this.visible}),({renderer:t,previewing:e,visible:i})=>{T(t,i,{previewing:e})},l)]),this.interactive=!0,this._tooltip=new y({getDuration:this.getDurationAtScreen.bind(this),isVisible:()=>this.interactive&&this.visible,view:this.view})}destroy(){this.visible&&T(this._renderer,!0,{enabled:!1}),this._tooltip=s(this._tooltip)}get interactive(){return super.interactive}set interactive(t){super.interactive=t}get updating(){return this._previewing||null!=this._stopPreviewingTask&&!this._stopPreviewingTask.finished||!0===this._tooltip?.updating}get visible(){return super.visible}set visible(t){super.visible=t}get _previewing(){const{view:t}=this;if(null==t?.allLayerViews)return!0;const{stationary:e,allLayerViews:i,graphicsView:r}=t;return this._forcePreview||!e||i.some(t=>U(t)&&t.updating)||!r?.suspended&&!!r?.updating}get _effectiveUtcOffset(){return this.analysis.utcOffset??this._utcOffsetAuto}get _utcOffsetAuto(){const t=this._referencePosition;return null!=t?w(t[0],!1):0}get _dateUTCOffset(){let t=this.analysis.date;return t=p(t,-t.getTimezoneOffset(),"minutes"),t=p(t,-this._effectiveUtcOffset,"hours"),t}get _startDateTimeUTC(){return p(this._dateUTCOffset,this.analysis.startTimeOfDay)}get _endDateTimeUTC(){return p(this._dateUTCOffset,this.analysis.endTimeOfDay)}get _referencePosition(){return this.view?.environmentManager?.referencePositionGeographic}get _totalDurationInterval(){return this._totalDuration>0?Math.floor(this._totalDuration/(x-1)):x}get _interval(){const t=this._totalDurationInterval;switch(this.analysis.mode){case"min-duration":return this._totalDuration>0?t:0;case"total-duration":return t;case"discrete":return this.analysis.discreteOptions.interval||t}}get _intervalContext(){const{mode:t,minDurationOptions:e}=this.analysis;return"min-duration"===t&&e.contextEnabled?e.contextOptions.interval||this._totalDurationInterval:-1}get _totalDurationSampleCount(){return this._lightDirections.length}get _totalDuration(){const{startTimeOfDay:t,endTimeOfDay:e}=this.analysis;return e-t}get _lightDirections(){return this._calculateLightDirections(this._interval)}get _lightDirectionsContext(){return this._calculateLightDirections(this._intervalContext)}_calculateLightDirections(t){const{view:e}=this;if(t<=0)return[];const i="global"===e.viewingMode?z:this._referencePosition;if(null==i)return[];const r=D(this._startDateTimeUTC,this._endDateTimeUTC,t,i,e.state.viewingMode,x),s=r.length;j.length=0;const n=P(0,s,j),o=new Array(s);for(let a=0;a<s;++a)o[a]=r[n[a]];return o}get _visualizationParameters(){if(!this.visible)return null;switch(this.analysis.mode){case"min-duration":return this._minDurationVisualizationParameters;case"total-duration":return this._durationVisualizationParameters;case"discrete":return this._discreteVisualizationParameters}}get _minDurationVisualizationParameters(){const{minDuration:t,color:e}=this.analysis.minDurationOptions,i=this._totalDuration;return{visualization:2,thresholdColor:e.toUnitRGBA(),threshold:i>0?t/this._totalDuration:0,...this._minDurationContextVisualizationParameters}}get _minDurationContextVisualizationParameters(){const{minDurationOptions:t}=this.analysis;return t.contextEnabled?{visualization:3,gradientColor:t.contextOptions.color.toUnitRGBA()}:{}}get _durationVisualizationParameters(){const{color:t,mode:e}=this.analysis.totalDurationOptions,i=this._totalDuration,r=i>0&&"hourly"===e?O/i:0,s=t.toUnitRGBA();return 0===r?{...this._discreteVisualizationParameters,gradientColor:s}:{bandedGradientColor:s,visualization:1,bandSize:r}}get _discreteVisualizationParameters(){return{gradientColor:this.analysis.discreteOptions.color.toUnitRGBA(),visualization:0}}get _forcePreviewDependencies(){const{view:t}=this,i=t.slice.plane,r=t.allLayerViews.toArray().filter(U),s=r.map(t=>t.layer).filter(e),n=r.map(t=>t.suspended),o=s.map(t=>t.visible),a=s.map(t=>t.opacity),l=!!t.graphicsView?.suspended,u=s.filter(t=>"definitionExpression"in t).map(t=>t.definitionExpression),c=r.filter(t=>"filter"in t).map(t=>t.filter);return{slicePlane:i,startDateUTC:this._startDateTimeUTC,endDateUTC:this._endDateTimeUTC,layerViewSuspended:n,graphicsViewSuspended:l,layerVisibilities:o,layerOpacities:a,filters:c,definitionExpressions:u}}get _renderer(){return this.view?.stage?.renderer}get testData(){}async getDurationAtScreen(t){const{_renderer:e,_totalDurationSampleCount:i}=this;if(null==e||0===i)return 0;const r=this.view.state.camera.screenToRender(u(t.x,t.y),c());return e.readAccumulatedShadow(r)*this._totalDuration}};t([d({readOnly:!0,type:["shadow-cast-view-3d"]})],C.prototype,"type",void 0),t([d({constructOnly:!0,nonNullable:!0})],C.prototype,"analysis",void 0),t([d({readOnly:!0})],C.prototype,"updating",null),t([d()],C.prototype,"_stopPreviewingTask",void 0),t([d()],C.prototype,"_forcePreview",void 0),t([d()],C.prototype,"_autoRestoreForcePreviewEnabled",void 0),t([d()],C.prototype,"_tooltip",void 0),t([d()],C.prototype,"_previewing",null),t([d()],C.prototype,"_effectiveUtcOffset",null),t([d()],C.prototype,"_utcOffsetAuto",null),t([d()],C.prototype,"_dateUTCOffset",null),t([d()],C.prototype,"_startDateTimeUTC",null),t([d()],C.prototype,"_endDateTimeUTC",null),t([d()],C.prototype,"_referencePosition",null),t([d()],C.prototype,"_interval",null),t([d()],C.prototype,"_intervalContext",null),t([d()],C.prototype,"_totalDurationSampleCount",null),t([d()],C.prototype,"_totalDuration",null),t([d()],C.prototype,"_lightDirections",null),t([d()],C.prototype,"_lightDirectionsContext",null),t([d()],C.prototype,"_visualizationParameters",null),t([d()],C.prototype,"_minDurationVisualizationParameters",null),t([d()],C.prototype,"_minDurationContextVisualizationParameters",null),t([d()],C.prototype,"_durationVisualizationParameters",null),t([d()],C.prototype,"_discreteVisualizationParameters",null),t([d()],C.prototype,"_forcePreviewDependencies",null),t([d()],C.prototype,"_renderer",null),C=t([m("esri.views.3d.analysis.ShadowCastAnalysisView3D")],C);const b=C;function T(t,e,i){e&&null!=i&&t?.setParameters({shadowCast:i})}function U(t){if(t.suspended)return!1;switch(t.type){case"building-scene-3d":case"csv-3d":case"elevation-3d":case"feature-3d":case"geojson-3d":case"graphics-3d":case"integrated-mesh-3d":case"integrated-mesh-3dtiles":case"ogc-feature-3d":case"route-3d":case"scene-layer-3d":case"scene-layer-graphics-3d":case"stream-3d":case"wms-3d":case"catalog-footprint-3d":return!0;default:return!1}}const O=h(1,"hours","milliseconds"),V=500,x=255,z=_(),j=[];export{b as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import{watch as e,initial as t}from"../../../../core/reactiveUtils.js";import{fromValues as r}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{resizeHandleCornerWidth as o,resizeHandleEdgeWidth as i,displayFocusMultiplier as s,resizeHandleCornerInputRadius as a,resizeHandleEdgeInputRadius as l}from"./sliceToolConfig.js";import{isDiagonalResizeHandle as n,resizeNormal as c,resizeOutlineOnly as m}from"./sliceToolUtils.js";import{Manipulator3D as f}from"../../interactive/Manipulator3D.js";import{worldScaledManipulatorSettings as d}from"../../interactive/manipulatorUtils.js";import{RenderObject as p}from"../../interactive/RenderObject.js";import{createPolylineGeometry as u}from"../../webgl-engine/lib/GeometryUtil.js";import{RibbonLineMaterial as w}from"../../webgl-engine/materials/RibbonLineMaterial.js";class b extends f{constructor(r,a){const l=n(a),c=l?o:i,m=c*s,f=i,p={renderOccluded:4,isDecoration:!0},u=new w({...p,width:c},r.state.isGlobal),b=new w({...p,width:m},r.state.isGlobal),h=new w({...p,width:f},r.state.isGlobal);super({view:r,...d,...j({isCorner:l,unfocusedMaterial:u,focusedMaterial:b,outlineMaterial:h})}),this._themeHandle=e(()=>r.effectiveTheme.accentColor,e=>{const t=e.toUnitRGBA();u.setParameters({color:t}),b.setParameters({color:t}),h.setParameters({color:t})},t)}destroy(){this._themeHandle.remove(),super.destroy()}}function j({isCorner:e,unfocusedMaterial:t,focusedMaterial:o,outlineMaterial:i}){const s=e?[r(1,0,0),r(0,0,0),r(0,1,0)]:[r(1,0,0),r(-1,0,0)];return{renderObjects:[new p(u(t,s),1|c),new p(u(o,s),2|c),new p(u(i,s),m)],collisionType:{type:"line",paths:[s]},radius:e?a:l,state:c}}export{b as ResizeManipulator};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import{multiplyOpacity as e,getContrast as t}from"../../../../core/colorUtils.js";import{releaseMaybe as r}from"../../../../core/maybe.js";import{watch as i,initial as o}from"../../../../core/reactiveUtils.js";import{DidPointerMoveRecentlyFlag as a}from"./sliceToolUtils.js";import{Manipulator3D as s}from"../../interactive/Manipulator3D.js";import{rotateManipulatorDefaults as n}from"../../interactive/manipulatorUtils.js";import{RenderObject as l}from"../../interactive/RenderObject.js";import{Attribute as c}from"../../webgl-engine/lib/Attribute.js";import{Geometry as m}from"../../webgl-engine/lib/Geometry.js";import{createPolylineGeometry as d}from"../../webgl-engine/lib/GeometryUtil.js";import{ImageMaterial as u}from"../../webgl-engine/materials/ImageMaterial.js";import{RibbonLineMaterial as p}from"../../webgl-engine/materials/RibbonLineMaterial.js";class f extends s{constructor(r,a){const s=e(r.effectiveTheme.accentColor,.5),l=t(r.effectiveTheme.accentColor),c=a(s,l),m=new u({draped:!1,managedTexture:c.managedTexture,writeDepth:!1,renderOccluded:16,isDecoration:!0}),d=n.calloutWidth,f=new p({width:d,renderOccluded:4,isDecoration:!0},r.state.isGlobal);super({view:r,...h({imageMaterial:m,calloutMaterial:f})}),this._material=m,this._textureHandle=c,this._themeHandle=i(()=>r.effectiveTheme.accentColor,r=>{const i=e(r,.5),o=t(r),s=this._textureHandle;this._textureHandle=a(i,o),m.setParameters({managedTexture:this._textureHandle.managedTexture}),s?.release(),f.setParameters({color:r.toUnitRGBA()})},o)}destroy(){this._textureHandle=r(this._textureHandle),this._themeHandle.remove(),this._material.dispose(),super.destroy()}}function h({imageMaterial:e,calloutMaterial:t}){const{focusMultiplier:r,calloutLength:i,discRadius:o}=n,s=o*r,u=(e,t)=>{const r=[0,1,2,2,3,0];return new m(t,[["position",new c([i-e,-e,0,i+e,-e,0,i+e,e,0,i-e,e,0],r,3,!0)],["uv0",new c([0,0,1,0,1,1,0,1],r,2,!0)]])},p=d(t,[[0,0,0],[i-o,0,0]]),f=d(t,[[0,0,0],[i-s,0,0]]),h=a;return{autoScaleRenderObjects:!1,collisionPriority:1,collisionType:{type:"disc",direction:[0,0,1],offset:[i,0,0]},focusMultiplier:r,radius:o,renderObjects:[new l(u(o,e),1|h),new l(p,1|h),new l(u(s,e),2|h),new l(f,2|h)],state:h}}export{f as RotateManipulator};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../../../../Color.js";import{getContrast as e}from"../../../../core/colorUtils.js";import{watch as o,initial as r}from"../../../../core/reactiveUtils.js";import{identity as a,translate as i,scale as s,fromQuat as n,multiply as c}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as l}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{rotationTo as m}from"../../../../core/libs/gl-matrix-2/math/quat.js";import{e as p,n as u,j as f,i as d,h as g}from"../../../../chunks/vec32.js";import{create as h,fromValues as b}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{sv3d as j,sm4d as M,sq4d as w}from"../../../../geometry/support/vectorStacks.js";import{shiftRestartOffsetDistance as v,shiftRestartTipRadius as O,shiftRestartTipLength as U,shiftRestartArrowOutlineWidth as y,shiftRestartArrowLength as D,shiftRestartTubeRadius as P,shiftRestartTubeFocusMultiplier as R,shiftRestartTipFocusMultiplier as x}from"./sliceToolConfig.js";import{DidPointerMoveRecentlyFlag as C,IsShiftEdgeOnScreenFlag as G}from"./sliceToolUtils.js";import{Manipulator3D as A}from"../../interactive/Manipulator3D.js";import{RenderObject as B}from"../../interactive/RenderObject.js";import{createPolylineGeometry as F,createConeGeometry as T,createPathExtrusionGeometry as k}from"../../webgl-engine/lib/GeometryUtil.js";import{ColorMaterial as H}from"../../webgl-engine/materials/ColorMaterial.js";import{RibbonLineMaterial as S}from"../../webgl-engine/materials/RibbonLineMaterial.js";class _ extends A{constructor(a,i){const s=new S({width:1,renderOccluded:4,isDecoration:!0},a.state.isGlobal),n=new H({cullFace:2,renderOccluded:16,isDecoration:!0}),c=new H({cullFace:2,renderOccluded:16,isDecoration:!0}),l=new H({cullFace:2,renderOccluded:16,isDecoration:!0}),m=new H({writeDepth:!1,cullFace:1,renderOccluded:2,isDecoration:!0});super({view:a,...q({offsetMode:i,tubeMaterial:n,tipMaterial:c,capMaterial:l,outlineMaterial:m,calloutMaterial:s})}),this._themeHandle=o(()=>a.effectiveTheme.accentColor,o=>{const r=e(o),a=
|
|
5
|
+
import t from"../../../../Color.js";import{getContrast as e}from"../../../../core/colorUtils.js";import{watch as o,initial as r}from"../../../../core/reactiveUtils.js";import{identity as a,translate as i,scale as s,fromQuat as n,multiply as c}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as l}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{rotationTo as m}from"../../../../core/libs/gl-matrix-2/math/quat.js";import{e as p,n as u,j as f,i as d,h as g}from"../../../../chunks/vec32.js";import{create as h,fromValues as b}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{sv3d as j,sm4d as M,sq4d as w}from"../../../../geometry/support/vectorStacks.js";import{shiftRestartOffsetDistance as v,shiftRestartTipRadius as O,shiftRestartTipLength as U,shiftRestartArrowOutlineWidth as y,shiftRestartArrowLength as D,shiftRestartTubeRadius as P,shiftRestartTubeFocusMultiplier as R,shiftRestartTipFocusMultiplier as x}from"./sliceToolConfig.js";import{DidPointerMoveRecentlyFlag as C,IsShiftEdgeOnScreenFlag as G}from"./sliceToolUtils.js";import{Manipulator3D as A}from"../../interactive/Manipulator3D.js";import{RenderObject as B}from"../../interactive/RenderObject.js";import{createPolylineGeometry as F,createConeGeometry as T,createPathExtrusionGeometry as k}from"../../webgl-engine/lib/GeometryUtil.js";import{ColorMaterial as H}from"../../webgl-engine/materials/ColorMaterial.js";import{RibbonLineMaterial as S}from"../../webgl-engine/materials/RibbonLineMaterial.js";class _ extends A{constructor(a,i){const s=new S({width:1,renderOccluded:4,isDecoration:!0},a.state.isGlobal),n=new H({cullFace:2,renderOccluded:16,isDecoration:!0}),c=new H({cullFace:2,renderOccluded:16,isDecoration:!0}),l=new H({cullFace:2,renderOccluded:16,isDecoration:!0}),m=new H({writeDepth:!1,cullFace:1,renderOccluded:2,isDecoration:!0});super({view:a,...q({offsetMode:i,tubeMaterial:n,tipMaterial:c,capMaterial:l,outlineMaterial:m,calloutMaterial:s})}),this._themeHandle=o(()=>a.effectiveTheme.accentColor,o=>{const r=e(o),a=o.toUnitRGBA(),i=r.toUnitRGBA(),p=t.blendColors(r,o,.4).toUnitRGBA(),u=t.blendColors(r,o,.14).toUnitRGBA();s.setParameters({color:a}),n.setParameters({color:u}),c.setParameters({color:i}),l.setParameters({color:p}),m.setParameters({color:a})},r)}destroy(){this._themeHandle.remove(),super.destroy()}}function q({offsetMode:t,tubeMaterial:e,tipMaterial:o,capMaterial:r,outlineMaterial:a,calloutMaterial:i}){const s=0===t?v:0,n=[b(s,0,-D/2),b(s,0,D/2)],c=z(n),l=I({vertices:n,padding:0,materials:{tube:e,tip:o,cap:r}}),m=I({vertices:n,padding:y,materials:{tube:a,tip:a,cap:a}}),p=F(i,[[s,0,0],[s-v,0,0]]),u=F(i,[[s,0,0],[s-v,0,0]]);return{renderObjects:[...l.normal.map(t=>new B(t,1|C)),...m.normal.map(t=>new B(t,1|C)),new B(p,1|C|G),...l.focused.map(t=>new B(t,2|C)),...m.focused.map(t=>new B(t,2|C)),new B(u,2|C|G)],autoScaleRenderObjects:!1,collisionType:{type:"line",paths:[c]},collisionPriority:1,radius:O,state:C}}function I({vertices:t,padding:e,materials:o}){const r=r=>{const v=t.slice(),y=p(j.get(),v[0],v[1]);u(y,y);const D=p(j.get(),v[v.length-1],v[v.length-2]);if(u(D,D),e>0){const t=f(h(),D,-e);v[v.length-1]=d(t,t,v[v.length-1]);const o=f(h(),y,-e);v[0]=d(o,o,v[0])}const C=r?x:1,G=U*C,A=O*C,B=a(M.get());if(e>0){const t=G/4,o=g(j.get(),0,t,0),r=1+e/t;i(B,B,o),s(B,B,g(j.get(),r,r,r)),i(B,B,f(o,o,-1/r))}const F=a(l()),k=b(0,1,0),H=n(l(),m(w.get(),k,D));H[12]=v[v.length-1][0],H[13]=v[v.length-1][1],H[14]=v[v.length-1][2],c(H,H,B);const S=o.tube,_=L(P*(r?R:1)+e,v,S);_.transformation=F;const q=[_],I=o.tip,z=T(I,G,A,24,!1,!1,!0);z.transformation=H,q.push(z);const E=o.cap,J=T(E,G,A,24,!1,!0,!1);J.transformation=H,q.push(J);const K=n(l(),m(w.get(),k,y));return K[12]=v[0][0],K[13]=v[0][1],K[14]=v[0][2],c(K,K,B),q.push(z.instantiate({transformation:K})),q.push(J.instantiate({transformation:K})),q};return{normal:r(!1),focused:r(!0)}}function L(t,e,o){const r=[],a=12;for(let i=0;i<a;i++){const e=i/a*2*Math.PI;r.push([Math.cos(e)*t,Math.sin(e)*t])}return k(o,r,e,[],[],!1)}function z(t,e){const o=p(h(),t[t.length-1],t[t.length-2]);u(o,o),f(o,o,U),d(o,o,t[t.length-1]);{const e=p(h(),t[0],t[1]);return u(e,e),f(e,e,U),d(e,e,t[0]),[e,...t,o]}}export{_ as ShiftManipulator};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../../
|
|
5
|
+
import e from"../../../../core/Handles.js";import{watch as t,initial as r}from"../../../../core/reactiveUtils.js";import{fromTranslation as i,mul as o,fromXRotation as s,fromYRotation as a}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as n}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{p as l}from"../../../../chunks/vec32.js";import{fromValues as c}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{displayFocusMultiplier as m}from"../Slice/sliceToolConfig.js";import{viewshedToolManipulatorConfiguration as p}from"./ViewshedConfiguration.js";import{Manipulator3D as f}from"../../interactive/Manipulator3D.js";import{RenderObject as h}from"../../interactive/RenderObject.js";import{createTubeGeometry as d,createExtrudedTriangle as u}from"../../webgl-engine/lib/GeometryUtil.js";import{ColorMaterial as j}from"../../webgl-engine/materials/ColorMaterial.js";class g extends f{constructor(t,r){super({view:t,autoScaleRenderObjects:!1,worldSized:!1,radius:p.collisionRadius}),this._handles=new e,this._setupManipulatorVisual(r)}destroy(){this._handles.remove(),super.destroy()}_setupManipulatorVisual(e){const t=this._createMaterial(),r=1,f=[c(0,0,0),c(0,0,r)],u=d(t,f,e,16,!1),j=d(t,f,e*m,16,!1),g=w(!1,t,e),v=w(!0,t,e),M=n();i(M,f[f.length-1]),o(M,M,s(b,Math.PI/2)),o(M,M,a(b,Math.PI/2)),g.transformation=M,v.transformation=M,this.renderObjects=[new h(u,1),new h(j,2),new h(g,1),new h(v,2)];const _=c(0,p.getScaleOrientArrowTipLength(!0),0),O=l(_,_,M),x=[...f,O];this.collisionType={type:"line",paths:[x]}}_createMaterial(){const e=new j({cullFace:2,renderOccluded:4,isDecoration:!0});return this._handles.add(t(()=>this.view.effectiveTheme.accentColor.toUnitRGBA(),t=>e.setParameters({color:t}),r)),e}}function w(e,t,r){const i=p.getScaleOrientArrowTipLength(e);let o=2*r;e&&(o*=m);const s=i/2;return u(t,i,s,s,o,0)}const b=n();export{g as ViewshedArrowManipulator};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../../Color.js";import{deg2rad as i}from"../../../../core/mathUtils.js";const t=2,r=4,s=i(2),o=1.5;class c{constructor(){this.collisionRadius=5,this.fovUnfocusedArcWidth=r,this.fovFocusedArcWidth=t*this.fovUnfocusedArcWidth,this.scaleOrientSize=90,this.scaleOrientHandleRadius=.025,this.scaleOrientMinDistance=1,this.scaleOrientArrowTipLength=.3,this.scaleOrientArrowTipFocusMultiplier=t/1.5,this.observerSize=5,this.hoverTimeoutMilliseconds=1e3,this.viewAngleThreshold=10}getFovArcWidth(e){return e?this.fovFocusedArcWidth:this.fovUnfocusedArcWidth}getScaleOrientArrowTipLength(e){return this.scaleOrientArrowTipLength*(e?this.scaleOrientArrowTipFocusMultiplier:1)}}const n=new c;class h{constructor(){this.frameWidthNotSelected=.3,this.frameWidthSelected=1,this.frameColor=new e([255,255,255,.99]),this.observerPointConfiguration={size:6,pixelSnappingEnabled:!1,primitive:"circle",elevationInfo:{mode:"absolute-height",offset:0},outlineSize:0,color:
|
|
5
|
+
import e from"../../../../Color.js";import{deg2rad as i}from"../../../../core/mathUtils.js";const t=2,r=4,s=i(2),o=1.5;class c{constructor(){this.collisionRadius=5,this.fovUnfocusedArcWidth=r,this.fovFocusedArcWidth=t*this.fovUnfocusedArcWidth,this.scaleOrientSize=90,this.scaleOrientHandleRadius=.025,this.scaleOrientMinDistance=1,this.scaleOrientArrowTipLength=.3,this.scaleOrientArrowTipFocusMultiplier=t/1.5,this.observerSize=5,this.hoverTimeoutMilliseconds=1e3,this.viewAngleThreshold=10}getFovArcWidth(e){return e?this.fovFocusedArcWidth:this.fovUnfocusedArcWidth}getScaleOrientArrowTipLength(e){return this.scaleOrientArrowTipLength*(e?this.scaleOrientArrowTipFocusMultiplier:1)}}const n=new c;class h{constructor(){this.frameWidthNotSelected=.3,this.frameWidthSelected=1,this.frameColor=new e([255,255,255,.99]),this.observerPointConfiguration={size:6,pixelSnappingEnabled:!1,primitive:"circle",elevationInfo:{mode:"absolute-height",offset:0},outlineSize:0,color:new e([3,252,111,1]).toUnitRGBA()},this.shapeMaterialParameters={color:[.33,.33,.33,.25],renderOccluded:1,cullFace:2,writeDepth:!1}}}const l=new h;export{s as arcAnglePerSegment,o as creationVerticalOffset,n as viewshedToolManipulatorConfiguration,l as viewshedVisualizationConfiguration};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../../../../
|
|
5
|
+
import t from"../../../../core/Handles.js";import{handlesGroup as r}from"../../../../core/handleUtils.js";import{deg2rad as e,clamp as a}from"../../../../core/mathUtils.js";import{destroyMaybe as i}from"../../../../core/maybe.js";import{watch as o,initial as n}from"../../../../core/reactiveUtils.js";import{fromYRotation as s,fromXRotation as l,fromScaling as c,fromZRotation as u,fromRotation as p,multiply as h}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as m}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{h as d,a as f,j as _}from"../../../../chunks/vec32.js";import{create as g,fromValues as M}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{f as b}from"../../../../chunks/boundedPlane.js";import{viewshedToolManipulatorConfiguration as v}from"./ViewshedConfiguration.js";import{getViewshedRotationMatrix as j,screenToCircleAngle as w}from"./viewshedToolUtils.js";import{Manipulator3D as A}from"../../interactive/Manipulator3D.js";import{RenderObject as V}from"../../interactive/RenderObject.js";import{InteractiveManipulation as O}from"../../interactive/editingTools/manipulations/InteractiveManipulation.js";import{createPolylineGeometry as E}from"../../webgl-engine/lib/GeometryUtil.js";import{assert as y}from"../../webgl-engine/lib/Util.js";import{RibbonLineMaterial as R}from"../../webgl-engine/materials/RibbonLineMaterial.js";import{createManipulatorDragEventPipeline as T}from"../../../interactive/dragEventPipeline.js";class U extends O{constructor(r){super(),this._handles=new t,this._tool=r.tool,this._view=r.view,this._focusedArcMaterial=this._createArcMaterial(!0),this._unfocusedArcMaterial=this._createArcMaterial(!1),this._createManipulators(),this.forEachManipulator(t=>this._tool.manipulators.add(t))}destroy(){this._handles=i(this._handles),this.forEachManipulator(t=>{this._tool.manipulators.remove(t),t.destroy()}),this._tool=null,this._view=null,this._manipulators=null}createDragPipeline(t,e){const a=Object.values(this._manipulators);return r(a.map(({manipulator:r,side:a})=>T(r,(r,i,o,n,s)=>{const l=G(a,e),c=i.next(t=>({...t,manipulatorType:2,side:a})),u=w(c,this._view,l,e);t(r,u,o)})))}updateManipulatorsTransform(t){t.arcCentersPoints(B),this._forEachManipulatorInfo(r=>this._updateArcManipulatorTransform(r,t,B[r.side]))}updateManipulatorVisuals(t){this._forEachManipulatorInfo(r=>this._updateArcManipulatorVisuals(r,t))}_updateArcManipulatorVisuals({manipulator:t,side:r},e){const a=[];if(null!=e){const[i,o]=x(r,e,this._unfocusedArcMaterial);a.push(new V(i,1),new V(i.instantiate({material:this._focusedArcMaterial}),2)),t.collisionType={type:"line",paths:[o]}}t.renderObjects=a,t.radius=v.collisionRadius}_updateArcManipulatorTransform({manipulator:t,side:r},a,i){const o=a.horizontalFieldOfView,n=e(a.verticalFieldOfView/2),f=e(o/2),_=F(r);t.renderLocation=i;const g=m(),M=t=>{h(g,t,g)};M(s(C,e(-90))),_||M(l(C,n));const b=a.farDistanceRenderSpace;let v,w;M(c(C,d(k,b,b,b))),M(u(C,D(r))),M(j(a,C)),_?(v=f,w=a.tiltedUpVector):(w=a.rightVector,v=n),v*="right"===r||"bottom"===r?-1:1;const A=p(C,v,w);null!=A&&M(A),t.modelTransform=g}_createManipulators(){const t=this._createArcManipulator("left"),r=this._createArcManipulator("right"),e=this._createArcManipulator("top"),a=this._createArcManipulator("bottom");this._manipulators={left:t,right:r,top:e,bottom:a};[[a.manipulator,e.manipulator],[t.manipulator,r.manipulator]].forEach(([t,r])=>{t.metadata={pairedManipulator:r},r.metadata={pairedManipulator:t}})}_createArcManipulator(t){const r=new A({view:this._view,autoScaleRenderObjects:!1,worldSized:!0}),e={manipulator:r,side:t};return this._updateArcManipulatorVisuals(e),this._handles.add(r.events.on(["focus-changed","grab-changed"],t=>{const e=r.metadata?.pairedManipulator;null!=e&&(e.hovering!==r.hovering&&(e.hovering=r.hovering),e.grabbing!==r.grabbing&&(e.grabbing=r.grabbing))})),e}_createArcMaterial(t){const r=v.getFovArcWidth(t),e=new R({renderOccluded:4,isDecoration:!0,width:r},this._view.state.isGlobal);return this._handles.add(o(()=>this._view.effectiveTheme.accentColor.toUnitRGBA(),t=>e.setParameters({color:t}),n)),e}forEachManipulator(t){Object.values(this._manipulators).forEach(({manipulator:r})=>t(r,2))}_forEachManipulatorInfo(t){Object.values(this._manipulators).forEach(r=>t(r))}get test(){return{manipulators:this._manipulators}}}function x(t,r,i){const{horizontalFieldOfView:o,verticalFieldOfView:n}=r,s=F(t),l=e(a((s?n:o)/2,0,15)),c=P(-l/2,l/2,s?1:Math.max(Math.sin(e(90-n/2)),.1));return[E(i,c),c]}function P(t,r,e,a=10){y(a>1,"createArcPolylineGeometry() needs at least 2 for numVertices");const i=r-t;if(i<=0||e<=0){const t=.01;return[M(0,0,t),M(0,0,-t)]}const o=[],n=i/a;for(let s=0;s<a;s++){let i=t+s*n;s===a-1&&(i=r);const l=Math.cos(i)*e,c=Math.sin(i)*e,u=M(l-e,0,c);o.push(u)}return o}function S(t){switch(t){case"left":return 0;case"bottom":return 1;case"right":return 2;case"top":return 3}}function D(t){return S(t)*z}function F(t){return"left"===t||"right"===t}function I(t){return"left"===t?"right":"right"===t?"left":"top"===t?"bottom":"top"}function G(t,{observerRenderSpace:r,targetRenderSpace:e,tiltedUpVector:a,rightVector:i,farDistanceRenderSpace:o}){const n=f(k,e,r),s=F(t)?i:a,l=_(L,s,o);return b(r,n,l)}const z=Math.PI/2,C=m(),k=g(),L=g(),B={top:g(),bottom:g(),left:g(),right:g()};export{U as ViewshedFieldOfViewManipulation,P as createArcPolylineVertices,I as flipSide,F as isSideHorizontal,D as sideToRad};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../../
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import"../../../../core/has.js";import{equals as i}from"../../../../core/lang.js";import{deg2rad as s}from"../../../../core/mathUtils.js";import{destroyMaybe as o}from"../../../../core/maybe.js";import{watch as r,initial as a}from"../../../../core/reactiveUtils.js";import{property as l,subclass as n}from"../../../../core/accessorSupport/decorators.js";import{fromRotation as h}from"../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as c}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{p as m,h as d,a as u,u as p,n as _,j as V,k as f,q as v,d as w,i as E}from"../../../../chunks/vec32.js";import{create as b,clone as g}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{viewshedVisualizationConfiguration as C,arcAnglePerSegment as L}from"./ViewshedConfiguration.js";import{ViewshedShapeVisualElement as A}from"./ViewshedShapeVisualElement.js";import D from"./ViewshedTool.js";import{LineVisualElement as y}from"../../interactive/visualElements/LineVisualElement.js";import{PointVisualElement as j}from"../../interactive/visualElements/PointVisualElement.js";import{createStipplePatternSimple as F}from"../../webgl-engine/materials/lineStippleUtils.js";let R=class extends t{constructor(e){super(e),this.visible=!0,this._viewshedCorners={topLeft:b(),topRight:b(),bottomLeft:b(),bottomRight:b()},this._arcCenterPoints={top:b(),bottom:b(),left:b(),right:b()},this._parallelCenters={top:b(),bottom:b()}}initialize(){const e={view:this.view,isDecoration:!0},t={...e,color:this._color,renderOccluded:4},s={...t,stipplePattern:F(2)};this._observerVisualElement=new j({...e,...C.observerPointConfiguration}),this._shapeVisualElement=new A({...e,isDecoration:this.isDecoration}),this._frameLinesVisualElement=new y(t),this._leftArcVisualElement=new y(t),this._rightArcVisualElement=new y(t),this._topArcVisualElement=new y(t),this._bottomArcVisualElement=new y(t),this._centralLongitude=new y(s),this._centralLatitude=new y(s),this.addHandles([r(()=>{const e=this.viewshedComputedData;if(!e?.valid)return null;const t=this._viewshedCorners,i=this._arcCenterPoints,s=this._parallelCenters;return e.cornerPoints(t),e.arcCentersPoints(i),e.parallelCenterPoints(s),{viewshedComputedData:e,corners:t,arcCenters:i,parallelCenters:s,interactive:this.analysisViewData.interactive,selected:this._selected}},e=>{const t=null!=e;this._forEachVisualElement(e=>e.attached=t),t&&this._updateVisualElements(e)},{initial:!0,equals:i}),r(()=>{const{viewshedComputedData:e}=this,{horizontalFieldOfView:t,verticalFieldOfView:i}=e??{};return{viewshedComputedData:e,horizontalFieldOfView:t,verticalFieldOfView:i}},({viewshedComputedData:e})=>{const{_shapeVisualElement:t}=this;e!==t.viewshedComputedData&&(t.viewshedComputedData=e),this._shapeVisualElement.recreateGeometry()},a),r(()=>{const{interactive:e}=this.analysisViewData;return{visible:this.visible,selected:e&&this._selected,staged:e&&this._staged,horFovNot360:360!==this.viewshedComputedData?.horizontalFieldOfView}},({visible:e,selected:t,staged:i,horFovNot360:s})=>{const o=t||i;this._shapeVisualElement.visible=e,this._topArcVisualElement.visible=e,this._bottomArcVisualElement.visible=e,this._frameLinesVisualElement.visible=e&&s;const r=e&&(t||s);this._leftArcVisualElement.visible=r,this._rightArcVisualElement.visible=r,this._forEachLineVisualElement(e=>{e.width=o?C.frameWidthSelected:C.frameWidthNotSelected,e.renderOccluded=t?4:1}),[this._centralLatitude,this._centralLongitude].forEach(i=>{i.width=2*(o?C.frameWidthSelected:C.frameWidthNotSelected),i.visible=e&&t})},a),r(()=>{const{analysisViewData:{interactive:e,tool:t},_selected:i,visible:s}=this,o=this.view.activeTool,r=!t?.active&&o instanceof D&&o.creating;return{observerVisible:s&&!i&&(!e||(t?.creating??!1)||r),color:this._color}},({observerVisible:e,color:t})=>{this._observerVisualElement.visible=e,this._forEachLineVisualElement(e=>e.color=t)},a)])}get _color(){const{viewshedComputedData:e,_selected:t,analysisViewData:i}=this;if(null==e)return C.frameColor.toUnitRGBA();const s=i.tool?.active||i.interactive,o=e.viewshed===i.tool?.stagedViewshed;return(s&&(t||o)?this.view.effectiveTheme.accentColor:C.frameColor).toUnitRGBA()}get _selected(){const{viewshedComputedData:e,analysisViewData:{selectedViewshedComputedData:t}}=this;return null!=e&&e===t}get _staged(){const{analysisViewData:{tool:e},viewshedComputedData:t}=this;return null!=e&&e.creating&&e.stagedViewshed===t?.viewshed}destroy(){this._observerVisualElement=o(this._observerVisualElement),this._shapeVisualElement=o(this._shapeVisualElement),this._frameLinesVisualElement=o(this._frameLinesVisualElement),this._leftArcVisualElement=o(this._leftArcVisualElement),this._rightArcVisualElement=o(this._rightArcVisualElement),this._topArcVisualElement=o(this._topArcVisualElement),this._bottomArcVisualElement=o(this._bottomArcVisualElement),this._centralLongitude=o(this._centralLongitude),this._centralLatitude=o(this._centralLatitude)}_forEachLineVisualElement(e){[this._frameLinesVisualElement,this._leftArcVisualElement,this._rightArcVisualElement,this._topArcVisualElement,this._bottomArcVisualElement,this._centralLatitude,this._centralLongitude].forEach(e)}_forEachVisualElement(e){this._forEachLineVisualElement(e),e(this._observerVisualElement),e(this._shapeVisualElement)}_updateVisualElements(e){const{viewshedComputedData:t,corners:i,arcCenters:s,parallelCenters:o}=e,r=g(t.observerRenderSpace);this._observerVisualElement.geometry=t.observer,this._shapeVisualElement.updateTransform(),this._updateFrameLines(r,i),this._updateFrameArcs(t,i,o),this._updateCentralHelperArcs(t,s)}_updateFrameLines(e,t){this._frameLinesVisualElement.geometry=[[e,t.topLeft],[e,t.topRight],[e,t.bottomLeft],[e,t.bottomRight]]}_updateFrameArcs(e,t,i){const{observerRenderSpace:o,rightVector:r,horizontalFieldOfView:a,tiltedUpVector:l}=e,n=s(a),u=b(),p=c();h(p,n/2,l),m(u,r,p),S(this._leftArcVisualElement,o,t.bottomLeft,t.topLeft,"forward",u),h(p,-n/2,l),d(u,0,0,0),m(u,r,p),S(this._rightArcVisualElement,o,t.bottomRight,t.topRight,"forward",u);const _=a>180?"backward":"forward";S(this._topArcVisualElement,i.top,t.topRight,t.topLeft,_,l),S(this._bottomArcVisualElement,i.bottom,t.bottomRight,t.bottomLeft,_,l)}_updateCentralHelperArcs(e,t){const i=e.observerRenderSpace,s=e.horizontalFieldOfView>=180?"backward":"forward";S(this._centralLatitude,i,t.right,t.left,s,e.tiltedUpVector),S(this._centralLongitude,i,t.top,t.bottom,"forward",e.leftVector)}get test(){}};function S(e,t,i,s,o,r,a=L){const l=b();u(l,i,t);const n=p(l),d=b();u(d,s,t),_(d,d),V(d,d,n);let C=f(l,d);const A=g(r);"backward"===o&&(v(A,A),C=-(2*Math.PI-C));const D=[],y=Math.ceil(Math.abs(C)/a),j=c();h(j,C/y,A);const F=b();w(F,l);const R=b();w(R,i);for(let h=0;h<y;h++){const e=b();w(e,R),m(F,F,j),E(R,t,F);const i=b();w(i,R),D.push([e,i])}e.geometry=D}e([l()],R.prototype,"view",void 0),e([l({constructOnly:!0})],R.prototype,"isDecoration",void 0),e([l()],R.prototype,"analysisViewData",void 0),e([l()],R.prototype,"viewshedComputedData",void 0),e([l()],R.prototype,"visible",void 0),e([l()],R.prototype,"_color",null),e([l()],R.prototype,"_selected",null),e([l()],R.prototype,"_staged",null),R=e([n("esri.views.3d.analysis.Viewshed.ViewshedSubVisualization")],R);export{R as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import r from"../../../../
|
|
5
|
+
import{__decorate as e}from"tslib";import r from"../../../../core/Handles.js";import{watch as t,initial as o}from"../../../../core/reactiveUtils.js";import{property as i}from"../../../../core/accessorSupport/decorators.js";import{viewshedToolManipulatorConfiguration as s}from"./ViewshedConfiguration.js";import{Manipulator3D as a}from"../../interactive/Manipulator3D.js";import{createManipulatorMaterial as c}from"../../interactive/manipulatorUtils.js";import{RenderObject as n}from"../../interactive/RenderObject.js";import{createSphereGeometry as l}from"../../webgl-engine/lib/GeometryUtil.js";class m extends a{constructor(e,i){super({view:e,autoScaleRenderObjects:!1,worldSized:!1,radius:s.observerSize,interactive:!1}),this._handles=new r;const a=c(this._color);this.renderObjects=[new n(l(a,s.observerSize,32,32))],i.manipulators.add(this),this._handles.add([t(()=>this._color,e=>{a.setParameters({color:e})},o)])}destroy(){this._handles.remove(),super.destroy()}get _color(){return this.view.effectiveTheme.accentColor.toUnitRGBA()}}e([i()],m.prototype,"_color",null);export{m as ViewshedObserverManipulator};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../../Color.js";import{onLocaleChange as i,substitute as s,fetchMessageBundle as o}from"../../../../intl.js";import{volumeMeasurementConfiguration as r}from"../../../../analysis/VolumeMeasurement/volumeMeasurementConfiguration.js";import l from"../../../../core/Accessor.js";import{equals as n}from"../../../../core/arrayUtils.js";import{cyclicalPI as a}from"../../../../core/Cyclical.js";import{destroyMaybe as c}from"../../../../core/maybe.js";import{formatDecimal as u}from"../../../../core/quantityFormatUtils.js";import{watch as m,initial as d}from"../../../../core/reactiveUtils.js";import{adaptiveVolumeUnit as h}from"../../../../core/units.js";import{property as p,subclass as y}from"../../../../core/accessorSupport/decorators.js";import{e as g}from"../../../../chunks/earcut.js";import{create as _}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{h as f,n as v,e as j,f as L,g as b}from"../../../../chunks/vec32.js";import{create as C,fromValues as w}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{computeTranslationToOriginAndRotation as G}from"../../../../geometry/projection/computeTranslationToOriginAndRotation.js";import{newDoubleArray as P}from"../../../../geometry/support/DoubleArray.js";import{newIndexArray as V}from"../../../../geometry/support/Indices.js";import{angleAroundAxis as R}from"../../../../geometry/support/vector.js";import{t as F}from"../../../../chunks/vec3.js";import A from"../../../../symbols/support/ElevationInfo.js";import{LabelVisualElement as O}from"../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as x}from"../../interactive/visualElements/LineVisualElement.js";import{OutlineVisualElement as D}from"../../interactive/visualElements/OutlineVisualElement.js";import{EuclideanSegment as M}from"../../interactive/visualElements/support/Segment.js";import{ElevationContext as S}from"../../layers/graphics/ElevationContext.js";import{extrudePolygon as U}from"../../layers/graphics/Graphics3DExtrudeSymbolLayer.js";import{polygonToRenderInfo as E}from"../../support/renderInfoUtils/polygon.js";import{CutFillColor as B,VolumeGeometry as N}from"../../webgl-engine/lib/CutFillColor.js";import{createStipplePatternSimple as T}from"../../webgl-engine/materials/lineStippleUtils.js";let H=class extends l{get visible(){return this.analysisViewData.visible&&null!=this.analysisViewData.elevationAlignedGeometry&&null!=this.analysisViewData.targetGeometry}get updating(){return this.loadingMessages}get hasUnsupportedError(){const{error:e}=this.analysisViewData;return!!e&&["unsupported-coordinate-system","unsupported-layer-transparency"].includes(e.name)}constructor(e){super(e),this.unitsMessages=null,this.messages=null,this.loadingMessages=!0,this._elevationContext=S.fromElevationInfo(new A({mode:"absolute-height"})),this._extrusionHeight=r.targetElevationRange,this._projectionLines=[]}initialize(){const{view:e}=this,s={view:e,isDecoration:!0},o=r,l={...s,width:o.geometryOutlineWidth};this._elevationAlignedGeometry=new D({...l,isDraped:!0,color:t.toUnitRGBA(o.geometryOutlineColor)}),this._targetGeometry=new D(l);const n={...s,attached:!0,width:o.projectionLineWidth,renderOccluded:4,polygonOffset:!0},a={...n,stipplePattern:T(o.projectionLineStippleSize)},c=t.toUnitRGBA(o.cutProjectionLineColor),u=t.toUnitRGBA(o.fillProjectionLineColor);this._cutProjectionLines=new x({...n,color:c}),this._occludedCutProjectionLines=new x({...a,color:c}),this._fillProjectionLines=new x({...n,color:u}),this._occludedFillProjectionLines=new x({...a,color:u});const h={...s,attached:!0};this._cutVolumeLabel=new O(h),this._fillVolumeLabel=new O(h),this._cutFillRenderNode=new B({view:e,cutColor:o.cutColor,fillColor:o.fillColor,borderColor:o.geometryOutlineColor}),this.addHandles([m(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry}),({elevationAlignedGeometry:e,targetGeometry:t})=>{this._elevationAlignedGeometry.geometry=e,this._targetGeometry.geometry=t},d),m(()=>({interactive:this.analysisViewData.interactive,measureType:this.analysis.measureType,visible:this.visible}),({visible:e,interactive:t,measureType:i})=>{this._elevationAlignedGeometry.visible=e&&!t,this._targetGeometry.visible=e&&"cut-fill"===i,this._cutFillRenderNode.measureType=i},d),m(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry,visible:this.visible}),({elevationAlignedGeometry:e,targetGeometry:t,visible:i})=>this._updateProjectionLines(e,t,i),d),m(()=>({interactive:this.analysisViewData.interactive,accentColor:this.view.effectiveTheme.accentColor,hasResult:!!this.analysisViewData.result}),({interactive:e,accentColor:t,hasResult:i})=>{this._updateColors(e,t,i)},d),m(()=>this.analysisViewData.targetGeometry,()=>this._updateCutFillGeometry(),d),m(()=>this.visible&&!this.hasUnsupportedError,e=>this._updateCutFillVisibility(e),d),m(()=>{const{messages:e,unitsMessages:t,visible:i,analysisViewData:s}=this;return{labelAnchors:s.labelAnchors,effectiveDisplayUnits:s.effectiveDisplayUnits,messages:e,unitsMessages:t,result:s.result,visible:i&&!!s.result}},e=>this._updateLabels(e)),m(()=>this.view.state.camera,e=>this._updateProjectionLineOcclusion(e),d),i(()=>this._updateMessageBundle())]),this._updateMessageBundle()}destroy(){this._elevationAlignedGeometry=c(this._elevationAlignedGeometry),this._targetGeometry=c(this._targetGeometry),this._cutProjectionLines=c(this._cutProjectionLines),this._occludedCutProjectionLines=c(this._occludedCutProjectionLines),this._fillProjectionLines=c(this._fillProjectionLines),this._occludedFillProjectionLines=c(this._occludedFillProjectionLines),this._cutVolumeLabel=c(this._cutVolumeLabel),this._fillVolumeLabel=c(this._fillVolumeLabel),this._cutFillRenderNode.destroy()}_updateProjectionLines(e,t,i){if(this._cutProjectionLines.visible=i,this._occludedCutProjectionLines.visible=i,this._fillProjectionLines.visible=i,this._occludedFillProjectionLines.visible=i,!e||!t)return;const{renderCoordsHelper:s}=this.view,o=[],r=e.spatialReference,l=e.rings[0],a=l.length>1&&n(l[0],l[l.length-1]),c=l.length-(a?1:0);for(let n=0;n<c;++n){const e=l[n],i=f(C(),e[0],e[1],e[2]);s.toRenderCoords(i,r,i);const a=t.rings[0][n],c=f(C(),a[0],a[1],a[2]);s.toRenderCoords(c,r,c);const u=new M(i,c);o.push(u)}e.isClockwise(l)||o.reverse();const u=[],m=[],d=[],h=[],p=[],y=this.view.state.camera;for(let n=0;n<o.length;++n){const i=o[n],s=o[0===n?o.length-1:n-1],r=o[n===o.length-1?0:n+1],l=e.rings[0][n],a=t.rings[0][n],c=l[2]>a[2],g=new I(i,s,r,c);u.push(g),g.updateOccluded(y);const _=g.isOccluded;c?(_?d:m).push(i):(_?p:h).push(i)}this._projectionLines=u,this._cutProjectionLines.setGeometryFromSegments(m),this._occludedCutProjectionLines.setGeometryFromSegments(d),this._fillProjectionLines.setGeometryFromSegments(h),this._occludedFillProjectionLines.setGeometryFromSegments(p)}_updateProjectionLineOcclusion(e){const t=[],i=[],s=[],o=[];let r=!1,l=!1;for(const n of this._projectionLines){n.updateOccluded(e)&&(r||=n.isCut,l||=!n.isCut);const a=n.isOccluded;(n.isCut?a?i:t:a?o:s).push(n.segment)}l&&(this._fillProjectionLines.setGeometryFromSegments(s),this._occludedFillProjectionLines.setGeometryFromSegments(o)),r&&(this._cutProjectionLines.setGeometryFromSegments(t),this._occludedCutProjectionLines.setGeometryFromSegments(i))}_updateColors(e,i,s){const{geometryOutlineColor:o,cutColor:l,fillColor:n,cutColorMuted:a,fillColorMuted:c,cutProjectionLineColor:u,fillProjectionLineColor:m}=r;if(this._cutFillRenderNode.cutColor=s?l:a,this._cutFillRenderNode.fillColor=s?n:c,e){const e=t.toUnitRGBA(i);this._targetGeometry.color=e,this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e,this._fillProjectionLines.color=e,this._occludedFillProjectionLines.color=e,this._cutFillRenderNode.borderColor=i}else{this._targetGeometry.color=t.toUnitRGBA(o);const e=t.toUnitRGBA(s?u:a);this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e;const i=t.toUnitRGBA(s?m:c);this._fillProjectionLines.color=i,this._occludedFillProjectionLines.color=i,this._cutFillRenderNode.borderColor=o}}_updateLabels(e){const{labelDistance:t}=r,{effectiveDisplayUnits:i,labelAnchors:o,messages:l,unitsMessages:n,result:a,visible:c}=e;if(this._cutVolumeLabel.visible=c,this._fillVolumeLabel.visible=c,this._cutVolumeLabel.geometry=o.cut?{type:"point",point:o.cut,callout:{distance:t,offset:0}}:null,this._fillVolumeLabel.geometry=o.fill?{type:"point",point:o.fill,callout:{distance:-t,offset:0}}:null,null==a||null==l||null==n)return this._cutVolumeLabel.text="-",void(this._fillVolumeLabel.text="-");const u=i.volume,m=s(l.labels.cut,{volume:k(n,a.cutVolume,u)}),d=s(l.labels.fill,{volume:k(n,a.fillVolume,u)});this._cutVolumeLabel.text=m,this._fillVolumeLabel.text=d}_updateCutFillVisibility(e){e?this._cutFillRenderNode.enable():this._cutFillRenderNode.disable()}_updateCutFillGeometry(){const{renderCoordsHelper:e}=this.view,{targetGeometry:t}=this.analysisViewData;if(!t?.extent)return;const{center:i}=t.extent,s=w(i.x,i.y,0),o=C();e.toRenderCoords(s,t.spatialReference,o);const r=this._getExtrudedVolume(t,this._extrusionHeight,s,o),l=this._getExtrudedVolume(t,-this._extrusionHeight,s,o);this._cutFillRenderNode.updateGeometries(r,l,o)}_getExtrudedVolume(e,t,i,s){const{renderCoordsHelper:o,spatialReference:r,elevationProvider:l}=this.view,n=C(),a=1===o.viewingMode;o.worldUpAtPosition(s,n);const c=E(e,l,o,this._elevationContext),{polygons:u,mapPositions:m,position:d}=c,h=u[0],p=h.count,y=g(h.mapPositions,h.holeIndices,3),f=y.length,v=6*p,j=V(v+f),L=V(f),b=P(3*v),w=P(3*v);U(d,m,y,h,b,null,w,null,j,L,t,n,a);const R=_(),A=_();if(G(r,i,R,o.spatialReference),A[12]=-R[12],A[13]=-R[13],A[14]=-R[14],F(b,b,A),"stockpile"===this.analysis.measureType)for(let g=0;g<w.length;g+=3)w[g]=n[0],w[g+1]=n[1],w[g+2]=n[2];return new N(b,L,j,w)}async _updateMessageBundle(){this.loadingMessages=!0;try{this.unitsMessages=await o("esri/core/t9n/Units"),this.messages=await o("esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis")}finally{this.loadingMessages=!1}}};function k(e,t,i){if(!t||!e)return null;const s=h(t.value,t.unit,i),o=r.labelPrecisions[s];return u(e,t,s,o)}e([p({constructOnly:!0})],H.prototype,"view",void 0),e([p({constructOnly:!0})],H.prototype,"analysis",void 0),e([p({constructOnly:!0})],H.prototype,"analysisViewData",void 0),e([p()],H.prototype,"unitsMessages",void 0),e([p()],H.prototype,"messages",void 0),e([p()],H.prototype,"loadingMessages",void 0),e([p({readOnly:!0})],H.prototype,"visible",null),e([p()],H.prototype,"updating",null),e([p()],H.prototype,"hasUnsupportedError",null),H=e([y("esri.views.3d.analysis.VolumeMeasurement.VolumeMeasurementCutFillVisualization")],H);class I{constructor(e,t,i,s){this.segment=e,this.previous=t,this.next=i,this.isCut=s,this._isOccluded=!1,this._n1=C(),this._n2=C();const o=v(z,j(z,e.endRenderSpace,e.startRenderSpace));v(this._n1,L(this._n1,o,v(W,j(W,t.startRenderSpace,e.startRenderSpace)))),v(this._n2,L(this._n2,o,v(W,j(W,e.startRenderSpace,i.startRenderSpace)))),this._isConvex=a.normalize(R(this._n1,this._n2,o))<0}get isOccluded(){return this._isOccluded}updateOccluded(e){j(z,this.segment.startRenderSpace,e.eye);const t=b(this._n1,z)<0,i=b(this._n2,z)<0,s=this._isOccluded;return this._isOccluded=this._isConvex?t&&i:t||i,this._isOccluded!==s}}const z=C(),W=C();export{H as VolumeMeasurementCutFillVisualization};
|
|
5
|
+
import{__decorate as e}from"tslib";import{onLocaleChange as t,substitute as i,fetchMessageBundle as s}from"../../../../intl.js";import{volumeMeasurementConfiguration as o}from"../../../../analysis/VolumeMeasurement/volumeMeasurementConfiguration.js";import l from"../../../../core/Accessor.js";import{equals as r}from"../../../../core/arrayUtils.js";import{cyclicalPI as n}from"../../../../core/Cyclical.js";import{destroyMaybe as a}from"../../../../core/maybe.js";import{formatDecimal as c}from"../../../../core/quantityFormatUtils.js";import{watch as u,initial as m}from"../../../../core/reactiveUtils.js";import{adaptiveVolumeUnit as d}from"../../../../core/units.js";import{property as h,subclass as p}from"../../../../core/accessorSupport/decorators.js";import{e as y}from"../../../../chunks/earcut.js";import{create as g}from"../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{h as _,n as f,e as v,f as j,g as L}from"../../../../chunks/vec32.js";import{create as b,fromValues as C}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{computeTranslationToOriginAndRotation as w}from"../../../../geometry/projection/computeTranslationToOriginAndRotation.js";import{newDoubleArray as G}from"../../../../geometry/support/DoubleArray.js";import{newIndexArray as P}from"../../../../geometry/support/Indices.js";import{angleAroundAxis as V}from"../../../../geometry/support/vector.js";import{t as R}from"../../../../chunks/vec3.js";import F from"../../../../symbols/support/ElevationInfo.js";import{LabelVisualElement as A}from"../../interactive/visualElements/LabelVisualElement.js";import{LineVisualElement as O}from"../../interactive/visualElements/LineVisualElement.js";import{OutlineVisualElement as x}from"../../interactive/visualElements/OutlineVisualElement.js";import{EuclideanSegment as D}from"../../interactive/visualElements/support/Segment.js";import{ElevationContext as M}from"../../layers/graphics/ElevationContext.js";import{extrudePolygon as S}from"../../layers/graphics/Graphics3DExtrudeSymbolLayer.js";import{polygonToRenderInfo as U}from"../../support/renderInfoUtils/polygon.js";import{CutFillColor as E,VolumeGeometry as B}from"../../webgl-engine/lib/CutFillColor.js";import{createStipplePatternSimple as N}from"../../webgl-engine/materials/lineStippleUtils.js";let T=class extends l{get visible(){return this.analysisViewData.visible&&null!=this.analysisViewData.elevationAlignedGeometry&&null!=this.analysisViewData.targetGeometry}get updating(){return this.loadingMessages}get hasUnsupportedError(){const{error:e}=this.analysisViewData;return!!e&&["unsupported-coordinate-system","unsupported-layer-transparency"].includes(e.name)}constructor(e){super(e),this.unitsMessages=null,this.messages=null,this.loadingMessages=!0,this._elevationContext=M.fromElevationInfo(new F({mode:"absolute-height"})),this._extrusionHeight=o.targetElevationRange,this._projectionLines=[]}initialize(){const{view:e}=this,i={view:e,isDecoration:!0},s=o,l={...i,width:s.geometryOutlineWidth};this._elevationAlignedGeometry=new x({...l,isDraped:!0,color:s.geometryOutlineColor.toUnitRGBA()}),this._targetGeometry=new x(l);const r={...i,attached:!0,width:s.projectionLineWidth,renderOccluded:4,polygonOffset:!0},n={...r,stipplePattern:N(s.projectionLineStippleSize)},a=s.cutProjectionLineColor.toUnitRGBA(),c=s.fillProjectionLineColor.toUnitRGBA();this._cutProjectionLines=new O({...r,color:a}),this._occludedCutProjectionLines=new O({...n,color:a}),this._fillProjectionLines=new O({...r,color:c}),this._occludedFillProjectionLines=new O({...n,color:c});const d={...i,attached:!0};this._cutVolumeLabel=new A(d),this._fillVolumeLabel=new A(d),this._cutFillRenderNode=new E({view:e,cutColor:s.cutColor,fillColor:s.fillColor,borderColor:s.geometryOutlineColor}),this.addHandles([u(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry}),({elevationAlignedGeometry:e,targetGeometry:t})=>{this._elevationAlignedGeometry.geometry=e,this._targetGeometry.geometry=t},m),u(()=>({interactive:this.analysisViewData.interactive,measureType:this.analysis.measureType,visible:this.visible}),({visible:e,interactive:t,measureType:i})=>{this._elevationAlignedGeometry.visible=e&&!t,this._targetGeometry.visible=e&&"cut-fill"===i,this._cutFillRenderNode.measureType=i},m),u(()=>({elevationAlignedGeometry:this.analysisViewData.elevationAlignedGeometry,targetGeometry:this.analysisViewData.targetGeometry,visible:this.visible}),({elevationAlignedGeometry:e,targetGeometry:t,visible:i})=>this._updateProjectionLines(e,t,i),m),u(()=>({interactive:this.analysisViewData.interactive,accentColor:this.view.effectiveTheme.accentColor,hasResult:!!this.analysisViewData.result}),({interactive:e,accentColor:t,hasResult:i})=>{this._updateColors(e,t,i)},m),u(()=>this.analysisViewData.targetGeometry,()=>this._updateCutFillGeometry(),m),u(()=>this.visible&&!this.hasUnsupportedError,e=>this._updateCutFillVisibility(e),m),u(()=>{const{messages:e,unitsMessages:t,visible:i,analysisViewData:s}=this;return{labelAnchors:s.labelAnchors,effectiveDisplayUnits:s.effectiveDisplayUnits,messages:e,unitsMessages:t,result:s.result,visible:i&&!!s.result}},e=>this._updateLabels(e)),u(()=>this.view.state.camera,e=>this._updateProjectionLineOcclusion(e),m),t(()=>this._updateMessageBundle())]),this._updateMessageBundle()}destroy(){this._elevationAlignedGeometry=a(this._elevationAlignedGeometry),this._targetGeometry=a(this._targetGeometry),this._cutProjectionLines=a(this._cutProjectionLines),this._occludedCutProjectionLines=a(this._occludedCutProjectionLines),this._fillProjectionLines=a(this._fillProjectionLines),this._occludedFillProjectionLines=a(this._occludedFillProjectionLines),this._cutVolumeLabel=a(this._cutVolumeLabel),this._fillVolumeLabel=a(this._fillVolumeLabel),this._cutFillRenderNode.destroy()}_updateProjectionLines(e,t,i){if(this._cutProjectionLines.visible=i,this._occludedCutProjectionLines.visible=i,this._fillProjectionLines.visible=i,this._occludedFillProjectionLines.visible=i,!e||!t)return;const{renderCoordsHelper:s}=this.view,o=[],l=e.spatialReference,n=e.rings[0],a=n.length>1&&r(n[0],n[n.length-1]),c=n.length-(a?1:0);for(let r=0;r<c;++r){const e=n[r],i=_(b(),e[0],e[1],e[2]);s.toRenderCoords(i,l,i);const a=t.rings[0][r],c=_(b(),a[0],a[1],a[2]);s.toRenderCoords(c,l,c);const u=new D(i,c);o.push(u)}e.isClockwise(n)||o.reverse();const u=[],m=[],d=[],h=[],p=[],y=this.view.state.camera;for(let r=0;r<o.length;++r){const i=o[r],s=o[0===r?o.length-1:r-1],l=o[r===o.length-1?0:r+1],n=e.rings[0][r],a=t.rings[0][r],c=n[2]>a[2],g=new k(i,s,l,c);u.push(g),g.updateOccluded(y);const _=g.isOccluded;c?(_?d:m).push(i):(_?p:h).push(i)}this._projectionLines=u,this._cutProjectionLines.setGeometryFromSegments(m),this._occludedCutProjectionLines.setGeometryFromSegments(d),this._fillProjectionLines.setGeometryFromSegments(h),this._occludedFillProjectionLines.setGeometryFromSegments(p)}_updateProjectionLineOcclusion(e){const t=[],i=[],s=[],o=[];let l=!1,r=!1;for(const n of this._projectionLines){n.updateOccluded(e)&&(l||=n.isCut,r||=!n.isCut);const a=n.isOccluded;(n.isCut?a?i:t:a?o:s).push(n.segment)}r&&(this._fillProjectionLines.setGeometryFromSegments(s),this._occludedFillProjectionLines.setGeometryFromSegments(o)),l&&(this._cutProjectionLines.setGeometryFromSegments(t),this._occludedCutProjectionLines.setGeometryFromSegments(i))}_updateColors(e,t,i){const{geometryOutlineColor:s,cutColor:l,fillColor:r,cutColorMuted:n,fillColorMuted:a,cutProjectionLineColor:c,fillProjectionLineColor:u}=o;if(this._cutFillRenderNode.cutColor=i?l:n,this._cutFillRenderNode.fillColor=i?r:a,e){const e=t.toUnitRGBA();this._targetGeometry.color=e,this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e,this._fillProjectionLines.color=e,this._occludedFillProjectionLines.color=e,this._cutFillRenderNode.borderColor=t}else{this._targetGeometry.color=s.toUnitRGBA();const e=(i?c:n).toUnitRGBA();this._cutProjectionLines.color=e,this._occludedCutProjectionLines.color=e;const t=(i?u:a).toUnitRGBA();this._fillProjectionLines.color=t,this._occludedFillProjectionLines.color=t,this._cutFillRenderNode.borderColor=s}}_updateLabels(e){const{labelDistance:t}=o,{effectiveDisplayUnits:s,labelAnchors:l,messages:r,unitsMessages:n,result:a,visible:c}=e;if(this._cutVolumeLabel.visible=c,this._fillVolumeLabel.visible=c,this._cutVolumeLabel.geometry=l.cut?{type:"point",point:l.cut,callout:{distance:t,offset:0}}:null,this._fillVolumeLabel.geometry=l.fill?{type:"point",point:l.fill,callout:{distance:-t,offset:0}}:null,null==a||null==r||null==n)return this._cutVolumeLabel.text="-",void(this._fillVolumeLabel.text="-");const u=s.volume,m=i(r.labels.cut,{volume:H(n,a.cutVolume,u)}),d=i(r.labels.fill,{volume:H(n,a.fillVolume,u)});this._cutVolumeLabel.text=m,this._fillVolumeLabel.text=d}_updateCutFillVisibility(e){e?this._cutFillRenderNode.enable():this._cutFillRenderNode.disable()}_updateCutFillGeometry(){const{renderCoordsHelper:e}=this.view,{targetGeometry:t}=this.analysisViewData;if(!t?.extent)return;const{center:i}=t.extent,s=C(i.x,i.y,0),o=b();e.toRenderCoords(s,t.spatialReference,o);const l=this._getExtrudedVolume(t,this._extrusionHeight,s,o),r=this._getExtrudedVolume(t,-this._extrusionHeight,s,o);this._cutFillRenderNode.updateGeometries(l,r,o)}_getExtrudedVolume(e,t,i,s){const{renderCoordsHelper:o,spatialReference:l,elevationProvider:r}=this.view,n=b(),a=1===o.viewingMode;o.worldUpAtPosition(s,n);const c=U(e,r,o,this._elevationContext),{polygons:u,mapPositions:m,position:d}=c,h=u[0],p=h.count,_=y(h.mapPositions,h.holeIndices,3),f=_.length,v=6*p,j=P(v+f),L=P(f),C=G(3*v),V=G(3*v);S(d,m,_,h,C,null,V,null,j,L,t,n,a);const F=g(),A=g();if(w(l,i,F,o.spatialReference),A[12]=-F[12],A[13]=-F[13],A[14]=-F[14],R(C,C,A),"stockpile"===this.analysis.measureType)for(let y=0;y<V.length;y+=3)V[y]=n[0],V[y+1]=n[1],V[y+2]=n[2];return new B(C,L,j,V)}async _updateMessageBundle(){this.loadingMessages=!0;try{this.unitsMessages=await s("esri/core/t9n/Units"),this.messages=await s("esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis")}finally{this.loadingMessages=!1}}};function H(e,t,i){if(!t||!e)return null;const s=d(t.value,t.unit,i),l=o.labelPrecisions[s];return c(e,t,s,l)}e([h({constructOnly:!0})],T.prototype,"view",void 0),e([h({constructOnly:!0})],T.prototype,"analysis",void 0),e([h({constructOnly:!0})],T.prototype,"analysisViewData",void 0),e([h()],T.prototype,"unitsMessages",void 0),e([h()],T.prototype,"messages",void 0),e([h()],T.prototype,"loadingMessages",void 0),e([h({readOnly:!0})],T.prototype,"visible",null),e([h()],T.prototype,"updating",null),e([h()],T.prototype,"hasUnsupportedError",null),T=e([p("esri.views.3d.analysis.VolumeMeasurement.VolumeMeasurementCutFillVisualization")],T);class k{constructor(e,t,i,s){this.segment=e,this.previous=t,this.next=i,this.isCut=s,this._isOccluded=!1,this._n1=b(),this._n2=b();const o=f(I,v(I,e.endRenderSpace,e.startRenderSpace));f(this._n1,j(this._n1,o,f(z,v(z,t.startRenderSpace,e.startRenderSpace)))),f(this._n2,j(this._n2,o,f(z,v(z,e.startRenderSpace,i.startRenderSpace)))),this._isConvex=n.normalize(V(this._n1,this._n2,o))<0}get isOccluded(){return this._isOccluded}updateOccluded(e){v(I,this.segment.startRenderSpace,e.eye);const t=L(this._n1,I)<0,i=L(this._n2,I)<0,s=this._isOccluded;return this._isOccluded=this._isConvex?t&&i:t||i,this._isOccluded!==s}}const I=b(),z=b();export{T as VolumeMeasurementCutFillVisualization};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{
|
|
5
|
+
import{__decorate as e}from"tslib";import{clamp as t,lerp as r}from"../../../core/mathUtils.js";import{disposeMaybe as s}from"../../../core/maybe.js";import{watch as i,syncAndInitial as a}from"../../../core/reactiveUtils.js";import{subclass as o}from"../../../core/accessorSupport/decorators.js";import{set as n}from"../../../core/libs/gl-matrix-2/math/vec2.js";import{h,b as m,F as c}from"../../../chunks/vec32.js";import{c as p}from"../../../chunks/vec42.js";import{ZEROS as d}from"../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{earth as u}from"../../../geometry/support/Ellipsoid.js";import{InternalRenderCategory as f}from"../webgl.js";import{innerAtmosphereDepth as l,computeInnerAltitudeFade as g}from"./atmosphereUtils.js";import{ChapmanAtmospherePassParameters as b,ChapmanAtmosphereTechnique as _}from"./ChapmanAtmosphereTechnique.js";import{ChapmanAtmosphereTechniqueConfiguration as P}from"./ChapmanAtmosphereTechniqueConfiguration.js";import{OpaqueEnvironment as w}from"../webgl-engine/effects/OpaqueEnvironment.js";import{createQuadVAO as j}from"../webgl-engine/lib/glUtil3D.js";import{applyTextureResizeModulo as v}from"../webgl-engine/lib/textureUtils.js";import{A as q}from"../../../chunks/AtmosphereCompositing.glsl.js";import{AtmosphereCompositingTechnique as A}from"../webgl-engine/shaders/AtmosphereCompositingTechnique.js";import{DepthStencilAttachment as T,PrimitiveType as x}from"../../webgl/enums.js";import C from"../../../webscene/background/ColorBackground.js";let R=class extends w{constructor(){super(...arguments),this.requireGeometryDepth=!0,this._compositingPassParameters=new q,this._vao=null,this._passParameters=new b,this._configuration=new P}initialize(){this.techniques.precompile(_,this._configuration),this.techniques.precompile(A),this._configuration.reduced=!0,this.techniques.precompile(_,this._configuration),this._configuration.reduced=!1,this.addHandles([i(()=>this.view.environment.background,e=>{const t=e instanceof C?e.color.toUnitRGBA():d;h(this._passParameters.backgroundColor,t[0]*t[3],t[1]*t[3],t[2]*t[3])},a),i(()=>this.view.stage?.renderer?.highResolutionAtmosphere,e=>this._configuration.reduced=!e,a),i(()=>this.view.environment.atmosphereEnabled,e=>e?this._enable():this._disable(),a)])}destroy(){this._vao=s(this._vao)}render(e){const t=e.find(({name:e})=>e===f.OPAQUE_ENVIRONMENT);if(!this.bindParameters.mainDepth)return t;const s=this.renderingContext;this._vao??=j(s,1);const i=t.getAttachment(T);this._update();const a=this.techniques.get(_,this._configuration);if(!a.compiled)return this.requestRender(1),t;if(!this._configuration.reduced)return t.detachDepth(),s.bindFramebuffer(t.fbo),s.bindTechnique(a,this.bindParameters,this._passParameters),s.bindVAO(this._vao),s.drawArrays(x.TRIANGLE_STRIP,0,4),t.attachDepth(i),t;const o=this.techniques.get(A);if(!o.compiled)return this.requestRender(1),t;const n=s.getViewport(),h=this.bindParameters.camera,c=m(h.eye)-u.radius;let p;const d=u.atmosphereHeight;if(c<d){const e=Math.min(1,Math.max(0,c/d));p=r(.2,.3,e)}else{const e=Math.min(1,Math.max(0,(c-d)/(15*d)));p=r(.3,.6,e)}const l=this.renderingContext.parameters.maxTextureSize,g=v(Math.round(p*h.fullViewport[2]),l),b=v(Math.round(p*h.fullViewport[3]),l);s.setViewport(0,0,g,b);const P=this.fboCache.acquire(g,b,"chapman",5);return s.bindFramebuffer(P.fbo),s.clearFramebuffer([0,0,0,1],!0,!0),s.bindTechnique(a,this.bindParameters,this._passParameters),s.bindVAO(this._vao),s.drawArrays(x.TRIANGLE_STRIP,0,4),s.setViewport(n.x,n.y,n.width,n.height),this._compositingPassParameters.color=P.getTexture(),t.detachDepth(),s.bindFramebuffer(t.fbo),s.bindTechnique(o,this.bindParameters,this._compositingPassParameters),s.screen.draw(),t.attachDepth(i),P.release(),t}_update(){const e=this.bindParameters.camera,r=c(e.eye),s=Math.sqrt(r),i=r-this._passParameters.radii[1]**2,a=t((s-this._passParameters.radii[0])/u.atmosphereHeight,0,1);p(this._passParameters.heightParameters,s,r,i,a);const o=this.view.basemapTerrain?.getLowerBoundRadius()??0;n(this._passParameters.radii,o,o+u.atmosphereHeight),this._passParameters.innerFadeDistance=2*Math.sqrt((2*o-l)*l),this._passParameters.altitudeFade=g(s-o)}};R=e([o("esri.views.3d.environment.ChapmanAtmosphere")],R);export{R as ChapmanAtmosphere};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{subclass as r}from"../../../core/accessorSupport/decorators.js";import{create as
|
|
5
|
+
import{__decorate as e}from"tslib";import{subclass as r}from"../../../core/accessorSupport/decorators.js";import{create as o}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{ChapmanApproximationParameters as s}from"./ChapmanApproximation.glsl.js";import{C as t}from"../../../chunks/ChapmanAtmosphere.glsl.js";import{ReloadableShader as i}from"../webgl-engine/core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as n}from"../webgl-engine/core/shaderTechnique/ShaderTechnique.js";import{Pos2TexF16 as a}from"../webgl-engine/lib/DefaultVertexBufferLayouts.js";import{makePipelineState as m,defaultColorWrite as c,copySource as l,simpleBlendingParams as p}from"../../webgl/renderState.js";class h extends s{constructor(){super(...arguments),this.innerFadeDistance=0,this.altitudeFade=0,this.backgroundColor=o()}}let d=class extends n{constructor(e,r){super(e,r,a),this.shader=new i(t,()=>import("./ChapmanAtmosphere.glsl.js"))}initializePipeline(e){return m({blending:e.reduced?l:p(770,771),depthTest:{func:e.reduced?519:515},colorWrite:c})}};d=e([r("esri.views.3d.environment.ChapmanAtmosphereTechnique")],d);export{h as ChapmanAtmospherePassParameters,d as ChapmanAtmosphereTechnique};
|
|
@@ -39,12 +39,11 @@ import{betaRayleigh as e,betaCombined as t,betaMie as a}from"./atmosphereUtils.j
|
|
|
39
39
|
|
|
40
40
|
float mu = dot(rayDir, lightDir);
|
|
41
41
|
float mumu = 1.0 + mu * mu;
|
|
42
|
-
|
|
43
42
|
float phaseRayleigh = 0.0596831 * mumu;
|
|
44
|
-
${p
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
43
|
+
${r(p,"return 3.0 * scattering * stepSize * phaseRayleigh * betaRayleigh;",s`
|
|
44
|
+
const float g = 0.8;
|
|
45
|
+
const float gg = g * g;
|
|
46
|
+
float phaseMie = 0.1193662 * ((1.0 - gg) * mumu) / (pow(1.0 + gg - 2.0 * mu * g, 1.5) * (2.0 + gg));
|
|
47
|
+
phaseMie = clamp(phaseMie, 0.0, 128.0);
|
|
48
|
+
return 3.0 * scattering * stepSize * (phaseRayleigh * betaRayleigh + 0.025 * phaseMie * betaMie);`)}
|
|
50
49
|
}`)}export{o as ChapmanRaymarching};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{subclass as r}from"../../../core/accessorSupport/decorators.js";import{P as
|
|
5
|
+
import{__decorate as e}from"tslib";import{subclass as r}from"../../../core/accessorSupport/decorators.js";import{P as t}from"../../../chunks/Precipitation.glsl.js";import{ReloadableShader as i}from"../webgl-engine/core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../webgl-engine/core/shaderTechnique/ShaderTechnique.js";import{DataType as o}from"../../webgl/enums.js";import{NoParameters as n}from"../../webgl/NoParameters.js";import{makePipelineState as c,defaultColorWrite as m,premultipliedAlpha as a}from"../../webgl/renderState.js";import{VertexElementDescriptor as p}from"../../webgl/VertexElementDescriptor.js";class l extends n{constructor(){super(...arguments),this.time=0,this.radius=1,this.width=500,this.opacity=0}}let h=class extends s{constructor(e,r){super(e,r,[new p("position",2,o.FLOAT,0,16),new p("instanceFeatureAttribute",2,o.FLOAT,8,16)]),this.shader=new i(t,()=>import("./Precipitation.glsl.js"))}initializePipeline(){return c({blending:a,depthTest:{func:515},colorWrite:m})}};h=e([r("esri.views.3d.environment.PrecipitationTechnique")],h);export{l as PrecipitationPassParameters,h as PrecipitationTechnique};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{subclass as r}from"../../../core/accessorSupport/decorators.js";import{a as o}from"../../../chunks/SimpleAtmosphere.glsl.js";import{
|
|
5
|
+
import{__decorate as e}from"tslib";import{subclass as r}from"../../../core/accessorSupport/decorators.js";import{a as o}from"../../../chunks/SimpleAtmosphere.glsl.js";import{glLayout as t}from"../support/buffer/glUtil.js";import{newLayout as i}from"../support/buffer/InterleavedLayout.js";import{ReloadableShader as s}from"../webgl-engine/core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as n}from"../webgl-engine/core/shaderTechnique/ShaderTechnique.js";import{makePipelineState as p,defaultColorWrite as m,backFaceCullingParams as l,unpremultipliedAlphaToPremultipliedAlpha as c}from"../../webgl/renderState.js";let a=class extends n{constructor(e,r){super(e,r,t(u)),this.shader=new s(o,()=>import("./SimpleAtmosphere.glsl.js"))}initializePipeline(e){const r=1===e.geometry;return p({blending:c,culling:r?l:void 0,depthTest:{func:515},colorWrite:m})}};a=e([r("esri.views.3d.environment.SimpleAtmosphereTechnique")],a);const u=i().vec3f("position").freeze();export{a as SimpleAtmosphereTechnique,u as layout};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import{multiplyOpacity as e}from"../../../core/colorUtils.js";import"../../../core/has.js";import{destroyHandle as i}from"../../../core/handleUtils.js";import{l as n}from"../../../chunks/vec32.js";import{create as t}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{projectVectorToVector as o}from"../../../geometry/projection/projectVectorToVector.js";import{onTheGroundElevationInfo as r,absoluteHeightElevationInfo as l}from"../../../support/elevationInfoUtils.js";import{vectorToRender as a}from"./support/viewUtils.js";import{ExtendedLineVisualElement as s}from"./visualElements/ExtendedLineVisualElement.js";import{ParallelLineVisualElement as c}from"./visualElements/ParallelLineVisualElement.js";import{PointVisualElement as d}from"./visualElements/PointVisualElement.js";import{RightAngleQuadVisualElement as p}from"./visualElements/RightAngleQuadVisualElement.js";import{toDehydratedPoint as u,isTarget as m,withSelfSnappingZ as f}from"../../interactive/sketch/normalizedPoint.js";import{defaults as g}from"../../interactive/snapping/Settings.js";import{SnappingVisualizer as v}from"../../interactive/snapping/SnappingVisualizer.js";import{LineSnappingHint as h}from"../../interactive/snapping/hints/LineSnappingHint.js";class C extends v{sortUniqueHints(e){return e.sort((e,i)=>(i instanceof h?i.length:0)-(e instanceof h?e.length:0))}visualizeIntersectionPoint(e,n){const{spatialReference:t,view:o}=n,a=w(n);return i(new d({view:o,primitive:"circle",geometry:u(e.intersectionPoint,t),elevationInfo:e.isDraped?r:l,size:20,outlineSize:2,color:a.intersectionPointColor,outlineColor:a.intersectionPointOutlineColor,pixelSnappingEnabled:!1,isDecoration:!0,attached:!0}))}visualizePoint(e,n){const{view:t,spatialReference:o}=n,r=w(n),l=E(e.point,e.domain,n);return i(new d({view:t,primitive:"circle",geometry:u(l,o),elevationInfo:j(e),size:20,outlineSize:2,color:r.pointColor,outlineColor:r.pointOutlineColor,pixelSnappingEnabled:!1,isDecoration:!0,attached:!0}))}visualizeLine(e,n){const{view:t,spatialReference:o}=n,r=w(n),l=E(e.lineStart,e.domain,n),a=E(e.lineEnd,e.domain,n);return i(x(e.type,l,a,o,j(e),t,r,e.isDraped,e.fadeLeft,e.fadeRight))}visualizeParallelSign(e,t){const{view:o,spatialReference:r}=t,l=w(t),{isDraped:a}=e,s=j(e),d=E(e.lineStart,e.domain,t),p=E(e.lineEnd,e.domain,t),u=D(d,r,s,o,a),m=D(p,r,s,o,a),f=n(m,u,m,.5),v=new c({view:o,attached:!1,offset:g.parallelLineHintOffset,length:g.parallelLineHintLength,width:g.parallelLineHintWidth,color:l.parallelSignColor,location:f,renderOccluded:a?4:16,isDraped:a,renderGroup:3,isDecoration:!0});return v.setDirectionFromPoints(u,f),v.attached=!0,i(v)}visualizeRightAngleQuad(e,n){const{view:t,spatialReference:o}=n,r=w(n),l=j(e),{isDraped:a}=e,s=E(e.previousVertex,e.domain,n),c=E(e.centerVertex,e.domain,n),d=E(e.nextVertex,e.domain,n),u=D(s,o,l,t,a),m=D(c,o,l,t,a),f=D(d,o,l,t,a);return i(new p({view:t,attached:!0,color:a?r.rightAngleColorDraped:r.rightAngleColor,renderOccluded:a?4:2,outlineRenderOccluded:a?4:16,outlineColor:r.rightAngleOutlineColor,outlineSize:g.rightAngleHintOutlineSize,size:g.rightAngleHintSize,isDraped:a,geometry:{previous:u,center:m,next:f},renderGroup:3,isDecoration:!0}))}}function w(i){const{effectiveTheme:n}=i.view,t=n.accentColor.toUnitRGBA(),o=[0,0,0,0];return{intersectionPointColor:o,intersectionPointOutlineColor:t,pointColor:o,pointOutlineColor:t,lineColor:t,lineOutlineColor:void 0,parallelSignColor:t,rightAngleColor:t,rightAngleColorDraped:e(n.accentColor,.5).toUnitRGBA(),rightAngleOutlineColor:t}}function E(e,i,{selfSnappingZ:n,view:t,spatialReference:o}){return 2&i&&m(e)&&null!=n?f(e,n,t,o):e}function j(e){return e.isDraped?r:l}function x(e,i,n,t,o,r,l,a=!1,c=!0,d=!0){const p=D(i,t,o,r,a),u=D(n,t,o,r,a),m=new s({view:r,extensionType:3,start:p,end:u,isDraped:a,color:l.lineColor,renderOccluded:a?4:16,renderGroup:3,isDecoration:!0});switch(e){case 0:m.width=g.lineHintWidthTarget,m.fadedExtensions={start:0,end:g.lineHintFadedExtensions};break;case 2:m.width=g.lineHintWidthReference,m.fadedExtensions={start:0,end:0};break;case 1:m.width=g.lineHintWidthReference,m.fadedExtensions={start:c?g.lineHintFadedExtensions:0,end:d?g.lineHintFadedExtensions:0}}return m.attached=!0,m}function D(e,i,n,r,l){const s=t();if(l){const n=r.overlayManager.spatialReference;o(e,i,s,n)}else a(e,i,n,r,s);return s}export{C as SnappingVisualizer3D};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{
|
|
5
|
+
import{__decorate as e}from"tslib";import{handlesGroup as t,makeHandle as i}from"../../../../../core/handleUtils.js";import{destroyMaybe as s}from"../../../../../core/maybe.js";import{watch as r,syncAndInitial as n,initial as o,when as a}from"../../../../../core/reactiveUtils.js";import{property as l,subclass as c}from"../../../../../core/accessorSupport/decorators.js";import{h}from"../../../../../chunks/vec32.js";import{create as m}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{getEffectiveElevationInfo as p,getEffectiveElevationMode as u}from"../../../../../support/elevationInfoUtils.js";import d from"../../../../../symbols/support/ElevationInfo.js";import{SegmentLabels3D as v}from"../../SegmentLabels3D.js";import{SnappingVisualizer3D as f}from"../../SnappingVisualizer3D.js";import{meshTransformFastUpdateHandles as g}from"../meshFastUpdateUtils.js";import{Settings as E}from"../settings.js";import{ExtendedLineVisualElement as y}from"../../visualElements/ExtendedLineVisualElement.js";import{OutlineVisualElement as V}from"../../visualElements/OutlineVisualElement.js";import{VerticesVisualElement as w}from"../../visualElements/VerticesVisualElement.js";import{evaluateElevationAlignmentAtPoint as _}from"../../../layers/graphics/elevationAlignmentUtils.js";import{ElevationContext as I}from"../../../layers/graphics/ElevationContext.js";import{GraphicState as j}from"../../../layers/graphics/GraphicState.js";import{DrawGraphicTool as G,geometryTypeToDrawOperationGeometryType as L}from"../../../../draw/DrawGraphicTool.js";import{DrawOperation as S}from"../../../../draw/DrawOperation.js";import{ElevationDrawSurface as x,SceneDrawSurface as D}from"../../../../draw/drawSurfaces.js";import{updateMeshTransformFromTooltipInfo as C}from"../../../../interactive/tooltip/tooltipCommonUtils.js";import{autorun as O}from"../../../../../core/accessorSupport/trackingUtils.js";let T=class extends G{constructor(e){super(e),this._activeVertexVisualElement=null,this._createGraphicState=null,this._outlineVisualElement=null,this._verticesVisualElement=null,this._verticalLineVisualElement=null,this._settings=new E({getTheme:()=>this.view.effectiveTheme}),this.geometryType=null,this.type="draw-3d"}initialize(){const{mode:e,offset:t,unit:i,featureExpressionInfo:s}=this.elevationInfo;this.internalGraphicsLayer.elevationInfo=new d({mode:e,offset:t,unit:i,featureExpressionInfo:s})}normalizeCtorArgs(e){if(!e.elevationInfo){const t=e.hasZ??!0;return{...e,elevationInfo:p(t)}}return e}initializeGraphic(e){const{view:i}=this,s=this._createGraphicState=new j({graphic:e});return t([i.maskOccludee(e),i.trackGraphicState(s),r(()=>({element:this._outlineVisualElement,isDraped:s.isDraped}),({element:e,isDraped:t})=>{e&&(e.isDraped=t)},n),O(()=>{C(this.tooltipInfos.mesh,this.geometryToPlace)}),this._setupLoadingIndicator(s),...g(s)])}makeDrawOperation(){const{geometryType:e}=this,t="circle"!==e&&"rectangle"!==e;return new S({view:this.view,manipulators:this.manipulators,geometryType:L(e),drawingMode:this.mode,hasZ:this.hasZ,defaultZ:this.defaultZ,snapToSceneEnabled:this.snapToScene,drawSurface:new D(this.view,this.elevationInfo,[this.internalGraphicsLayer]),elevationDrawSurface:new x(this.elevationInfo,this.defaultZ,this.view,this.internalGraphicsLayer),hasM:!1,elevationInfo:this.elevationInfo,snappingManager:this.snappingManager,snappingVisualizer:new f,segmentLabels:t?new v:null,labelOptions:this.sketchOptions.labels,isDraped:this._createGraphicState?this._createGraphicState.isDraped:"on-the-ground"===u(this.hasZ,this.elevationInfo),cursor:this.cursor,constraintsEnabled:!0,automaticLengthMeasurementUtils:this.automaticLengthMeasurementUtils})}onActiveVertexChanged(e){const{view:n}=this;if(this._activeVertexVisualElement)return this._activeVertexVisualElement.vertices=[e],this._activeVertexVisualElement.recreate(),this._updateVerticalLineVisualElement(e),i();const a=this._settings,l=a.manipulators.vertex,c=new w({view:n,spatialReference:n.spatialReference,vertices:[e],elevationInfo:this.internalGraphicsLayer.elevationInfo,size:l.size,outlineSize:l.outlineSize,renderOccluded:l.renderOccluded,attached:!1,isDecoration:!0});this._activeVertexVisualElement=c;const h=a.visualElements.zVerticalLine,m=new y({view:n,extensionType:h.extensionType,innerWidth:1,attached:!1,writeDepthEnabled:!1,renderOccluded:4,isDecoration:!0});this._verticalLineVisualElement=m;const p=t([r(()=>a.visualElements.zVerticalLine,e=>e.apply(m),o),r(()=>({selectedColor:a.colors.selected.toUnitRGBA(),outlineColor:a.manipulators.vertex.outlineColor.toUnitRGBA()}),({selectedColor:e,outlineColor:t})=>{c.color=e,c.outlineColor=t},o),i(()=>{this._activeVertexVisualElement=s(this._activeVertexVisualElement),this._verticalLineVisualElement=s(this._verticalLineVisualElement)})]);return c.attached=!0,this._updateVerticalLineVisualElement(e),p}_updateVerticalLineVisualElement(e){const t=this._verticalLineVisualElement;if(!t)return;const{renderCoordsHelper:i,elevationProvider:s}=this.view;h(b,e[0],e[1],e[2]),z.setFromElevationInfo(this.elevationInfo),b[2]=_(b,s,z,i);i.toRenderCoords(b,this.view.spatialReference,b)?(t.setStartEndFromWorldDownAtLocation(b),t.attached=!0):t.attached=!1}onOutlineChanged(e){if(this._outlineVisualElement)return this._outlineVisualElement.geometry=e,i();const n=this.internalGraphicsLayer.elevationInfo,{view:a}=this,l=this._settings,c=new V({view:a,geometry:e,elevationInfo:n,isDraped:this._createGraphicState?this._createGraphicState.isDraped:"on-the-ground"===u(this.hasZ,n),attached:!1,isDecoration:!0});this._outlineVisualElement=c;const h=t([r(()=>l.visualElements.lineObjects.outline,e=>e.apply(c),o),r(()=>l.visualElements.lineObjects.shadowStyle,e=>e.apply(c),o),i(()=>{this._outlineVisualElement=s(this._outlineVisualElement)})]);return c.attached=!0,c.laserlineEnabled=!0,h}onRegularVerticesChanged(e){if(this._verticesVisualElement)return this._verticesVisualElement.vertices=e,i();const{view:n}=this,a=this._settings,l=a.manipulators.vertex,c=new w({view:n,spatialReference:n.spatialReference,vertices:e,elevationInfo:this.internalGraphicsLayer.elevationInfo,size:l.size,outlineSize:l.outlineSize,renderOccluded:l.renderOccluded,attached:!1,isDecoration:!0}),h=t([r(()=>({color:a.manipulators.vertex.color.toUnitRGBA(),outlineColor:a.manipulators.vertex.outlineColor.toUnitRGBA()}),({color:e,outlineColor:t})=>{c.color=e,c.outlineColor=t},o),i(()=>{this._verticesVisualElement=s(this._verticesVisualElement)})]);return c.attached=!0,this._verticesVisualElement=c,h}updateGraphicGeometry(e){if("mesh"===this.geometryType&&"point"===e?.type){const t=this.geometryToPlace;t?.centerAt(e),C(this.tooltipInfos.mesh,t);const i=this._graphic;return void(t&&i.geometry===t||(i.geometry=t))}super.updateGraphicGeometry(e)}_setupLoadingIndicator(e){const{drawOperation:s}=this;if(!this.geometryToPlace||e.displaying)return s.loading=!1,null;s.loading=!0;const r=i(()=>{s.loading=!1});let o;const l=()=>{o&&cancelAnimationFrame(o)};return t([a(()=>e.displaying,()=>{l(),o=requestAnimationFrame(()=>r.remove())},{...n,once:!0}),i(l),r])}};e([l({constructOnly:!0})],T.prototype,"elevationInfo",void 0),e([l({constructOnly:!0})],T.prototype,"geometryType",void 0),e([l()],T.prototype,"type",void 0),e([l({constructOnly:!0})],T.prototype,"view",void 0),T=e([c("esri.views.3d.interactive.editingTools.draw.DrawGraphicTool3D")],T);const z=new I,b=m();export{T as DrawGraphicTool3D};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import{EventEmitter as t}from"../../../../../core/Evented.js";import a from"../../../../../core/Handles.js";import{makeHandle as r,handlesGroup as e}from"../../../../../core/handleUtils.js";import"../../../../../core/has.js";import{destroyMaybe as i}from"../../../../../core/maybe.js";import{watch as o,initial as s}from"../../../../../core/reactiveUtils.js";import{fromTranslation as n,fromZRotation as l,multiply as p,fromRotation as u,fromScaling as h}from"../../../../../core/libs/gl-matrix-2/math/mat4.js";import{create as c}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{h as m}from"../../../../../chunks/vec32.js";import{fromValues as d}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{sv3d as f,sm4d as _}from"../../../../../geometry/support/vectorStacks.js";import{Manipulator3D as g}from"../../Manipulator3D.js";import{RenderObject as M}from"../../RenderObject.js";import{screenToMapXYAtLocation as w}from"../dragEventPipeline3D.js";import{discRadius as v,discTranslateArrowOffset as j,discTranslateArrowSize as b,discHeight as y}from"./config.js";import{Manipulation as A}from"./Manipulation.js";import{createManipulatedMoveDragPipeline as I}from"./moveUtils.js";import{createExtrudedTriangle as x,transformInPlace as D}from"../../../webgl-engine/lib/GeometryUtil.js";import{ColorMaterial as T}from"../../../webgl-engine/materials/ColorMaterial.js";import{createManipulatorDragEventPipeline as P,dragAtLocation as S,constrainToMapAxis as E,addScreenDelta as O}from"../../../../interactive/dragEventPipeline.js";class U extends A{constructor(r){super(),this._handles=new a,this._arrowManipulatorInfos=new Array,this._angle=0,this._scale=1,this._radius=v,this._updateAfterDrag=!1,this.events=new t,this._tool=r.tool,this._view=r.view,this._opaqueMaterial=this._createMaterial(),this._transparentMaterial=this._createMaterial(.5),null!=r.radius&&(this._radius=r.radius),this._createManipulators(),this.forEachManipulator(t=>this._tool.manipulators.add(t))}set orthogonalAvailable(t){this._arrowManipulatorInfos.length>=3&&(this._arrowManipulatorInfos[1].manipulator.available=t,this._arrowManipulatorInfos[3].manipulator.available=t)}destroy(){this._handles=i(this._handles),this.forEachManipulator(t=>{this._tool.manipulators.remove(t),t.destroy()}),this._tool=null,this._view=null,this._arrowManipulatorInfos.length=0}forEachManipulator(t){for(const{manipulator:a}of this._arrowManipulatorInfos)t(a,1)}createManipulatedObjectDragPipeline(t,a,e){if(!a.operations)return r();const i=a.operations.data.spatialReference,o=a.graphic;return I(a,e,r=>this.createDragPipeline((a,e,i,o,s)=>(({steps:e,cancel:i}=t(a,e,i,o,s)),r(a,e,i)),a.elevationInfo,i,o))}createDragPipeline(t,a,r,i){return e(this._arrowManipulatorInfos.map(({manipulator:e},o)=>P(e,(e,s,n,l,p)=>{const u=s.next(t=>({...t,manipulatorType:1})).next(S(this._view,e.elevationAlignedLocation)).next(w(this._view,e.elevationAlignedLocation,a,r,i)).next(E(e.location,this.angle+(o+1)*Math.PI*.5)).next(O());t(e,u,n,l,p)})))}get angle(){return this._angle}set angle(t){this._angle=t,this.dragging?this._updateAfterDrag=!0:this._updateManipulatorTransform()}get displayScale(){return this._scale}set displayScale(t){this._scale=t,this._updateManipulatorTransform()}get radius(){return this._radius}set radius(t){this._radius!==t&&(this._radius=t,this._updateManipulators())}_updateManipulators(){for(let t=0;t<this._arrowManipulatorInfos.length;t++)this._updateArrowManipulator(this._arrowManipulatorInfos[t],t);this._updateManipulatorTransform()}_updateArrowManipulator({manipulator:t,transform:a},r){const e=this._radius/v,i=b*e,o=i*Math.sqrt(3)/2,s=x(this._opaqueMaterial,o,i/2,i/2,y);D(s,n(_.get(),m(f.get(),0,-o/3,0))),t.renderObjects=[new M(s,2),new M(s.instantiate({material:this._transparentMaterial}),1)],t.radius=o/3*2*1.2;const u=l(_.get(),r*Math.PI/2),h=n(_.get(),m(f.get(),0,j*e,0));p(a,u,h)}_createManipulators(){for(let t=0;t<4;t++){const a=this._createArrowManipulator(t);this._arrowManipulatorInfos.push(a)}this._updateManipulatorTransform()}_updateManipulatorTransform(){const t=this.angle,a=u(_.get(),t,d(0,0,1));if(null==a)return;const r=h(_.get(),m(f.get(),this.displayScale,this.displayScale,this.displayScale)),e=p(_.get(),r,a);for(const i of this._arrowManipulatorInfos){const t=p(_.get(),e,i.transform);i.manipulator.modelTransform=t}}_createArrowManipulator(t){const a=new g({view:this._view,autoScaleRenderObjects:!1,worldOriented:!0,focusMultiplier:1,touchMultiplier:1,collisionType:{type:"disc",direction:d(0,0,1)}}),r={manipulator:a,transform:c()};return this._updateArrowManipulator(r,t),this._handles.add(a.events.on("drag",t=>{this._updateAfterDrag&&"end"===t.action&&!this.dragging&&(this._updateManipulatorTransform(),this._updateAfterDrag=!1)})),r}_createMaterial(t=1){const a=new T({cullFace:2,renderOccluded:2,isDecoration:!0});return this._handles.add(o(()=>this._view.effectiveTheme.accentColor.toUnitRGBA(),r=>{r[3]*=t,a.setParameters({color:r})},s)),a}get test(){}}export{U as MoveXYAxisManipulation};
|