GeometryEditorTool

sealed class GeometryEditorTool

A base class for tools that determine how you interact with a view when editing geometries with a GeometryEditor. Different types of GeometryEditorTool provide different ways of interacting with the view to create and edit geometries with a GeometryEditor. They control how an interaction (for example a tap or a drag gesture on the map view) uses the interaction position to update the GeometryEditor.geometry, or to navigate the map view. VertexTool, FreehandTool, and ShapeTool allow you to customize how the GeometryEditor reacts to each user interaction, allowing you to tailor the exact behavior appropriately for your users and workflow. GeometryEditorTool also determines the appearance of the GeometryEditor.geometry by specifying the GeometryEditorStyle used to draw the geometry in the view.

You may wish to create multiple different tool objects in order to hold different settings, and set them into GeometryEditor.tool as appropriate for your workflow. For example, you could create multiple VertexTool objects with GeometryEditorStyle values corresponding the different symbols used by different feature layers.

The different tools do not correspond to different geometry types - for example the VertexTool can be used to edit Point, Multipoint, Polyline and Polygon geometries. The type of geometry being edited using the tool is defined by the start method parameter (see GeometryEditor.start(GeometryType) and GeometryEditor.start(Geometry).

When a GeometryEditorTool is created, a consistent set of default symbology appropriate for that tool type is applied to the GeometryEditorTool.style property.

Since

200.1.0

See also

GeometryEditor.geometryChanged
GeometryEditor.selectedElementChanged

Inheritors

Properties

Link copied to clipboard

Defines the visual appearance of GeometryEditor geometries when this tool is in use. When a GeometryEditorTool is created, a consistent set of default symbology appropriate for that tool type is applied to its GeometryEditorTool.style property. For example, FreehandTool and ShapeTool define all vertex symbols as null by default because they use drag gestures to define entire parts of polyline and polygon geometries, whereas the VertexTool defines non-null vertex symbols because it is important to be able to see and interact with individual vertices when editing geometries with this tool.