Class: DragBox

ol/interaction/DragBox~DragBox


import DragBox from 'ol/interaction/DragBox.js';

Allows the user to draw a vector box by clicking and dragging on the map, normally combined with an ol/events/condition that limits it to when the shift or other key is held down. This is used, for example, for zooming to a specific area of the map (see DragZoom and DragRotateAndZoom).

new DragBox(options)

Name Type Description
className string (defaults to 'ol-dragbox')

CSS class name for styling the box.

condition Condition | undefined

A function that takes an MapBrowserEvent and returns a boolean to indicate whether that event should be handled. Default is ol/events/condition~mouseActionButton.

minArea number (defaults to 64)

The minimum area of the box in pixel, this value is used by the default boxEndCondition function.

boxEndCondition EndCondition | undefined

A function that takes a MapBrowserEvent and two Pixels to indicate whether a boxend event should be fired. Default is true if the area of the box is bigger than the minArea option.

onBoxEnd function | undefined

Code to execute just before boxend is fired.

Fires:

Subclasses

Extends

Observable Properties

Name Type Settable ObjectEvent type Description
active boolean yes change:active

true if the interaction is active, false otherwise.

Methods

Increases the revision counter and dispatches a 'change' event.

dispatchEvent(event){boolean | undefined} inherited

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 type property.

Name Type Description
event BaseEvent | string

Event object.

Returns:
false if anyone called preventDefault on the event object or if any of the listeners returned false.

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

Return whether the interaction is currently active.

Returns:
true if the interaction is active, false otherwise.

Returns geometry of last drawn box.

Returns:
Geometry.

getKeys(){Array.<string>} inherited

Get a list of object property names.

Returns:
List of property names.

Get the map associated with this interaction.

Returns:
Map.

getPointerCount(){number} inherited

Returns the current number of pointers involved in the interaction, e.g. 2 when two fingers are used.

Returns:
The number of pointers.

getProperties(){Object.<string, *>} inherited

Get an object of all property names and values.

Returns:
Object.

getRevision(){number} inherited

Get the version number for this object. Each time the object is modified, its version number will be incremented.

Returns:
Revision.

handleEvent(mapBrowserEvent){boolean} inherited

Handles the map browser event and may call into other functions, if event sequences like e.g. 'drag' or 'down-up' etc. are detected.

Name Type Description
mapBrowserEvent MapBrowserEvent

Map browser event.

Returns:
false to stop event propagation.

on(type, listener){EventsKey | Array<EventsKey>} inherited

Listen for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

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

Listen once for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

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.

set(key, value, silent) inherited

Sets a value.

Name Type Description
key string

Key name.

value *

Value.

silent boolean | undefined

Update without triggering an event.

Activate or deactivate the interaction.

Name Type Description
active boolean

Active.

setProperties(values, silent) inherited

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
values Object.<string, *>

Values.

silent boolean | undefined

Update without triggering an event.

un(type, listener) inherited

Unlisten for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

unset(key, silent) inherited

Unsets a property.

Name Type Description
key string

Key name.

silent boolean | undefined

Unset without triggering an event.