Geometry Editor Style
Defines the visual appearance of a geometry displayed by the GeometryEditor. Each GeometryEditorTool has a GeometryEditorStyle which controls the appearance of the different elements of the GeometryEditor.geometry. You can change the symbology used for vertices, selections, lines and fills. For example, in a com.arcgismaps.data.Feature or com.arcgismaps.mapping.view.Graphic editing workflow, you can set the GeometryEditorStyle.lineSymbol to match the symbol of a polyline geometry in order to provide visual consistency.
When a GeometryEditorTool is created, a consistent set of default symbology appropriate for that tool type is applied to its GeometryEditorTool.style property.
You can change the GeometryEditorStyle.opacity of the overall style, or alternatively set different opacity (alpha) values on the individual symbols of the style, so that the underlying map components are visible through the geometry being edited.
You can set each symbol to null - consider carefully how this can affect your workflows, as you will not be able to see, select, or otherwise interact with those GeometryEditorElement types.
When snapping is enabled (SnapSettings.isEnabled), the visual cues that indicate to a user when snapping has occurred can be customized using GeometryEditorStyle.snappedToVertexSymbol, GeometryEditorStyle.snappedToLineSymbol, and GeometryEditorStyle.multipleSnapCandidatesSymbol.
Since
200.1.0
See also
Constructors
Creates a new GeometryEditorStyle with a consistent set of red symbols, and displays white numbers on vertices. Using this constructor results in the same default symbology as the VertexTool.style.
Properties
The symbol used to draw control handles for interactive scaling when a scalable element is selected in the GeometryEditor and InteractionConfiguration.allowScalingSelectedElement is true. When the GeometryEditor.selectedElement is scalable, this symbol displays control handles to allow interactive scaling (resizing) of the element. The handles are drawn upon the bounding box (see GeometryEditorStyle.boundingBoxSymbol). If the selected element cannot be scaled (see GeometryEditorElement.canScale) then this symbol is ignored and no handles are drawn.
The symbol used to draw a bounding box when a movable, rotatable, or scalable element is selected in the GeometryEditor and InteractionConfiguration.allowScalingSelectedElement is true. When the GeometryEditor.selectedElement is movable, rotatable, or scalable, this symbol displays its minimum bounding box. If the selected element cannot be moved (GeometryEditorElement.canMove), rotated (GeometryEditorElement.canRotate), or scaled (GeometryEditorElement.canScale) then this symbol is ignored and no box is drawn.
The symbol used to draw the edges currently being changed by an interactive edit, when editing polyline or polygon geometries. During an interactive edit, this symbol displays the current location of edges (polylines, or boundaries of polygons) that are changed by the interaction in progress. Unchanged lines remain displayed with GeometryEditorStyle.lineSymbol.
The symbol used to draw vertices currently being changed by an interactive edit, when editing any geometry type. During an interactive edit, this symbol displays the current location of vertices that are changed by the interaction in progress. Unchanged vertices remain displayed with GeometryEditorStyle.vertexSymbol.
The symbol used to fill the current geometry when editing polygon geometries. The default value is a red semi-transparent com.arcgismaps.mapping.symbology.SimpleFillSymbol with a red outline.
The symbol used to draw the current geometry when editing polyline geometries, and the outline of the geometry when editing polygon geometries. The default value is a solid red com.arcgismaps.mapping.symbology.SimpleLineSymbol.
The symbol used to draw the mid-vertices of the current geometry when editing polygon or polyline geometries. Mid-vertices do not exist in the GeometryEditor.geometry, but instead exist only in the display, located between vertices in polygon and polyline geometries as a visual cue for interactive editing. When moved interactively, a new vertex is inserted at that location.
The symbol used to indicate that multiple candidates for snapping exist at the interactive edit position, when the GeometryEditor has snapped the interaction position to the best candidate. This symbol may indicate, for example, an intersection of any two different graphic or feature geometries, two very close graphic or feature geometries, the presence of multiple vertices, or a self-intersection of a graphic or feature geometry. The GeometryEditorStyle.snappedToLineSymbol and/or GeometryEditorStyle.snappedToVertexSymbol will also be displayed when this symbols is displayed.
The opacity of the GeometryEditor display in the view, a value between 0 (fully transparent) and 1 (fully opaque). Default is 1. It can be useful to change opacity of the entire GeometryEditor display to allow features, graphics, or imagery in the underlying map view to show through the geometry editor display, which can help allow precise placement of new vertices relative to those map components.
The symbol used to draw a control handle for interactive rotation of the selected element, when a rotatable element is selected in the GeometryEditor and InteractionConfiguration.allowRotatingSelectedElement is true. When the GeometryEditor.selectedElement is rotatable, this symbol displays a control handle to allow interactive rotation of the element. The handle is drawn above the top of the bounding box (see GeometryEditorStyle.boundingBoxSymbol). If the selected element cannot be rotated (see GeometryEditorElement.canRotate) then this symbol is ignored and no rotation handle is drawn.
The symbol used to draw the currently selected mid-vertex of the current geometry when editing polygon or polyline geometries. When a mid-vertex is selected, it is displayed with this symbol instead of GeometryEditorStyle.midVertexSymbol.
The symbol used to draw the currently selected vertex of the current geometry when editing any geometry type. This symbol can be used to emphasize the currently selected vertex, which can be useful if you require extra emphasis in addition to the selection halo, or wish to make the selected vertex a larger target for user interactions.
The symbol used to indicate an edge (segment) of a geometry during an interactive edit, when the GeometryEditor has snapped the interaction position to that edge. This symbol is shown when an edge (segment) is the best candidate to snap the edit position to. It may be shown in addition to GeometryEditorStyle.snappedToVertexSymbol, because the end of a segment effectively shares the same position as the vertices that define the start and end of that segment.
The symbol used to indicate a vertex of a geometry during an interactive edit, when the GeometryEditor has snapped the interaction position to that vertex. This symbol is shown when a vertex is the best candidate to snap the edit position to. When the vertex being edited has been snapped to a vertex, the GeometryEditorStyle.feedbackVertexSymbol is also adjusted to this position, which may differ slightly from the (unsnapped) pointer position. This symbol is drawn on top of the GeometryEditorStyle.feedbackVertexSymbol.
The symbol used to draw the vertices of the current geometry when editing any geometry type. Setting a larger symbol can help users on touch devices select and work with vertices, especially for field apps where users may wear thick gloves that work with touch screens.
The symbol used to draw vertex numbers for the current geometry. If null, no numbers are displayed. By default when using a FreehandTool, this symbol is null.