Change viewpoint

View inWPFUWPFormsiOSAndroid
View on GitHub
Sample viewer app

Set the map view to a new viewpoint.

Image of change viewpoint

Use case

Programatically navigate to a specified location in the map or scene. Use this to focus on a particular point or area of interest.

How to use the sample

The map view has several methods for setting its current viewpoint. Select a viewpoint from the UI to see the viewpoint changed using that method.

How it works

  1. Create a new Map object and set it to the MapView object.
  2. Change the map's Viewpoint using one of the available methods:
  3. Use MapView.SetViewpointAsync() to pan to a viewpoint.
  4. Use MapView.SetViewpointCenterAsync() to center the viewpoint on a Point.
  5. Use MyMapView.SetViewpointScaleAsync() to set a distance from the ground using a scale.
  6. Use MapView.SetViewpointGeometryAsync() to set the viewpoint to a given Geometry.

Relevant API

  • Geometry
  • Map
  • MapView
  • Point
  • Viewpoint

Additional information

Below are some other ways to set a viewpoint:

  • SetViewpoint
  • SetViewpointAsync
  • SetViewpointCenterAsync
  • SetViewpointGeometryAsync
  • SetViewpointRotationAsync
  • SetViewpointScaleAsync

Tags

animate, extent, pan, rotate, scale, view, zoom

Sample Code

ChangeViewpoint.xamlChangeViewpoint.xaml.cs
                                                     
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<UserControl
    x:Class="ArcGISRuntime.WPF.Samples.ChangeViewpoint.ChangeViewpoint"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:esri="http://schemas.esri.com/arcgis/runtime/2013"
    xmlns:mapping="clr-namespace:Esri.ArcGISRuntime.Mapping;assembly=Esri.ArcGISRuntime">
    <UserControl.Resources>
        <Style TargetType="Button">
            <Setter Property="Padding" Value="5" />
            <Setter Property="Margin" Value="5,5,0,0" />
        </Style>
    </UserControl.Resources>
    <Grid>
        <esri:MapView x:Name="MyMapView">
            <mapping:Map>
                <mapping:Map.OperationalLayers>
                    <mapping:ArcGISTiledLayer x:Name="Basemap"
                                       Source="https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer" />
                </mapping:Map.OperationalLayers>
            </mapping:Map>
        </esri:MapView>
        <Border Style="{StaticResource BorderStyle}">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*" />
                    <ColumnDefinition Width="*" />
                    <ColumnDefinition Width="*" />
                </Grid.ColumnDefinitions>
                <TextBlock Text="Use the buttons to set the viewpoint."
                           Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3"
                           HorizontalAlignment="Center" TextWrapping="Wrap"
                           FontWeight="SemiBold"/>
                <Button Content="Geometry"
                        Grid.Row="1" Grid.Column="0"
                        Margin="0,5,0,0"
                        ToolTip="Sets Viewpoint to a predefined Polygon's extent"
                        Click="OnButtonClick" />
                <Button Content="Center and scale"
                        Grid.Row="1" Grid.Column="1"
                        ToolTip="Sets Viewpoint a predefined point and scale"
                        Click="OnButtonClick" />
                <Button Content="Animate"
                        Grid.Row="1" Grid.Column="2"
                        ToolTip="Sets Viewpoint and animate repositioning of view"
                        Click="OnButtonClick" />
            </Grid>
        </Border>
    </Grid>
</UserControl>

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.