-
new Snap(options)
interaction/Snap.js, line 324 -
Name Type Description featuresCollection<Feature> | undefined Snap to these features. Either this option or source should be provided.
sourceVectorSource | undefined Snap to features from this source. Either this option or features should be provided
edgeboolean (defaults to true) Snap to edges.
vertexboolean (defaults to true) Snap to vertices.
intersectionboolean (defaults to false) Snap to intersections between segments.
pixelTolerancenumber (defaults to 10) Pixel tolerance for considering the pointer close enough to a segment or vertex for snapping.
segmentersSegmenters | undefined Custom segmenters by
Type. By default, the following segmenters are used:Point: A one-dimensional segment (e.g.[[10, 20]]) representing the point.LineString: One two-dimensional segment (e.g.[[10, 20], [30, 40]]) for each segment of the linestring.Polygon: One two-dimensional segment for each segment of the exterior ring and the interior rings.Circle: One two-dimensional segment for each segment of a regular polygon with 32 points representing the circle circumference.GeometryCollection: All segments of the contained geometries.MultiPoint: One one-dimensional segment for each point.MultiLineString: One two-dimensional segment for each segment of the linestrings.MultiPolygon: One two-dimensional segment for each segment of the polygons.
Fires:
-
change(BaseEvent) - Generic change event. Triggered when the revision counter is increased. -
change:active(ObjectEvent) -
error(BaseEvent) - Generic error event. Triggered when an error occurs. -
propertychange(ObjectEvent) - Triggered when a property is changed. -
snap(SnapEvent) - Triggered upon snapping to vertex or edge -
unsnap(SnapEvent) - Triggered if no longer snapped
Extends
- PointerInteraction
Observable Properties
| Name | Type | Settable | ObjectEvent type | Description |
|---|---|---|---|---|
active |
boolean | yes | change:active |
|
Methods
-
addFeature(feature, register)
interaction/Snap.js, line 450 -
Add a feature to the collection of features that we may snap to.
Name Type Description featureFeature Feature.
registerboolean | undefined Whether to listen to the feature change or not Defaults to
true. -
changed() inherited
Observable.js, line 72 -
Increases the revision counter and dispatches a 'change' event.
-
dispatchEvent(event){boolean | undefined} inherited
events/Target.js, line 85 -
Dispatches an event and calls all listeners listening for events of this type. The event parameter can either be a string or an Object with a
typeproperty.Name Type Description eventBaseEvent | string Event object.
Returns:
falseif anyone called preventDefault on the event object or if any of the listeners returned false.
-
get(key){*} inherited
Object.js, line 136 -
Gets a value.
Name Type Description keystring Key name.
Returns:
Value.
-
getActive(){boolean} inherited
interaction/Interaction.js, line 82 -
Return whether the interaction is currently active.
Returns:
trueif the interaction is active,falseotherwise.
-
getKeys(){Array.<string>} inherited
Object.js, line 149 -
Get a list of object property names.
Returns:
List of property names.
-
getMap(){Map | null} inherited
interaction/Interaction.js, line 91 -
Get the map associated with this interaction.
Returns:
Map.
-
getPointerCount(){number} inherited
interaction/Pointer.js, line 95 -
Returns the current number of pointers involved in the interaction, e.g.
2when two fingers are used.Returns:
The number of pointers.
-
getProperties(){NoInfer.<Properties>} inherited
Object.js, line 158 -
Get an object of all property names and values.
Returns:
Object.
-
getRevision(){number} inherited
Observable.js, line 83 -
Get the version number for this object. Each time the object is modified, its version number will be incremented.
Returns:
Revision.
-
handleEvent(evt){boolean}
interaction/Snap.js, line 585 -
Name Type Description evtMapBrowserEvent Map browser event.
Returns:
falseto stop event propagation.
-
on(type, listener){EventsKey | Array<EventsKey>} inherited
Observable.js, line 156 -
Listen for a certain type of event.
Name Type Description typestring | Array.<string> The event type or array of event types.
listenerfunction The listener function.
Returns:
Unique key for the listener. If called with an array of event types as the first argument, the return will be an array of keys.
-
once(type, listener){EventsKey | Array<EventsKey>} inherited
Observable.js, line 168 -
Listen once for a certain type of event.
Name Type Description typestring | Array.<string> The event type or array of event types.
listenerfunction The listener function.
Returns:
Unique key for the listener. If called with an array of event types as the first argument, the return will be an array of keys.
-
removeFeature(feature, unlisten)
interaction/Snap.js, line 697 -
Remove a feature from the collection of features that we may snap to.
Name Type Description featureFeature Feature
unlistenboolean | undefined Whether to unlisten to the feature change or not. Defaults to
true. -
set(key, value, silent) inherited
Object.js, line 218 -
Sets a value.
Name Type Description keystring Key name.
value* Value.
silentboolean | undefined Update without triggering an event.
-
setActive(active) inherited
interaction/Interaction.js, line 111 -
Activate or deactivate the interaction.
Name Type Description activeboolean Active.
-
setProperties(values, silent) inherited
Object.js, line 241 -
Sets a collection of key-value pairs. Note that this changes any existing properties and adds new ones (it does not remove any existing properties).
Name Type Description valuesPartial.<NoInfer.<Properties>> Values.
silentboolean | undefined Update without triggering an event.
-
un(type, listener) inherited
Observable.js, line 177 -
Unlisten for a certain type of event.
Name Type Description typestring | Array.<string> The event type or array of event types.
listenerfunction The listener function.
-
unset(key, silent) inherited
Object.js, line 265 -
Unsets a property.
Name Type Description keystring Key name.
silentboolean | undefined Unset without triggering an event.