Show / Hide Table of Contents

Class LocalSceneView

A user interface control that displays three-dimensional (3D) geographic content defined by a Scene.

Inheritance
object
BindableObject
Element
StyleableElement
NavigableElement
VisualElement
View
GeoView
LocalSceneView
Implements
INotifyPropertyChanged
IVisualTreeElement
IEffectControlProvider
IToolTipElement
IContextFlyoutElement
IAnimatable
IViewController
IVisualElementController
IElementController
IGestureController
IGestureRecognizers
IPropertyMapperView
IHotReloadableView
IReplaceableView
ILocalSceneView
IGeoView
IView
IElement
ITransform
GeoView.ShowCalloutForGeoElement(GeoElement, Point, CalloutDefinition)
GeoView.ShowCalloutAt(MapPoint, CalloutDefinition)
GeoView.ShowCalloutAt(MapPoint, VisualElement, Point)
GeoView.DismissCallout()
GeoView.IsCalloutVisible
GeoView.OnHandlerChanged()
GeoView.OnParentSet()
GeoView.ExportImageAsync()
GeoView.GetCurrentViewpoint(ViewpointType)
GeoView.SetViewpoint(Viewpoint)
GeoView.SetViewpointAsync(Viewpoint)
GeoView.SetViewpointAsync(Viewpoint, TimeSpan)
GeoView.SetBookmarkAsync(Bookmark)
GeoView.CancelSetViewpointOperations()
GeoView.GetLayerViewState(Layer)
GeoView.GetAnalysisViewState(Analysis)
GeoView.IdentifyGraphicsOverlayAsync(GraphicsOverlay, Point, double, bool)
GeoView.IdentifyGraphicsOverlayAsync(GraphicsOverlay, Point, double, bool, long)
GeoView.IdentifyGraphicsOverlaysAsync(Point, double, bool)
GeoView.IdentifyGraphicsOverlaysAsync(Point, double, bool, long)
GeoView.IdentifyLayerAsync(Layer, Point, double, bool)
GeoView.IdentifyLayerAsync(Layer, Point, double, bool, CancellationToken)
GeoView.IdentifyLayerAsync(Layer, Point, double, bool, long)
GeoView.IdentifyLayerAsync(Layer, Point, double, bool, long, CancellationToken)
GeoView.IdentifyLayersAsync(Point, double, bool)
GeoView.IdentifyLayersAsync(Point, double, bool, CancellationToken)
GeoView.IdentifyLayersAsync(Point, double, bool, long)
GeoView.IdentifyLayersAsync(Point, double, bool, long, CancellationToken)
GeoView.NavigationCompleted
GeoView.DrawStatusChanged
GeoView.LayerViewStateChanged
GeoView.SpatialReferenceChanged
GeoView.ViewpointChanged
GeoView.GeoViewTapped
GeoView.GeoViewDoubleTapped
GeoView.GeoViewHolding
GeoView.AnalysisViewStateChanged
GeoView.CriticalErrorChanged
GeoView.GeoModelErrorChanged
GeoView.GraphicsOverlaysProperty
GeoView.GraphicsOverlays
GeoView.IsAttributionTextVisibleProperty
GeoView.IsAttributionTextVisible
GeoView.AttributionText
GeoView.LabelingProperty
GeoView.Labeling
GeoView.ViewInsetsProperty
GeoView.ViewInsets
GeoView.TimeExtentProperty
GeoView.TimeExtent
GeoView.SpatialReference
GeoView.IsWrapAroundEnabled
GeoView.IsNavigating
GeoView.DrawStatus
GeoView.SelectionPropertiesProperty
GeoView.SelectionProperties
GeoView.GridProperty
GeoView.Grid
GeoView.ImageOverlaysProperty
GeoView.ImageOverlays
GeoView.AnalysisOverlaysProperty
GeoView.AnalysisOverlays
GeoView.GeoModelError
GeoView.CriticalError
View.VerticalOptionsProperty
View.HorizontalOptionsProperty
View.MarginProperty
View.propertyMapper
View.ChangeVisualState()
View.GetChildElements(Point)
View.OnBindingContextChanged()
View.GetRendererOverrides<T>()
View.GestureController
View.GestureRecognizers
View.HorizontalOptions
View.Margin
View.VerticalOptions
VisualElement.NavigationProperty
VisualElement.StyleProperty
VisualElement.InputTransparentProperty
VisualElement.IsEnabledProperty
VisualElement.XProperty
VisualElement.YProperty
VisualElement.AnchorXProperty
VisualElement.AnchorYProperty
VisualElement.TranslationXProperty
VisualElement.TranslationYProperty
VisualElement.WidthProperty
VisualElement.HeightProperty
VisualElement.RotationProperty
VisualElement.RotationXProperty
VisualElement.RotationYProperty
VisualElement.ScaleProperty
VisualElement.ScaleXProperty
VisualElement.ScaleYProperty
VisualElement.ClipProperty
VisualElement.VisualProperty
VisualElement.IsVisibleProperty
VisualElement.OpacityProperty
VisualElement.BackgroundColorProperty
VisualElement.BackgroundProperty
VisualElement.BehaviorsProperty
VisualElement.TriggersProperty
VisualElement.WidthRequestProperty
VisualElement.HeightRequestProperty
VisualElement.MinimumWidthRequestProperty
VisualElement.MinimumHeightRequestProperty
VisualElement.MaximumWidthRequestProperty
VisualElement.MaximumHeightRequestProperty
VisualElement.IsFocusedProperty
VisualElement.FlowDirectionProperty
VisualElement.WindowProperty
VisualElement.ShadowProperty
VisualElement.ZIndexProperty
VisualElement.BatchBegin()
VisualElement.BatchCommit()
VisualElement.Focus()
VisualElement.Measure(double, double)
VisualElement.Measure(double, double, MeasureFlags)
VisualElement.Unfocus()
VisualElement.InvalidateMeasure()
VisualElement.OnChildAdded(Element)
VisualElement.OnChildRemoved(Element, int)
VisualElement.OnChildrenReordered()
VisualElement.OnMeasure(double, double)
VisualElement.OnSizeAllocated(double, double)
VisualElement.SizeAllocated(double, double)
VisualElement.RefreshIsEnabledProperty()
VisualElement.Arrange(Rect)
VisualElement.ArrangeOverride(Rect)
VisualElement.Layout(Rect)
VisualElement.InvalidateMeasureOverride()
VisualElement.MeasureOverride(double, double)
VisualElement.MapBackgroundColor(IViewHandler, IView)
VisualElement.MapBackgroundImageSource(IViewHandler, IView)
VisualElement.MapAccessKeyHorizontalOffset(IViewHandler, IView)
VisualElement.MapAccessKeyPlacement(IViewHandler, IView)
VisualElement.MapAccessKey(IViewHandler, IView)
VisualElement.MapAccessKeyVerticalOffset(IViewHandler, IView)
VisualElement.Visual
VisualElement.FlowDirection
VisualElement.Window
VisualElement.AnchorX
VisualElement.AnchorY
VisualElement.BackgroundColor
VisualElement.Background
VisualElement.Behaviors
VisualElement.Bounds
VisualElement.Height
VisualElement.HeightRequest
VisualElement.InputTransparent
VisualElement.IsEnabled
VisualElement.IsEnabledCore
VisualElement.IsFocused
VisualElement.IsVisible
VisualElement.MinimumHeightRequest
VisualElement.MinimumWidthRequest
VisualElement.MaximumHeightRequest
VisualElement.MaximumWidthRequest
VisualElement.Opacity
VisualElement.Rotation
VisualElement.RotationX
VisualElement.RotationY
VisualElement.Scale
VisualElement.ScaleX
VisualElement.ScaleY
VisualElement.TranslationX
VisualElement.TranslationY
VisualElement.Triggers
VisualElement.Width
VisualElement.WidthRequest
VisualElement.X
VisualElement.Y
VisualElement.Clip
VisualElement.Resources
VisualElement.Frame
VisualElement.Handler
VisualElement.Shadow
VisualElement.ZIndex
VisualElement.DesiredSize
VisualElement.IsLoaded
VisualElement.ChildrenReordered
VisualElement.Focused
VisualElement.MeasureInvalidated
VisualElement.SizeChanged
VisualElement.Unfocused
VisualElement.Loaded
VisualElement.Unloaded
NavigableElement.Navigation
StyleableElement.Style
StyleableElement.StyleClass
StyleableElement.class
Element.AutomationIdProperty
Element.ClassIdProperty
Element.InsertLogicalChild(int, Element)
Element.AddLogicalChild(Element)
Element.RemoveLogicalChild(Element)
Element.ClearLogicalChildren()
Element.FindByName(string)
Element.RemoveDynamicResource(BindableProperty)
Element.SetDynamicResource(BindableProperty, string)
Element.OnPropertyChanged(string)
Element.OnParentChanging(ParentChangingEventArgs)
Element.OnParentChanged()
Element.OnHandlerChanging(HandlerChangingEventArgs)
Element.MapAutomationPropertiesIsInAccessibleTree(IElementHandler, Element)
Element.MapAutomationPropertiesLabeledBy(IElementHandler, Element)
Element.MapAutomationPropertiesHelpText(IElementHandler, Element)
Element.MapAutomationPropertiesName(IElementHandler, Element)
Element.MapAutomationPropertiesExcludedWithChildren(IElementHandler, Element)
Element.AutomationId
Element.ClassId
Element.Effects
Element.Id
Element.StyleId
Element.Parent
Element.ChildAdded
Element.ChildRemoved
Element.DescendantAdded
Element.DescendantRemoved
Element.ParentChanging
Element.ParentChanged
Element.HandlerChanging
Element.HandlerChanged
BindableObject.BindingContextProperty
BindableObject.ClearValue(BindableProperty)
BindableObject.ClearValue(BindablePropertyKey)
BindableObject.GetValue(BindableProperty)
BindableObject.IsSet(BindableProperty)
BindableObject.RemoveBinding(BindableProperty)
BindableObject.SetBinding(BindableProperty, BindingBase)
BindableObject.ApplyBindings()
BindableObject.OnPropertyChanging(string)
BindableObject.UnapplyBindings()
BindableObject.SetValue(BindableProperty, object)
BindableObject.SetValue(BindablePropertyKey, object)
BindableObject.CoerceValue(BindableProperty)
BindableObject.CoerceValue(BindablePropertyKey)
BindableObject.Dispatcher
BindableObject.BindingContext
BindableObject.PropertyChanged
BindableObject.PropertyChanging
BindableObject.BindingContextChanged
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Esri.ArcGISRuntime.Maui
Assembly: Esri.ArcGISRuntime.Maui.dll
Syntax
[ContentProperty("Scene")]
[WinRTRuntimeClassName("Microsoft.UI.Xaml.Data.INotifyPropertyChanged")]
[WinRTExposedType(typeof(LocalSceneViewWinRTTypeDetails))]
public class LocalSceneView : GeoView, INotifyPropertyChanged, IVisualTreeElement, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IAnimatable, IViewController, IVisualElementController, IElementController, IGestureController, IGestureRecognizers, IPropertyMapperView, IHotReloadableView, IReplaceableView, ILocalSceneView, IGeoView, IView, IElement, ITransform
Remarks

The LocalSceneView is a container that holds a Scene. A Scene holds a collection of operational layers and Basemap. Layers are visual representations of geographic information and come in many forms. The types of layers that are displayed in a SceneView are three dimensional.

A LocalSceneView is a user interface that displays Scene layers and graphics in 3D. It uses a camera to control the visible area (extent) of the Scene and supports user interactions such as pan, zoom, tilt, and rotate. A scene view also provides access to the underlying layer data in a scene.

To display a Scene, add a LocalSceneView control to your app and assign the scene to it. This loads the scene and its content, such as a Surface, Basemap and collection of operational layers, and displays this content on screen.

User interactions such as pan, zoom, tilt, rotate, and identify or selection are supported in the LocalSceneView using touch, mouse, keyboard, or pen/pencil. If required, you can override keys, clicks, and gestures to provide a specific user experience.

The visible area (Viewpoint) of a LocalSceneView is defined by the position and orientation of a Camera. To determine the current visible area, call GetCurrentViewpoint(ViewpointType). Make sure that any user-initiated or programmatic navigation is complete before getting the current Viewpoint by calling IsNavigating.

You can programmatically set the visible area by specifying a viewpoint. For example, to zoom to the Viewpoint specified by a camera, pass the Camera to the LocalSceneView using one of its methods, such as SetViewpointCamera(Camera).

In an MVC architecture, the LocalSceneView represents the View tier. The Model tier is represented by the Scene object which can provide a collection of operational layers, a Basemap and a Surface. You can only set one Scene per LocalSceneView, but you can swap the Scene with another when the application is running. See the Scene view discussion in the developer guide for more information.

note

The GraphicsOverlays collection is not currently supported by the LocalSceneView and will not render. This will be enabled in a future release.

Constructors

Name Description
LocalSceneView()

Initializes a new instance of the LocalSceneView class.

Fields

Name Description
InteractionOptionsProperty

Identifies the InteractionOptions bindable property.

SceneProperty

Identifies the Scene bindable property.

Properties

Name Description
Camera

Gets the current Camera for the view.

InteractionOptions

Gets or sets a set of properties that control user interaction with the LocalSceneView.

Scene

Gets or sets the scene that the LocalSceneView is displaying.

Warnings

Gets the warnings on the local scene view.

Methods

Name Description
LocationToScreen(MapPoint)

Converts a location in map coordinates to a point in screen coordinates relative to the upper-left corner of the scene view.

LocationToScreen(MapPoint, out LocationVisibility)

Converts a location in map coordinates to a point in screen coordinates relative to the upper-left corner of the local scene view.

ScreenToBaseSurface(Point)

Converts the specified screen coordinate, relative to the upper-left corner of the local scene view, to a location on the base surface in geographic coordinates.

ScreenToLocationAsync(Point, CancellationToken)

Asynchronously converts a screen coordinate, relative to the upper-left corner of the LocalSceneView, to a location in scene coordinates.

SetViewpointCamera(Camera)

Immediately changes the display to the viewpoint specified by the given camera.

SetViewpointCameraAsync(Camera)

Changes the scene view to the new camera viewpoint asynchronously.

SetViewpointCameraAsync(Camera, TimeSpan)

Animates the display to the viewpoint specified by the given camera using the specified duration to arrive.

Events

Name Description
WarningsChanged

Raised when the Warnings have changed on the view.

Applies to

TargetVersions
.NET300
.NET Windows300
.NET Android300
.NET iOS300
In this article
Provide feedback
Back to top Copyright © 2025 Esri.