ArcGIS Developers
Dashboard

MarkerSymbolLayer QML Type

A base class for marker symbol layers, representing a symbol layer used to display a marker. More...

Import Statement: import Esri.ArcGISRuntime 100.10
Since: Esri.ArcGISRuntime 100.5
Inherits:

SymbolLayer

Inherited By:

PictureMarkerSymbolLayer and VectorMarkerSymbolLayer

Properties

Signals

Detailed Description

MarkerSymbolLayer draws a shape or picture at a specific location relative to point geometry. A marker symbol layer is most often used in point symbols, but they can also be included in polyline and polygon symbols to draw a symbol at locations along lines and outlines, or within areas (the center of a polygon, for example).

ArcGIS Runtime includes the following types of marker symbol layers:

The MarkerSymbolLayer has methods affecting both 2D and 3D markers. Some properties apply only to 3D markers, such as angleX, or offsetZ. These properties have no effect on markers in 2D. Properties on 2D markers, such as offsetX, affect the marker's position in screen space, not world space. This means that the x-axis for a 2D marker runs from negative-x on the West edge of the screen to positive-x on the East edge of the screen. Negative-y to positive-y runs from the South edge of the screen to the North edge of the screen.

Properties that apply only to 3D markers affect the marker's position in world space, rather than screen space. This means that the x, y, and z-axes to which the class methods are the axes of the world, with the following layout: from negative to positive, the x-axis spans from world West to world East, the y-axis from world South to world North, and the z-axis from directly into the surface to the sky.

While a simple text symbol (TextSymbol) can be used to display a character as a marker, proper display depends on the referenced font being available on the machine or device running the app. If the exact font is not found, which is likely to occur on many mobile devices, a fallback mechanism is used to find the best available font to use. A character marker symbol authored from ArcGIS Pro, however, is represented by a vector marker symbol. This symbol stores the geometry that represents the character, is not dependent on the font to render the shape of the marker, and displays as expected on all devices.

Property Documentation

anchor : SymbolAnchor

The symbol anchor of the MarkerSymbolLayer.

The SymbolAnchor determines how the MarkerSymbolLayer is anchored. SymbolAnchor specifies the marker's anchor point and anchor placement mode. The default symbol anchor is at XYZ(0, 0, 0) and uses 'relative' mode.

See also SymbolAnchor.


heading : double

The marker symbol layer's heading: the angle of rotation about the anchor point, in degrees.

The input value can be any real number. The default value is 0. This property affects markers in both Maps and Scenes. In 2D, the rotation applies around the anchor point of the 2D marker. For 3D markers, the rotation applies around the z-axis.

Angle for MarkerSymbolLayer is measured in degrees counterclockwise from from 0 to 360. Marker symbol layers can have a separate heading value defined (which is also 0 by default). Setting a heading for a marker symbol layer does not affect the angle of the point symbol. When an angle value is set for the point symbol, however, that value is applied cumulatively to all the marker symbol layers it contains. The heading for individual symbol layers must be re-fetched in order to see the updated value. In 2D, the rotation applies around the anchor point of the 2D marker. For 3D markers, the rotation applies around the z-axis.

Angle for multilayer point symbols and marker symbol layers is measured in degrees counterclockwise from the east, from 0 to 360. The angle for a multilayer point symbol defaults to 0. Marker symbol layers can have their own angle value defined (which is also 0 by default). Setting an angle for a marker symbol layer does not affect the angle of the point symbol. When an angle value is set for the point symbol, however, that value is applied cumulatively to all the marker symbol layers it contains. Clients use the angle provided for the symbol layers when rendering the multilayer symbol.


offsetX : double

The marker symbol layer's x-offset, in DIPs.

The value can be any real number. The default value is 0. This property affects markers in both Maps and Scenes. The x-offset is a delta applied to the marker in the direction corresponding to the given value. For example, a positive x-offset moves the marker in the positive-x direction.


offsetY : double

The marker symbol layer's y-offset, in DIPs.

The value can be any real number. The default value is 0. This property affects markers in both Maps and Scenes. The y-offset is a delta applied to the marker in the direction corresponding to the given value. For example, a positive y-offset moves the marker in the positive-y direction.


size : double

The size of the marker symbol layer, in DIPs.

The value can be any positive number. The default value is 13.333 DIPs (10 points). A larger size means a larger marker.

When getting the size from a multilayer point symbol, the value reported is the largest size of all the symbol layers it contains. The symbol size is updated when its symbol layer sizes change (if there is a new largest layer size). When setting a new size at the point symbol level, the size of the largest symbol layer is given the provided value, and all the smaller layers are sized proportionately. An individual symbol layer can be given a specific size without affecting the other layers.


Signal Documentation

anchorChanged()

Emitted when the anchor property changes.

Note: The corresponding handler is onAnchorChanged.


headingChanged()

Emitted when the heading property changes.

Note: The corresponding handler is onHeadingChanged.


offsetXChanged()

Emitted when the offsetX property changes.

Note: The corresponding handler is onOffsetXChanged.


offsetYChanged()

Emitted when the offsetY property changes.

Note: The corresponding handler is onOffsetYChanged.


sizeChanged()

Emitted when the size property changes.

Note: The corresponding handler is onSizeChanged.



Feedback on this topic?