diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs b/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs index 5c4f54df8c..83540a2e33 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs +++ b/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs @@ -34,7 +34,7 @@ public partial class DistanceMeasurement : ContentPage new Uri("https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"); // Reference to the measurement used. - private LocationDistanceMeasurement _distanceMeasurement; + private ExploratoryLocationDistanceMeasurement _distanceMeasurement; public DistanceMeasurement() { @@ -65,7 +65,7 @@ private void Initialize() // Create an initial distance measurement and show it. MapPoint start = new MapPoint(-4.494677, 48.384472, 24.772694, SpatialReferences.Wgs84); MapPoint end = new MapPoint(-4.495646, 48.384377, 58.501115, SpatialReferences.Wgs84); - _distanceMeasurement = new LocationDistanceMeasurement(start, end); + _distanceMeasurement = new ExploratoryLocationDistanceMeasurement(start, end); measureAnalysisOverlay.Analyses.Add(_distanceMeasurement); // Keep the UI updated. diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.md b/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.md index 37796399e0..e67c6a935d 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.md +++ b/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.md @@ -15,20 +15,20 @@ Choose a unit system for the measurement. Tap any location in the scene to start ## How it works 1. Create an `AnalysisOverlay` object and add it to the analysis overlay collection of the `SceneView` object. -2. Specify the start location and end location to create a `LocationDistanceMeasurement` object. Initially, the start and end locations can be the same point. +2. Specify the start location and end location to create an `ExploratoryLocationDistanceMeasurement` object. Initially, the start and end locations can be the same point. 3. Add the location distance measurement analysis to the analysis overlay. 4. The `MeasurementChanged` event will be raised if the distances change. You can get the new values for the `DirectDistance`, `HorizontalDistance`, and `VerticalDistance` from the event arguments. ## Relevant API * AnalysisOverlay -* LocationDistanceMeasurement -* LocationDistanceMeasurement.MeasurementChanged +* ExploratoryLocationDistanceMeasurement +* ExploratoryLocationDistanceMeasurement.MeasurementChanged ## Additional information -The `LocationDistanceMeasurement` analysis only performs planar distance calculations. This may not be appropriate for large distances where the Earth's curvature must be considered. +The `ExploratoryLocationDistanceMeasurement` analysis only performs planar distance calculations. This may not be appropriate for large distances where the Earth's curvature must be considered. ## Tags -3D, analysis, distance, measure \ No newline at end of file +3D, analysis, distance, measure diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.metadata.json b/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.metadata.json index 7a08cdf175..ef7cfa0573 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.metadata.json +++ b/src/MAUI/Maui.Samples/Samples/Analysis/DistanceMeasurement/readme.metadata.json @@ -18,8 +18,8 @@ ], "relevant_apis": [ "AnalysisOverlay", - "LocationDistanceMeasurement", - "LocationDistanceMeasurement.MeasurementChanged" + "ExploratoryLocationDistanceMeasurement", + "ExploratoryLocationDistanceMeasurement.MeasurementChanged" ], "snippets": [ "DistanceMeasurement.xaml.cs", diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs index bd3fe608be..358270475e 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs +++ b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs @@ -43,7 +43,7 @@ public partial class LineOfSightGeoElement : ContentPage private Graphic _taxiGraphic; // Line of Sight Analysis - private GeoElementLineOfSight _geoLine; + private ExploratoryGeoElementLineOfSight _geoLine; // For taxi animation - four points in a loop private readonly MapPoint[] _points = { @@ -109,7 +109,7 @@ private async Task Initialize() // Create GeoElement Line of sight analysis (taxi to building) // Create the analysis - _geoLine = new GeoElementLineOfSight(_observerGraphic, _taxiGraphic) + _geoLine = new ExploratoryGeoElementLineOfSight(_observerGraphic, _taxiGraphic) { // Apply an offset to the target. This helps avoid some false negatives TargetOffsetZ = 2 @@ -202,18 +202,18 @@ private void UpdateUiAndSelection() { switch (_geoLine.TargetVisibility) { - case LineOfSightTargetVisibility.Obstructed: + case ExploratoryLineOfSightTargetVisibility.Obstructed: MyStatusLabel.Text = "Status: Obstructed"; _taxiGraphic.IsSelected = false; break; - case LineOfSightTargetVisibility.Visible: + case ExploratoryLineOfSightTargetVisibility.Visible: MyStatusLabel.Text = "Status: Visible"; _taxiGraphic.IsSelected = true; break; default: - case LineOfSightTargetVisibility.Unknown: + case ExploratoryLineOfSightTargetVisibility.Unknown: MyStatusLabel.Text = "Status: Unknown"; _taxiGraphic.IsSelected = false; break; diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.md b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.md index 6e3909ce64..c18c4347ed 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.md +++ b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.md @@ -8,7 +8,7 @@ Show a line of sight between two moving objects. A line of sight between `GeoElement`s (i.e. observer and target) will not remain constant whilst one or both are on the move. -A `GeoElementLineOfSight` is therefore useful in cases where visibility between two `GeoElement`s requires monitoring over a period of time in a partially obstructed field of view +An `ExploratoryGeoElementLineOfSight` is therefore useful in cases where visibility between two `GeoElement`s requires monitoring over a period of time in a partially obstructed field of view (such as buildings in a city). ## How to use the sample @@ -20,14 +20,14 @@ The taxi will be highlighted when it is visible. You can change the observer hei ## How it works 1. Instantiate an `AnalysisOverlay` and add it to the `SceneView`'s analysis overlays collection. -2. Instantiate a `GeoElementLineOfSight`, passing in observer and target `GeoElement`s (features or graphics). Add the line of sight to the analysis overlay's analyses collection. -3. To get the target visibility when it changes, react to the target visibility changing on the `GeoElementLineOfSight` instance. +2. Instantiate an `ExploratoryGeoElementLineOfSight`, passing in observer and target `GeoElement`s (features or graphics). Add the line of sight to the analysis overlay's analyses collection. +3. To get the target visibility when it changes, react to the target visibility changing on the `ExploratoryGeoElementLineOfSight` instance. ## Relevant API * AnalysisOverlay -* GeoElementLineOfSight -* LineOfSight.TargetVisibility +* ExploratoryGeoElementLineOfSight +* ExploratoryLineOfSight.TargetVisibility ## Offline data @@ -37,4 +37,4 @@ This sample downloads the following items from ArcGIS Online automatically: ## Tags -3D, line of sight, visibility, visibility analysis \ No newline at end of file +3D, line of sight, visibility, visibility analysis diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json index ae7497f414..9cbb68b6f9 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json +++ b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json @@ -20,8 +20,8 @@ ], "relevant_apis": [ "AnalysisOverlay", - "GeoElementLineOfSight", - "LineOfSight.TargetVisibility" + "ExploratoryGeoElementLineOfSight", + "ExploratoryLineOfSight.TargetVisibility" ], "snippets": [ "LineOfSightGeoElement.xaml.cs", diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs index 1deef70703..709b01049f 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs +++ b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs @@ -27,7 +27,7 @@ public partial class LineOfSightLocation : ContentPage private string _elevationSourceUrl = @"https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"; // Location line of sight analysis - private LocationLineOfSight _lineOfSightAnalysis; + private ExploratoryLocationLineOfSight _lineOfSightAnalysis; // Observer location for line of sight private MapPoint _observerLocation; @@ -66,12 +66,12 @@ private void Initialize() MySceneView.SetViewpointCameraAsync(newCamera); // Create a new line of sight analysis with arbitrary points (observer and target will be defined by the user) - _lineOfSightAnalysis = new LocationLineOfSight(new MapPoint(0.0, 0.0, SpatialReferences.Wgs84), new MapPoint(0.0, 0.0, SpatialReferences.Wgs84)); + _lineOfSightAnalysis = new ExploratoryLocationLineOfSight(new MapPoint(0.0, 0.0, SpatialReferences.Wgs84), new MapPoint(0.0, 0.0, SpatialReferences.Wgs84)); // Set the visible and obstructed colors (default would be green/red) // These are static properties that apply to all line of sight analyses in the scene view - LineOfSight.VisibleColor = Colors.Cyan; - LineOfSight.ObstructedColor = Colors.Magenta; + ExploratoryLineOfSight.VisibleColor = Colors.Cyan; + ExploratoryLineOfSight.ObstructedColor = Colors.Magenta; // Create an analysis overlay to contain the analysis and add it to the scene view AnalysisOverlay lineOfSightOverlay = new AnalysisOverlay(); diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.md b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.md index c583df50e5..a6cf463505 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.md +++ b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.md @@ -15,16 +15,16 @@ Tap to place the starting point for the line. Tap again to place the end point. ## How it works 1. Create an `AnalysisOverlay` and add it to the scene view. -2. Create a `LocationLineOfSight` with initial observer and target locations and add it to the analysis overlay. +2. Create an `ExploratoryLocationLineOfSight` with initial observer and target locations and add it to the analysis overlay. 3. Listen for taps on the scene view. 4. Update the target location with `lineOfSight.TargetLocation = scenePoint`. ## Relevant API * AnalysisOverlay -* LocationLineOfSight +* ExploratoryLocationLineOfSight * SceneView ## Tags -3D, line of sight, visibility, visibility analysis \ No newline at end of file +3D, line of sight, visibility, visibility analysis diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.metadata.json b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.metadata.json index 770b4f3736..059963af7f 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.metadata.json +++ b/src/MAUI/Maui.Samples/Samples/Analysis/LineOfSightLocation/readme.metadata.json @@ -18,7 +18,7 @@ ], "relevant_apis": [ "AnalysisOverlay", - "LocationLineOfSight", + "ExploratoryLocationLineOfSight", "SceneView" ], "snippets": [ diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs index 8ce5b17f48..5a87979ce5 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs @@ -28,7 +28,7 @@ public partial class ViewshedCamera : ContentPage private string _elevationSourceUrl = "https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"; // Location viewshed analysis to show visible and obstructed areas from the camera - private LocationViewshed _viewshedForCamera; + private ExploratoryLocationViewshed _viewshedForCamera; public ViewshedCamera() { @@ -58,8 +58,8 @@ private void Initialize() Camera observerCamera = new Camera(new MapPoint(2.82691, 41.985, 124.987, SpatialReferences.Wgs84), 332.131, 82.4732, 0.0); MySceneView.SetViewpointCameraAsync(observerCamera); - // Create a LocationViewshed analysis using the camera as the observer - _viewshedForCamera = new LocationViewshed(observerCamera, 1, 1000); + // Create an ExploratoryLocationViewshed analysis using the camera as the observer + _viewshedForCamera = new ExploratoryLocationViewshed(observerCamera, 1, 1000); // Create an analysis overlay to contain the viewshed analysis results AnalysisOverlay viewshedOverlay = new AnalysisOverlay(); diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.md b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.md index d1c8ea4215..026fa1c5af 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.md +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.md @@ -14,7 +14,7 @@ The sample will start with a viewshed created from the initial camera location, ## How it works -1. Create a `LocationViewshed`, passing in a `Camera` and a min/max distance. +1. Create an `ExploratoryLocationViewshed`, passing in a `Camera` and a min/max distance. 2. Update the viewshed using `viewshed.UpdateFromCamera()`. ## Relevant API @@ -22,8 +22,8 @@ The sample will start with a viewshed created from the initial camera location, * AnalysisOverlay * ArcGISTiledElevationSource * Camera +* ExploratoryLocationViewshed * IntegratedMeshLayer -* LocationViewshed * Scene * SceneView diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.metadata.json b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.metadata.json index ee6ee0bf08..2482f50164 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.metadata.json +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedCamera/readme.metadata.json @@ -21,8 +21,8 @@ "AnalysisOverlay", "ArcGISTiledElevationSource", "Camera", + "ExploratoryLocationViewshed", "IntegratedMeshLayer", - "LocationViewshed", "Scene", "SceneView" ], diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs index 4924b9f524..57e3dcd171 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs @@ -95,7 +95,7 @@ private async Task Initialize() _tankOverlay.Graphics.Add(_tank); // Create a viewshed for the tank. - GeoElementViewshed geoViewshed = new GeoElementViewshed( + ExploratoryGeoElementViewshed geoViewshed = new ExploratoryGeoElementViewshed( geoElement: _tank, horizontalAngle: 90.0, verticalAngle: 40.0, diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.md b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.md index 4ef0a5d4e5..0b0f6f35de 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.md +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.md @@ -17,15 +17,15 @@ Tap to set a destination for the vehicle (a GeoElement). The vehicle will 'drive 1. Create and show the scene, with an elevation source and a buildings layer. 2. Add a model (the `GeoElement`) to represent the observer (in this case, a tank). * Use a `SimpleRenderer` which has a heading expression set in the `GraphicsOverlay`. This way you can relate the viewshed's heading to the `GeoElement` object's heading. -3. Create a `GeoElementViewshed` with configuration for the viewshed analysis. +3. Create an `ExploratoryGeoElementViewshed` with configuration for the viewshed analysis. 4. Add the viewshed to an `AnalysisOverlay` and add the overlay to the scene. 5. Configure the SceneView `CameraController` to orbit the vehicle. ## Relevant API * AnalysisOverlay +* ExploratoryGeoElementViewshed * GeodeticDistanceResult -* GeoElementViewshed * GeometryEngine.DistanceGeodetic * ModelSceneSymbol * OrbitGeoElementCameraController diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.metadata.json b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.metadata.json index f5234bce13..04ead56be7 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.metadata.json +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedGeoElement/readme.metadata.json @@ -23,7 +23,7 @@ ], "relevant_apis": [ "AnalysisOverlay", - "GeoElementViewshed", + "ExploratoryGeoElementViewshed", "GeodeticDistanceResult", "GeometryEngine.DistanceGeodetic", "ModelSceneSymbol", diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs index f785d37077..3499c5178c 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs @@ -33,7 +33,7 @@ public partial class ViewshedLocation : ContentPage private readonly Uri _buildingsUrl = new Uri("https://tiles.arcgis.com/tiles/P3ePLMYs2RVChkJx/arcgis/rest/services/Buildings_Brest/SceneServer/layers/0"); // Hold a reference to the viewshed analysis. - private LocationViewshed _viewshed; + private ExploratoryLocationViewshed _viewshed; // Hold a reference to the analysis overlay that will hold the viewshed analysis. private AnalysisOverlay _analysisOverlay; @@ -71,7 +71,7 @@ private void Initialize() MapPoint initialLocation = new MapPoint(-4.5, 48.4, 56.0); // Create the location viewshed analysis. - _viewshed = new LocationViewshed( + _viewshed = new ExploratoryLocationViewshed( initialLocation, HeadingSlider.Value, PitchSlider.Value, @@ -110,7 +110,7 @@ private void Initialize() // Update the frustum outline color. // The frustum outline shows the volume in which the viewshed analysis is performed. - Viewshed.FrustumOutlineColor = Colors.Blue; + ExploratoryViewshed.FrustumOutlineColor = Colors.Blue; // Subscribe to tap events to enable moving the observer. MySceneView.GeoViewTapped += MySceneViewOnGeoViewTapped; diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.md b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.md index e49a6cfad0..abbaa815e4 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.md +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.md @@ -14,7 +14,7 @@ Use the sliders to change the properties (heading, pitch, etc.), of the viewshed ## How it works -1. Create a `LocationViewshed` passing in the observer location, heading, pitch, horizontal/vertical angles, and min/max distances. +1. Create an `ExploratoryLocationViewshed` passing in the observer location, heading, pitch, horizontal/vertical angles, and min/max distances. 2. Set the property values on the viewshed instance for location, direction, range, and visibility properties. ## Relevant API @@ -22,8 +22,8 @@ Use the sliders to change the properties (heading, pitch, etc.), of the viewshed * AnalysisOverlay * ArcGISSceneLayer * ArcGISTiledElevationSource -* LocationViewshed -* Viewshed +* ExploratoryLocationViewshed +* ExploratoryViewshed ## About the data diff --git a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.metadata.json b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.metadata.json index a19ff1a8f7..e820229ce8 100644 --- a/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.metadata.json +++ b/src/MAUI/Maui.Samples/Samples/Analysis/ViewshedLocation/readme.metadata.json @@ -21,8 +21,8 @@ "AnalysisOverlay", "ArcGISSceneLayer", "ArcGISTiledElevationSource", - "LocationViewshed", - "Viewshed" + "ExploratoryLocationViewshed", + "ExploratoryViewshed" ], "snippets": [ "ViewshedLocation.xaml.cs", diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs b/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs index 582d2b470e..60d6e63139 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs +++ b/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs @@ -35,7 +35,7 @@ public partial class DistanceMeasurement "https://tiles.arcgis.com/tiles/P3ePLMYs2RVChkJx/arcgis/rest/services/Buildings_Brest/SceneServer/layers/0"); // Measurement. - private LocationDistanceMeasurement _distanceMeasurement; + private ExploratoryLocationDistanceMeasurement _distanceMeasurement; public DistanceMeasurement() { @@ -66,7 +66,7 @@ private void Initialize() // Create an initial distance measurement and show it. MapPoint start = new MapPoint(-4.494677, 48.384472, 24.772694, SpatialReferences.Wgs84); MapPoint end = new MapPoint(-4.495646, 48.384377, 58.501115, SpatialReferences.Wgs84); - _distanceMeasurement = new LocationDistanceMeasurement(start, end); + _distanceMeasurement = new ExploratoryLocationDistanceMeasurement(start, end); measureAnalysisOverlay.Analyses.Add(_distanceMeasurement); // Keep the UI updated. diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.md b/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.md index 0c895f6732..f249aa23d5 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.md +++ b/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.md @@ -15,20 +15,20 @@ Choose a unit system for the measurement. Click any location in the scene to sta ## How it works 1. Create an `AnalysisOverlay` object and add it to the analysis overlay collection of the `SceneView` object. -2. Specify the start location and end location to create a `LocationDistanceMeasurement` object. Initially, the start and end locations can be the same point. +2. Specify the start location and end location to create an `ExploratoryLocationDistanceMeasurement` object. Initially, the start and end locations can be the same point. 3. Add the location distance measurement analysis to the analysis overlay. 4. The `MeasurementChanged` event will be raised if the distances change. You can get the new values for the `DirectDistance`, `HorizontalDistance`, and `VerticalDistance` from the event arguments. ## Relevant API * AnalysisOverlay -* LocationDistanceMeasurement -* LocationDistanceMeasurement.MeasurementChanged +* ExploratoryLocationDistanceMeasurement +* ExploratoryLocationDistanceMeasurement.MeasurementChanged ## Additional information -The `LocationDistanceMeasurement` analysis only performs planar distance calculations. This may not be appropriate for large distances where the Earth's curvature must be considered. +The `ExploratoryLocationDistanceMeasurement` analysis only performs planar distance calculations. This may not be appropriate for large distances where the Earth's curvature must be considered. ## Tags -3D, analysis, distance, measure \ No newline at end of file +3D, analysis, distance, measure diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json b/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json index 4c360b0ca9..58c0f391be 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json +++ b/src/WPF/WPF.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json @@ -18,8 +18,8 @@ ], "relevant_apis": [ "AnalysisOverlay", - "LocationDistanceMeasurement", - "LocationDistanceMeasurement.MeasurementChanged" + "ExploratoryLocationDistanceMeasurement", + "ExploratoryLocationDistanceMeasurement.MeasurementChanged" ], "snippets": [ "DistanceMeasurement.xaml.cs", diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs index 3cd9889857..46402e7907 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs +++ b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs @@ -46,7 +46,7 @@ public partial class LineOfSightGeoElement private Graphic _taxiGraphic; // Line of Sight Analysis - private GeoElementLineOfSight _geoLine; + private ExploratoryGeoElementLineOfSight _geoLine; // For taxi animation - four points in a loop private readonly MapPoint[] _points = { @@ -112,7 +112,7 @@ private async Task Initialize() // Create GeoElement Line of sight analysis (taxi to building) // Create the analysis - _geoLine = new GeoElementLineOfSight(_observerGraphic, _taxiGraphic) + _geoLine = new ExploratoryGeoElementLineOfSight(_observerGraphic, _taxiGraphic) { // Apply an offset to the target. This helps avoid some false negatives TargetOffsetZ = 2 @@ -204,18 +204,18 @@ private void Geoline_TargetVisibilityChanged(object sender, EventArgs e) { switch (_geoLine.TargetVisibility) { - case LineOfSightTargetVisibility.Obstructed: + case ExploratoryLineOfSightTargetVisibility.Obstructed: MyStatusLabel.Text = "Status: Obstructed"; _taxiGraphic.IsSelected = false; break; - case LineOfSightTargetVisibility.Visible: + case ExploratoryLineOfSightTargetVisibility.Visible: MyStatusLabel.Text = "Status: Visible"; _taxiGraphic.IsSelected = true; break; default: - case LineOfSightTargetVisibility.Unknown: + case ExploratoryLineOfSightTargetVisibility.Unknown: MyStatusLabel.Text = "Status: Unknown"; _taxiGraphic.IsSelected = false; break; diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md index d25685349a..08a52da530 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md +++ b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md @@ -8,7 +8,7 @@ Show a line of sight between two moving objects. A line of sight between `GeoElement`s (i.e. observer and target) will not remain constant whilst one or both are on the move. -A `GeoElementLineOfSight` is therefore useful in cases where visibility between two `GeoElement`s requires monitoring over a period of time in a partially obstructed field of view +An `ExploratoryGeoElementLineOfSight` is therefore useful in cases where visibility between two `GeoElement`s requires monitoring over a period of time in a partially obstructed field of view (such as buildings in a city). ## How to use the sample @@ -20,14 +20,14 @@ The taxi will be highlighted when it is visible. You can change the observer hei ## How it works 1. Instantiate an `AnalysisOverlay` and add it to the `SceneView`'s analysis overlays collection. -2. Instantiate a `GeoElementLineOfSight`, passing in observer and target `GeoElement`s (features or graphics). Add the line of sight to the analysis overlay's analyses collection. -3. To get the target visibility when it changes, react to the target visibility changing on the `GeoElementLineOfSight` instance. +2. Instantiate an `ExploratoryGeoElementLineOfSight`, passing in observer and target `GeoElement`s (features or graphics). Add the line of sight to the analysis overlay's analyses collection. +3. To get the target visibility when it changes, react to the target visibility changing on the `ExploratoryGeoElementLineOfSight` instance. ## Relevant API * AnalysisOverlay -* GeoElementLineOfSight -* LineOfSight.TargetVisibility +* ExploratoryGeoElementLineOfSight +* ExploratoryLineOfSight.TargetVisibility ## Offline data @@ -37,4 +37,4 @@ This sample downloads the following items from ArcGIS Online automatically: ## Tags -3D, line of sight, visibility, visibility analysis \ No newline at end of file +3D, line of sight, visibility, visibility analysis diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json index b80aac0dd3..be1d8febe5 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json +++ b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json @@ -20,8 +20,8 @@ ], "relevant_apis": [ "AnalysisOverlay", - "GeoElementLineOfSight", - "LineOfSight.TargetVisibility" + "ExploratoryGeoElementLineOfSight", + "ExploratoryLineOfSight.TargetVisibility" ], "snippets": [ "LineOfSightGeoElement.xaml.cs", diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs index e0ef77ab14..44b71978e0 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs +++ b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs @@ -27,7 +27,7 @@ public partial class LineOfSightLocation private string _elevationSourceUrl = @"https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"; // Location line of sight analysis - private LocationLineOfSight _lineOfSightAnalysis; + private ExploratoryLocationLineOfSight _lineOfSightAnalysis; // Observer location for line of sight private MapPoint _observerLocation; @@ -66,12 +66,12 @@ private void Initialize() MySceneView.SetViewpointCameraAsync(newCamera); // Create a new line of sight analysis with arbitrary points (observer and target will be defined by the user) - _lineOfSightAnalysis = new LocationLineOfSight(new MapPoint(0.0, 0.0, SpatialReferences.Wgs84), new MapPoint(0.0, 0.0, SpatialReferences.Wgs84)); + _lineOfSightAnalysis = new ExploratoryLocationLineOfSight(new MapPoint(0.0, 0.0, SpatialReferences.Wgs84), new MapPoint(0.0, 0.0, SpatialReferences.Wgs84)); // Set the visible and obstructed colors (default would be green/red) // These are static properties that apply to all line of sight analyses in the scene view - LineOfSight.VisibleColor = Color.Cyan; - LineOfSight.ObstructedColor = Color.Magenta; + ExploratoryLineOfSight.VisibleColor = Color.Cyan; + ExploratoryLineOfSight.ObstructedColor = Color.Magenta; // Create an analysis overlay to contain the analysis and add it to the scene view AnalysisOverlay lineOfSightOverlay = new AnalysisOverlay(); diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.md b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.md index ff60a292ca..e5a26ee897 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.md +++ b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.md @@ -15,16 +15,16 @@ Tap to place the starting point for the line. Tap again to place the end point. ## How it works 1. Create an `AnalysisOverlay` and add it to the scene view. -2. Create a `LocationLineOfSight` with initial observer and target locations and add it to the analysis overlay. +2. Create an `ExploratoryLocationLineOfSight` with initial observer and target locations and add it to the analysis overlay. 3. Listen for taps on the scene view. 4. Update the target location with `lineOfSight.TargetLocation = scenePoint`. ## Relevant API * AnalysisOverlay -* LocationLineOfSight +* ExploratoryLocationLineOfSight * SceneView ## Tags -3D, line of sight, visibility, visibility analysis \ No newline at end of file +3D, line of sight, visibility, visibility analysis diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json index 96a225f53b..04b1841a5a 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json +++ b/src/WPF/WPF.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json @@ -18,7 +18,7 @@ ], "relevant_apis": [ "AnalysisOverlay", - "LocationLineOfSight", + "ExploratoryLocationLineOfSight", "SceneView" ], "snippets": [ diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs index 7e98aed7bb..fc432d4071 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs @@ -29,7 +29,7 @@ public partial class ViewshedCamera private string _elevationSourceUrl = "https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"; // Location viewshed analysis to show visible and obstructed areas from the camera - private LocationViewshed _viewshedForCamera; + private ExploratoryLocationViewshed _viewshedForCamera; public ViewshedCamera() { @@ -59,8 +59,8 @@ private void Initialize() Camera observerCamera = new Camera(new MapPoint(2.82691, 41.985, 124.987, SpatialReferences.Wgs84), 332.131, 82.4732, 0.0); MySceneView.SetViewpointCameraAsync(observerCamera); - // Create a LocationViewshed analysis using the camera as the observer - _viewshedForCamera = new LocationViewshed(observerCamera, 1, 1000); + // Create an ExploratoryLocationViewshed analysis using the camera as the observer + _viewshedForCamera = new ExploratoryLocationViewshed(observerCamera, 1, 1000); // Create an analysis overlay to contain the viewshed analysis results AnalysisOverlay viewshedOverlay = new AnalysisOverlay(); diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.md b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.md index 53088ad018..8172d2820d 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.md +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.md @@ -14,7 +14,7 @@ The sample will start with a viewshed created from the initial camera location, ## How it works -1. Create a `LocationViewshed`, passing in a `Camera` and a min/max distance. +1. Create an `ExploratoryLocationViewshed`, passing in a `Camera` and a min/max distance. 2. Update the viewshed using `viewshed.UpdateFromCamera()`. ## Relevant API @@ -22,8 +22,8 @@ The sample will start with a viewshed created from the initial camera location, * AnalysisOverlay * ArcGISTiledElevationSource * Camera +* ExploratoryLocationViewshed * IntegratedMeshLayer -* LocationViewshed * Scene * SceneView diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json index d422b9a729..dfda4df23a 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json @@ -21,8 +21,8 @@ "AnalysisOverlay", "ArcGISTiledElevationSource", "Camera", + "ExploratoryLocationViewshed", "IntegratedMeshLayer", - "LocationViewshed", "Scene", "SceneView" ], diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs index 40f088ca6e..23b8e01b13 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs @@ -98,7 +98,7 @@ private async Task Initialize() _tankOverlay.Graphics.Add(_tank); // Create a viewshed for the tank. - GeoElementViewshed geoViewshed = new GeoElementViewshed( + ExploratoryGeoElementViewshed geoViewshed = new ExploratoryGeoElementViewshed( geoElement: _tank, horizontalAngle: 90.0, verticalAngle: 40.0, diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md index bd7b7ecf21..adedae00c6 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md @@ -17,15 +17,15 @@ Tap to set a destination for the vehicle (a GeoElement). The vehicle will 'drive 1. Create and show the scene, with an elevation source and a buildings layer. 2. Add a model (the `GeoElement`) to represent the observer (in this case, a tank). * Use a `SimpleRenderer` which has a heading expression set in the `GraphicsOverlay`. This way you can relate the viewshed's heading to the `GeoElement` object's heading. -3. Create a `GeoElementViewshed` with configuration for the viewshed analysis. +3. Create an `ExploratoryGeoElementViewshed` with configuration for the viewshed analysis. 4. Add the viewshed to an `AnalysisOverlay` and add the overlay to the scene. 5. Configure the SceneView `CameraController` to orbit the vehicle. ## Relevant API * AnalysisOverlay +* ExploratoryGeoElementViewshed * GeodeticDistanceResult -* GeoElementViewshed * GeometryEngine.DistanceGeodetic * ModelSceneSymbol * OrbitGeoElementCameraController diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json index d919d57ae5..f9a90c8b86 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json @@ -23,7 +23,7 @@ ], "relevant_apis": [ "AnalysisOverlay", - "GeoElementViewshed", + "ExploratoryGeoElementViewshed", "GeodeticDistanceResult", "GeometryEngine.DistanceGeodetic", "ModelSceneSymbol", diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs index 99623e6648..a7215b4cf1 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs @@ -36,7 +36,7 @@ public partial class ViewshedLocation private readonly Uri _buildingsUrl = new Uri("https://tiles.arcgis.com/tiles/P3ePLMYs2RVChkJx/arcgis/rest/services/Buildings_Brest/SceneServer/layers/0"); // Hold a reference to the viewshed analysis. - private LocationViewshed _viewshed; + private ExploratoryLocationViewshed _viewshed; // Hold a reference to the analysis overlay that will hold the viewshed analysis. private AnalysisOverlay _analysisOverlay; @@ -82,7 +82,7 @@ private void Initialize() MapPoint initialLocation = new MapPoint(-4.5, 48.4, 46 + _viewHeight); // Create the location viewshed analysis. - _viewshed = new LocationViewshed( + _viewshed = new ExploratoryLocationViewshed( initialLocation, HeadingSlider.Value, PitchSlider.Value, @@ -121,7 +121,7 @@ private void Initialize() // Update the frustum outline Color. // The frustum outline shows the volume in which the viewshed analysis is performed. - Viewshed.FrustumOutlineColor = Color.Blue; + ExploratoryViewshed.FrustumOutlineColor = Color.Blue; // Subscribe to tap events. This enables the 'pick up' and 'drop' workflow for moving the viewpoint. MySceneView.GeoViewTapped += MySceneViewOnGeoViewTapped; diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.md b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.md index 22073a56c5..f155f879ed 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.md +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.md @@ -14,7 +14,7 @@ Use the sliders to change the properties (heading, pitch, etc.), of the viewshed ## How it works -1. Create a `LocationViewshed` passing in the observer location, heading, pitch, horizontal/vertical angles, and min/max distances. +1. Create an `ExploratoryLocationViewshed` passing in the observer location, heading, pitch, horizontal/vertical angles, and min/max distances. 2. Set the property values on the viewshed instance for location, direction, range, and visibility properties. ## Relevant API @@ -22,8 +22,8 @@ Use the sliders to change the properties (heading, pitch, etc.), of the viewshed * AnalysisOverlay * ArcGISSceneLayer * ArcGISTiledElevationSource -* LocationViewshed -* Viewshed +* ExploratoryLocationViewshed +* ExploratoryViewshed ## About the data diff --git a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json index 540f5a6f74..7e6a55c8dc 100644 --- a/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json +++ b/src/WPF/WPF.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json @@ -21,8 +21,8 @@ "AnalysisOverlay", "ArcGISSceneLayer", "ArcGISTiledElevationSource", - "LocationViewshed", - "Viewshed" + "ExploratoryLocationViewshed", + "ExploratoryViewshed" ], "snippets": [ "ViewshedLocation.xaml.cs", diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs index 06a8a71e74..413997b9f8 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/DistanceMeasurement.xaml.cs @@ -37,7 +37,7 @@ public partial class DistanceMeasurement new Uri("https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"); // Reference to the measurement used. - private LocationDistanceMeasurement _distanceMeasurement; + private ExploratoryLocationDistanceMeasurement _distanceMeasurement; public DistanceMeasurement() { @@ -68,7 +68,7 @@ private void Initialize() // Create an initial distance measurement and show it. MapPoint start = new MapPoint(-4.494677, 48.384472, 24.772694, SpatialReferences.Wgs84); MapPoint end = new MapPoint(-4.495646, 48.384377, 58.501115, SpatialReferences.Wgs84); - _distanceMeasurement = new LocationDistanceMeasurement(start, end); + _distanceMeasurement = new ExploratoryLocationDistanceMeasurement(start, end); measureAnalysisOverlay.Analyses.Add(_distanceMeasurement); // Keep the UI updated. diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.md b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.md index 0c895f6732..f249aa23d5 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.md +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.md @@ -15,20 +15,20 @@ Choose a unit system for the measurement. Click any location in the scene to sta ## How it works 1. Create an `AnalysisOverlay` object and add it to the analysis overlay collection of the `SceneView` object. -2. Specify the start location and end location to create a `LocationDistanceMeasurement` object. Initially, the start and end locations can be the same point. +2. Specify the start location and end location to create an `ExploratoryLocationDistanceMeasurement` object. Initially, the start and end locations can be the same point. 3. Add the location distance measurement analysis to the analysis overlay. 4. The `MeasurementChanged` event will be raised if the distances change. You can get the new values for the `DirectDistance`, `HorizontalDistance`, and `VerticalDistance` from the event arguments. ## Relevant API * AnalysisOverlay -* LocationDistanceMeasurement -* LocationDistanceMeasurement.MeasurementChanged +* ExploratoryLocationDistanceMeasurement +* ExploratoryLocationDistanceMeasurement.MeasurementChanged ## Additional information -The `LocationDistanceMeasurement` analysis only performs planar distance calculations. This may not be appropriate for large distances where the Earth's curvature must be considered. +The `ExploratoryLocationDistanceMeasurement` analysis only performs planar distance calculations. This may not be appropriate for large distances where the Earth's curvature must be considered. ## Tags -3D, analysis, distance, measure \ No newline at end of file +3D, analysis, distance, measure diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json index 47ec53f1a4..b2cb0c1ac5 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/DistanceMeasurement/readme.metadata.json @@ -19,8 +19,8 @@ ], "relevant_apis": [ "AnalysisOverlay", - "LocationDistanceMeasurement", - "LocationDistanceMeasurement.MeasurementChanged" + "ExploratoryLocationDistanceMeasurement", + "ExploratoryLocationDistanceMeasurement.MeasurementChanged" ], "snippets": [ "DistanceMeasurement.xaml.cs", diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs index e0f4920df4..076ef03a4f 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/LineOfSightGeoElement.xaml.cs @@ -45,7 +45,7 @@ public partial class LineOfSightGeoElement private Graphic _taxiGraphic; // Line of Sight Analysis. - private GeoElementLineOfSight _geoLine; + private ExploratoryGeoElementLineOfSight _geoLine; // For taxi animation - four points in a loop. private readonly MapPoint[] _points = { @@ -110,7 +110,7 @@ private async Task Initialize() // Create GeoElement Line of sight analysis (taxi to building). // Create the analysis. - _geoLine = new GeoElementLineOfSight(_observerGraphic, _taxiGraphic) + _geoLine = new ExploratoryGeoElementLineOfSight(_observerGraphic, _taxiGraphic) { // Apply an offset to the target. This helps avoid some false negatives. TargetOffsetZ = 2 @@ -204,18 +204,18 @@ private void UpdateUiAndSelection() { switch (_geoLine.TargetVisibility) { - case LineOfSightTargetVisibility.Obstructed: + case ExploratoryLineOfSightTargetVisibility.Obstructed: StatusLabel.Text = "Status: Obstructed"; _taxiGraphic.IsSelected = false; break; - case LineOfSightTargetVisibility.Visible: + case ExploratoryLineOfSightTargetVisibility.Visible: StatusLabel.Text = "Status: Visible"; _taxiGraphic.IsSelected = true; break; default: - case LineOfSightTargetVisibility.Unknown: + case ExploratoryLineOfSightTargetVisibility.Unknown: StatusLabel.Text = "Status: Unknown"; _taxiGraphic.IsSelected = false; break; diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md index d25685349a..08a52da530 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.md @@ -8,7 +8,7 @@ Show a line of sight between two moving objects. A line of sight between `GeoElement`s (i.e. observer and target) will not remain constant whilst one or both are on the move. -A `GeoElementLineOfSight` is therefore useful in cases where visibility between two `GeoElement`s requires monitoring over a period of time in a partially obstructed field of view +An `ExploratoryGeoElementLineOfSight` is therefore useful in cases where visibility between two `GeoElement`s requires monitoring over a period of time in a partially obstructed field of view (such as buildings in a city). ## How to use the sample @@ -20,14 +20,14 @@ The taxi will be highlighted when it is visible. You can change the observer hei ## How it works 1. Instantiate an `AnalysisOverlay` and add it to the `SceneView`'s analysis overlays collection. -2. Instantiate a `GeoElementLineOfSight`, passing in observer and target `GeoElement`s (features or graphics). Add the line of sight to the analysis overlay's analyses collection. -3. To get the target visibility when it changes, react to the target visibility changing on the `GeoElementLineOfSight` instance. +2. Instantiate an `ExploratoryGeoElementLineOfSight`, passing in observer and target `GeoElement`s (features or graphics). Add the line of sight to the analysis overlay's analyses collection. +3. To get the target visibility when it changes, react to the target visibility changing on the `ExploratoryGeoElementLineOfSight` instance. ## Relevant API * AnalysisOverlay -* GeoElementLineOfSight -* LineOfSight.TargetVisibility +* ExploratoryGeoElementLineOfSight +* ExploratoryLineOfSight.TargetVisibility ## Offline data @@ -37,4 +37,4 @@ This sample downloads the following items from ArcGIS Online automatically: ## Tags -3D, line of sight, visibility, visibility analysis \ No newline at end of file +3D, line of sight, visibility, visibility analysis diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json index 2c67a03b3e..b13bf7c3f2 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightGeoElement/readme.metadata.json @@ -20,8 +20,8 @@ ], "relevant_apis": [ "AnalysisOverlay", - "GeoElementLineOfSight", - "LineOfSight.TargetVisibility" + "ExploratoryGeoElementLineOfSight", + "ExploratoryLineOfSight.TargetVisibility" ], "snippets": [ "LineOfSightGeoElement.xaml.cs", diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs index 60689c6ca0..cfe94caea7 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/LineOfSightLocation.xaml.cs @@ -27,7 +27,7 @@ public sealed partial class LineOfSightLocation private string _elevationSourceUrl = @"https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"; // Location line of sight analysis - private LocationLineOfSight _lineOfSightAnalysis; + private ExploratoryLocationLineOfSight _lineOfSightAnalysis; // Observer location for line of sight private MapPoint _observerLocation; @@ -66,12 +66,12 @@ private void Initialize() MySceneView.SetViewpointCameraAsync(newCamera); // Create a new line of sight analysis with arbitrary points (observer and target will be defined by the user) - _lineOfSightAnalysis = new LocationLineOfSight(new MapPoint(0.0, 0.0, SpatialReferences.Wgs84), new MapPoint(0.0, 0.0, SpatialReferences.Wgs84)); + _lineOfSightAnalysis = new ExploratoryLocationLineOfSight(new MapPoint(0.0, 0.0, SpatialReferences.Wgs84), new MapPoint(0.0, 0.0, SpatialReferences.Wgs84)); // Set the visible and obstructed colors (default would be green/red) // These are static properties that apply to all line of sight analyses in the scene view - LineOfSight.VisibleColor = Color.Cyan; - LineOfSight.ObstructedColor = Color.Magenta; + ExploratoryLineOfSight.VisibleColor = Color.Cyan; + ExploratoryLineOfSight.ObstructedColor = Color.Magenta; // Create an analysis overlay to contain the analysis and add it to the scene view AnalysisOverlay lineOfSightOverlay = new AnalysisOverlay(); diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.md b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.md index ff60a292ca..e5a26ee897 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.md +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.md @@ -15,16 +15,16 @@ Tap to place the starting point for the line. Tap again to place the end point. ## How it works 1. Create an `AnalysisOverlay` and add it to the scene view. -2. Create a `LocationLineOfSight` with initial observer and target locations and add it to the analysis overlay. +2. Create an `ExploratoryLocationLineOfSight` with initial observer and target locations and add it to the analysis overlay. 3. Listen for taps on the scene view. 4. Update the target location with `lineOfSight.TargetLocation = scenePoint`. ## Relevant API * AnalysisOverlay -* LocationLineOfSight +* ExploratoryLocationLineOfSight * SceneView ## Tags -3D, line of sight, visibility, visibility analysis \ No newline at end of file +3D, line of sight, visibility, visibility analysis diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json index 6500526f10..ba8a339900 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/LineOfSightLocation/readme.metadata.json @@ -18,7 +18,7 @@ ], "relevant_apis": [ "AnalysisOverlay", - "LocationLineOfSight", + "ExploratoryLocationLineOfSight", "SceneView" ], "snippets": [ diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs index d2768146d3..4081312eac 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/ViewshedCamera.xaml.cs @@ -29,7 +29,7 @@ public sealed partial class ViewshedCamera private string _elevationSourceUrl = "https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"; // Location viewshed analysis to show visible and obstructed areas from the camera. - private LocationViewshed _viewshedForCamera; + private ExploratoryLocationViewshed _viewshedForCamera; public ViewshedCamera() { @@ -59,8 +59,8 @@ private void Initialize() Camera observerCamera = new Camera(new MapPoint(2.82691, 41.985, 124.987, SpatialReferences.Wgs84), 332.131, 82.4732, 0.0); MySceneView.SetViewpointCameraAsync(observerCamera); - // Create a LocationViewshed analysis using the camera as the observer. - _viewshedForCamera = new LocationViewshed(observerCamera, 1, 1000); + // Create an ExploratoryLocationViewshed analysis using the camera as the observer. + _viewshedForCamera = new ExploratoryLocationViewshed(observerCamera, 1, 1000); // Create an analysis overlay to contain the viewshed analysis results. AnalysisOverlay viewshedOverlay = new AnalysisOverlay(); diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.md b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.md index 53088ad018..8172d2820d 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.md +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.md @@ -14,7 +14,7 @@ The sample will start with a viewshed created from the initial camera location, ## How it works -1. Create a `LocationViewshed`, passing in a `Camera` and a min/max distance. +1. Create an `ExploratoryLocationViewshed`, passing in a `Camera` and a min/max distance. 2. Update the viewshed using `viewshed.UpdateFromCamera()`. ## Relevant API @@ -22,8 +22,8 @@ The sample will start with a viewshed created from the initial camera location, * AnalysisOverlay * ArcGISTiledElevationSource * Camera +* ExploratoryLocationViewshed * IntegratedMeshLayer -* LocationViewshed * Scene * SceneView diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json index 78a45054ea..f587245fdd 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedCamera/readme.metadata.json @@ -21,8 +21,8 @@ "AnalysisOverlay", "ArcGISTiledElevationSource", "Camera", + "ExploratoryLocationViewshed", "IntegratedMeshLayer", - "LocationViewshed", "Scene", "SceneView" ], diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs index 1e30361139..7048cf3cc4 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/ViewshedGeoElement.xaml.cs @@ -99,7 +99,7 @@ private async Task Initialize() _tankOverlay.Graphics.Add(_tank); // Create a viewshed for the tank. - GeoElementViewshed geoViewshed = new GeoElementViewshed( + ExploratoryGeoElementViewshed geoViewshed = new ExploratoryGeoElementViewshed( geoElement: _tank, horizontalAngle: 90.0, verticalAngle: 40.0, diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md index bd7b7ecf21..adedae00c6 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.md @@ -17,15 +17,15 @@ Tap to set a destination for the vehicle (a GeoElement). The vehicle will 'drive 1. Create and show the scene, with an elevation source and a buildings layer. 2. Add a model (the `GeoElement`) to represent the observer (in this case, a tank). * Use a `SimpleRenderer` which has a heading expression set in the `GraphicsOverlay`. This way you can relate the viewshed's heading to the `GeoElement` object's heading. -3. Create a `GeoElementViewshed` with configuration for the viewshed analysis. +3. Create an `ExploratoryGeoElementViewshed` with configuration for the viewshed analysis. 4. Add the viewshed to an `AnalysisOverlay` and add the overlay to the scene. 5. Configure the SceneView `CameraController` to orbit the vehicle. ## Relevant API * AnalysisOverlay +* ExploratoryGeoElementViewshed * GeodeticDistanceResult -* GeoElementViewshed * GeometryEngine.DistanceGeodetic * ModelSceneSymbol * OrbitGeoElementCameraController diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json index 733d0c18f9..92e5110450 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedGeoElement/readme.metadata.json @@ -23,7 +23,7 @@ ], "relevant_apis": [ "AnalysisOverlay", - "GeoElementViewshed", + "ExploratoryGeoElementViewshed", "GeodeticDistanceResult", "GeometryEngine.DistanceGeodetic", "ModelSceneSymbol", diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs index 2f26b9cf5e..94711b874a 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/ViewshedLocation.xaml.cs @@ -34,7 +34,7 @@ public partial class ViewshedLocation private readonly Uri _buildingsUrl = new Uri("https://tiles.arcgis.com/tiles/P3ePLMYs2RVChkJx/arcgis/rest/services/Buildings_Brest/SceneServer/layers/0"); // Hold a reference to the viewshed analysis. - private LocationViewshed _viewshed; + private ExploratoryLocationViewshed _viewshed; // Hold a reference to the analysis overlay that will hold the viewshed analysis. private AnalysisOverlay _analysisOverlay; @@ -77,7 +77,7 @@ private void Initialize() MapPoint initialLocation = new MapPoint(-4.5, 48.4, 46 + _viewHeight); // Create the location viewshed analysis. - _viewshed = new LocationViewshed( + _viewshed = new ExploratoryLocationViewshed( initialLocation, HeadingSlider.Value, PitchSlider.Value, @@ -116,7 +116,7 @@ private void Initialize() // Update the frustum outline Color. // The frustum outline shows the volume in which the viewshed analysis is performed. - Viewshed.FrustumOutlineColor = Color.Blue; + ExploratoryViewshed.FrustumOutlineColor = Color.Blue; // Subscribe to tap events. This enables the 'pick up' and 'drop' workflow for moving the viewpoint. MySceneView.GeoViewTapped += MySceneViewOnGeoViewTapped; diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.md b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.md index 22073a56c5..f155f879ed 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.md +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.md @@ -14,7 +14,7 @@ Use the sliders to change the properties (heading, pitch, etc.), of the viewshed ## How it works -1. Create a `LocationViewshed` passing in the observer location, heading, pitch, horizontal/vertical angles, and min/max distances. +1. Create an `ExploratoryLocationViewshed` passing in the observer location, heading, pitch, horizontal/vertical angles, and min/max distances. 2. Set the property values on the viewshed instance for location, direction, range, and visibility properties. ## Relevant API @@ -22,8 +22,8 @@ Use the sliders to change the properties (heading, pitch, etc.), of the viewshed * AnalysisOverlay * ArcGISSceneLayer * ArcGISTiledElevationSource -* LocationViewshed -* Viewshed +* ExploratoryLocationViewshed +* ExploratoryViewshed ## About the data diff --git a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json index ddc07892db..50fb9b7d01 100644 --- a/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json +++ b/src/WinUI/ArcGIS.WinUI.Viewer/Samples/Analysis/ViewshedLocation/readme.metadata.json @@ -21,8 +21,8 @@ "AnalysisOverlay", "ArcGISSceneLayer", "ArcGISTiledElevationSource", - "LocationViewshed", - "Viewshed" + "ExploratoryLocationViewshed", + "ExploratoryViewshed" ], "snippets": [ "ViewshedLocation.xaml.cs",