Package-level declarations

Types

Link copied to clipboard

Allows you to edit geometries in a GeometryEditor by using freehand gestures. This tool is suitable for creating and editing Polygon and Polyline geometries. Each drag gesture creates a new part of the Multipart geometry.

Link copied to clipboard

Allows you to create new geometries, and change existing geometries, by interacting with a MapView. To use a GeometryEditor:

Link copied to clipboard

The base class for all selectable elements in a GeometryEditor. GeometryEditor.selectedElement returns an object that inherits from this base class, representing the specific type of element that is selected.

Link copied to clipboard

The element in a GeometryEditor representing the entire GeometryEditor.geometry. A GeometryEditorGeometry represents the entire geometry in a GeometryEditor - it displays the existing location and shape of the geometry, and allows you to select and move the entire geometry in interactive workflows. For more information about selecting and working with selections, see GeometryEditor.

Link copied to clipboard

The GeometryEditorGrowEffect is used to control which geometry editor elements have the grow effect applied to them. Tap interaction based tools that use an InteractionConfiguration or a ReticleInteractionConfiguration can use the GeometryEditorGrowEffect to override the interaction configuration and disable the grow effect when a GeometryEditorVertex or GeometryEditorMidVertex is hovered.

Link copied to clipboard

Interface for the geometry editor elements returned by the GeometryEditor.hoveredElement.

Link copied to clipboard

A mid-vertex element in a GeometryEditor. Mid-vertices do not exist in the GeometryEditor.geometry, but instead exist only in the display. They are displayed between vertices in polygon and polyline geometries and are used in interactive workflows as a visual cue to indicate new vertices can be inserted between existing vertices. They may be most helpful for users with less editing experience. Tap on a mid-vertex to select it, and drag to change the mid-vertex into a vertex (GeometryEditorVertex) in the GeometryEditor.geometry and move it to the required location.

Link copied to clipboard

A Part element in a GeometryEditor editing a Multipart geometry. Polygons and polylines are Multipart geometries that can consist of one or more Part objects. A GeometryEditorPart represents a part of the geometry in a GeometryEditor - it displays the existing location and shape of the part, and allows you to select and move the part in interactive workflows. For more information about selecting and working with selections, see GeometryEditor.

Link copied to clipboard

A visual aid displayed on the map view to allow precise editing of a geometry on a touch device, using a GeometryEditor. A GeometryEditorReticle is a visual aid displayed on the map view to help precise targeting on a map, separate to the interaction position. It is ideal for use on touch devices, as it can provide an alternative to a mouse hover, allowing you to see a precise position before you tap the screen. This can be especially useful for snapping (see SnapSettings) to allow you to see visual snapping feedback during vertex addition and moves, without fingers hiding the screen and the snapping feedback.

Link copied to clipboard

Determines how a geometry can be interactively scaled (resized) while using the GeometryEditor. Set the InteractionConfiguration.scaleMode property to one of the values to determine interactive scaling behavior of a GeometryEditor. Additionally, this value also determines how the initial shape is created when using the ShapeTool.

Link copied to clipboard

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 Feature or Graphic editing workflow, you can set the GeometryEditorStyle.lineSymbol to match the symbol of a polyline geometry in order to provide visual consistency.

Link copied to clipboard
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.

Link copied to clipboard

A vertex element in a GeometryEditor. Vertices represent points in a GeometryEditor.geometry. They display the existing location of the point, and are used in interactive workflows to allow you to select and move those points. For more information about selecting and working with selections, see GeometryEditor.

Link copied to clipboard

Defines the set of interactive operations you can enable or disable for a VertexTool, FreehandTool, or ShapeTool. An InteractionConfiguration allows you to customize the interactive geometry editing experience to suit your specific users. For example:

Link copied to clipboard

Allows you to edit geometries in a GeometryEditor using a GeometryEditorReticle, ideal for precise editing with snapping on a touch screen with a fully customizable user experience. The ProgrammaticReticleTool provides precise, vertex-based geometry editing on touch devices using the GeometryEditor with a fully customizable user experience. Unlike the ReticleVertexTool, the ProgrammaticReticleTool has no ReticleInteractionConfiguration to define the effect of tap interactions. Tap interactions have no effect and are not handled by this tool. Instead, the programmatic methods can be called when required to give granular control for custom workflows such as those using buttons or other triggers. To provide the ability to programmatically move, resize, and rotate whole geometries, or parts of multipart geometries, you can use the programmatic calls on the GeometryEditor such as GeometryEditor.rotateSelectedElement, GeometryEditor.moveSelectedElement and GeometryEditor.scaleSelectedElement.

Link copied to clipboard

Defines the set of interactive operations you can enable or disable for a ReticleVertexTool. A ReticleInteractionConfiguration allows you to customize the interactive geometry editing experience when editing with a reticle to suit your specific users and app workflow. The default values of ReticleVertexTool.configuration allow creating and moving vertices.

Link copied to clipboard

A base class for the ReticleVertexTool and ProgrammaticReticleTool. A GeometryEditorReticle is a visual aid used to indicate the edit position, displayed on a map view. By separating the point at which you interact with the screen from the point at which an edit takes place, you are able to clearly see where new vertices will be added before tapping the screen or pressing a button to place a vertex. Additionally, when snapping is enabled (SnapSettings.isEnabled), the reticle allows you to see visual snapping feedback during vertex addition and moves, without fingers or a stylus hiding the screen and the snapping feedback. The ReticleTool.reticle can be used to create and edit Multipoint, Point, Polygon, and Polyline geometries, by adding and moving individual vertices. A default reticle is provided, which can be customized to suit your specific app appearance, style, and accessibility requirements - for more information see GeometryEditorReticle. A consistent set of default symbology appropriate for these tools is returned from GeometryEditorTool.style. These tools takes a simpler approach to drawing the geometry than the VertexTool when there is a move in progress, by only displaying the state of the geometry elements accounting for the current move, and not displaying the existing position of any elements that will be affected by the move.

Link copied to clipboard

Allows you to edit geometries in a GeometryEditor using a GeometryEditorReticle, ideal for precise editing with snapping on a touch screen using tap driven interactions. The ReticleVertexTool is recommended for a precise, vertex-based geometry editing on touch devices when using the GeometryEditor. This tool can be used to create and edit Multipoint, Point, Polygon, and Polyline geometries, by adding and moving individual vertices using the ReticleTool.reticle.

Link copied to clipboard

Allows you to create polygon or polyline geometries with a geometric shape by using a single drag interaction. Create a new shape tool using ShapeTool.create and specify the type of shape to be created

Link copied to clipboard
sealed class ShapeToolType

The shapes that can be created by using a ShapeTool with a GeometryEditor.

Link copied to clipboard

Contains information on the resulting snap state when a snap or unsnap occurs. When snapping is enabled and the snap candidate used by the GeometryEditor updates, SnapChangedInfo is a parameter which exposes the SnapState.

Link copied to clipboard
sealed class SnapRuleBehavior

Describes how SnapRules affects the interactive snapping behavior of a SnapSource. When rule-based snapping is configured on a GeometryEditor, each SnapSourceSettings.ruleBehavior indicates the snapping behavior for the snap source, based on the SnapRules that were passed to SnapSettings.syncSourceSettings. For more information about configuring a GeometryEditor to use rule-based snapping, see SnapRules.

Link copied to clipboard
class SnapRules

A table of snapping rules to apply to one or more SnapSource objects When using the GeometryEditor to edit the geometry of features that participate in a utility network, rule-based snapping can be configured on SnapSettings. Utility networks rely on geometric coincident-based connectivity to provide pathways for resources, and snapping can be a useful tool to help maintain those pathways. A utility network contains rules for connectivity, and using rule-based snapping respects the rules for the specific feature type being edited, based on its asset type and asset group, helping maintain network connectivity.

Link copied to clipboard

Controls interactive snapping functionality for the GeometryEditor. Snapping allows you to create geometries that connect to each other and are coincident, so that interactive edits are more accurate, with fewer errors.

Link copied to clipboard
interface SnapSource

Indicates a source of geometries that a GeometryEditor could snap interactive edits to. SnapSource is implemented by objects that can provide a source of geometries to snap interactive edits to when using the GeometryEditor. For example, a feature layer or graphics overlay can provide a set of geometries that you may want your users to snap to.

Link copied to clipboard

Controls how snap sources are enabled when calling SnapSettings.syncSourceSettings.

Link copied to clipboard

Configures a valid source of geometries that the GeometryEditor can snap interactive edits to. Following a call to SnapSettings.syncSourceSettings or SnapSettings.syncSourceSettings, the SnapSettings.sourceSettings collection is populated with SnapSourceSettings objects that are valid for snapping. Each represents a SnapSource that is in the currently connected map and provides full resolution geometries suitable for snapping.

Link copied to clipboard
sealed class SnapState

The resulting snap state when snapping to or from a snap candidate.

Link copied to clipboard

Allows you to edit geometries in a GeometryEditor by interacting with individual vertices. The default GeometryEditor.tool is a VertexTool, and is suitable for creating and editing the widest range of geometry types - Multipoint, Point, Polygon, and Polyline. You create and edit these geometries by creating, selecting, and transforming individual vertices, and can also select and transform parts of Multipart (polygon and polyline) geometries. Use the VertexTool.configuration properties to customize the possible interactions.