DynamicEntityLayer class final

A Layer that displays dynamic entity observations from real-time services.

A dynamic entity layer consumes DynamicEntityObservation objects streamed from a DynamicEntityDataSource. A DynamicEntityDataSource must be passed to the constructor of the layer. The layer manages the display of observations as they are added to or removed from the data source's local cache.

A dynamic entity layer's TrackDisplayProperties allow you to control the display of previous observations by setting a maximum number of observations to show, displaying a line that connects them (track line), and applying renderers to the observations and/or track line.

As with other layers in the ArcGIS Maps SDK, display properties are managed with renderers. In the dynamic entity layer, three renderers are used to control display of observations:

  • DynamicEntityLayer.renderer: the main renderer property inherited from Layer is used to control the display of the latest observation in a track. All renderer types are supported.
  • TrackDisplayProperties.previousObservationRenderer: used to control the display of previous observations in a track. All renderer types are supported.
  • TrackDisplayProperties.trackLineRenderer: used to control the display of the track line between observations. All renderer types are supported; however, the track line attributes collection includes only the entity ID attribute that uniquely identifies the track. This attribute can be used to highlight a specific track using one of the attribute-based renderers.

Labels in a dynamic entity layer are controlled through the inherited Layer labeling API. Labels only appear on the latest observation in a track and are not placed on previous observations.

The dynamic entity layer has methods for selecting or unselecting dynamic entities and observations in the display. When selecting a dynamic entity, the selection moves with the entity (the selection halo moves to the latest observation in the track) as new observations are received from the stream. Since observations are static, selected observations appear like any static GeoElement on the display.

Dynamic entity layer also supports identify behavior in a map view or scene view. Be aware that the identify results from this layer consist entirely of DynamicEntityObservation objects. Use the DynamicEntityObservation.getDynamicEntity method to retrieve the DynamicEntity that the identified observation is associated with.

Inheritance
Implemented types

Constructors

DynamicEntityLayer(DynamicEntityDataSource dataSource)
Creates a new dynamic entity layer from a DynamicEntityDataSource.
factory
DynamicEntityLayer.withPortalItem(PortalItem portalItem)
Creates a new dynamic entity layer object from a stream service portal item.
factory

Properties

attribution String
The attribution text for the layer.
no setterinherited
canChangeVisibility bool
A flag indicating whether the layer content's visibility can be changed.
no setterinherited
dataSource DynamicEntityDataSource
The dynamic entity data source.
no setter
description String
The description for the layer.
getter/setter pairinherited
fullExtent Envelope?
The full extent of this layer, which is the extent where all layer data is contained.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
id String
The unique identifying string for the layer, as specified in a map or scene.
getter/setter pairinherited
isIdentifyEnabled bool
True if the layer supports identify, false otherwise.
no setterinherited
isPopupEnabled bool
A flag indicating whether the PopupDefinition defined on the PopupSource is enable / disable.
getter/setter pairoverride
isVisible bool
The layer content's visibility.
getter/setter pairinherited
item Item?
The item the layer has been created from.
no setterinherited
labelDefinitions List<LabelDefinition>
The collection of LabelDefinition objects for this layer.
no setter
labelsEnabled bool
True if labels should be displayed, false otherwise.
getter/setter pair
loadError ArcGISException?
The load error.
no setterinherited
loadStatus LoadStatus
The load status.
no setterinherited
maxScale double
The maximum scale for the layer.
getter/setter pairinherited
minScale double
The minimum scale for the layer.
getter/setter pairinherited
name String
The layer content's name.
getter/setter pairinherited
onLoadStatusChanged Stream<LoadStatus>
A stream that reports changes to the LoadStatus.
no setterinherited
onSubLayerContentChanged Stream<List<LayerContent>>
Callback invoked when the sublayer content of the layer content have changed.
no setterinherited
onVisibilityChanged Stream<bool>
Callback invoked when the visibility of the layer changes.
no setterinherited
opacity double
The opacity for the layer.
getter/setter pairinherited
popupDefinition PopupDefinition?
The pop-up definition.
getter/setter pairoverride
renderer Renderer?
The Renderer used to display the latest observation of dynamic entities.
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sceneProperties LayerSceneProperties
The scene properties for the dynamic entity layer.
getter/setter pair
showInLegend bool
A flag indicating whether the layer content participates in the legend.
getter/setter pairinherited
spatialReference SpatialReference?
The spatial reference of the layer.
no setterinherited
subLayerContents List<LayerContent>
The sub layer contents of a layer content.
no setterinherited
trackDisplayProperties TrackDisplayProperties
The track display properties.
no setter

Methods

cancelLoad() → void
Cancels loading metadata for the object.
inherited
clearSelection() → void
Clears all selected dynamic entities and observations.
clone() Layer
Clones this instance of the layer and its members.
inherited
fetchLegendInfos() Future<List<LegendInfo>>
Fetches the list of legend info.
inherited
getSelectedDynamicEntities() List<DynamicEntity>
Gets all selected dynamic entities.
getSelectedDynamicEntityObservations() List<DynamicEntityObservation>
Gets all selected dynamic entity observations.
isVisibleAtScale(double scale) bool
Returns the layer content's effective visibility at the specified scale.
inherited
load() Future<void>
Loads the metadata for the object asynchronously.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
retryLoad() Future<void>
Loads or retries loading metadata for the object asynchronously.
inherited
selectDynamicEntities(List<DynamicEntity> dynamicEntities) → void
Selects the specified dynamic entities.
selectDynamicEntity(DynamicEntity dynamicEntity) → void
Selects the given dynamic entity and adds it to the current list of selected dynamic entities.
selectDynamicEntityObservation(DynamicEntityObservation dynamicEntityObservation) → void
Selects the given dynamic entity observation and adds it to the current list of selected observations.
selectDynamicEntityObservations(List<DynamicEntityObservation> dynamicEntityObservations) → void
Selects the given dynamic entity observations and adds them to the current list of selected observations.
toString() String
A string representation of this object.
inherited
unselectDynamicEntities(List<DynamicEntity> dynamicEntities) → void
Unselects the specified dynamic entities and removes them from the current list of selected dynamic entities.
unselectDynamicEntity(DynamicEntity dynamicEntity) → void
Unselects the given dynamic entity and removes it from the current list of selected dynamic entities.
unselectDynamicEntityObservation(DynamicEntityObservation dynamicEntityObservation) → void
Unselects the given dynamic entity observation and removes it from the current list of selected observations.
unselectDynamicEntityObservations(List<DynamicEntityObservation> dynamicEntityObservations) → void
Unselects the given dynamic entity observations and removes them from the current list of selected observations.

Operators

operator ==(Object other) bool
The equality operator.
inherited