# Class: DragBox

## ol.interaction.DragBox

Allows the user to zoom the map by clicking and dragging on the map, normally combined with an `ol.events.condition` that limits it to when the shift key is held down.

This interaction is only supported for mouse devices.

#### new ol.interaction.DragBox(opt_options) experimental

src/ol/interaction/dragboxinteraction.js, line 86

  Name | Type | Description
  --- | --- | ---
  `options` | optional Options.
  Name | Type | Description
  --- | --- | ---
  `condition` | ol.events.ConditionType | undefined | optional A conditional modifier (i.e. Shift key) that determines if the interaction is active or not, default is always.
  `style` | ol.style.Style | Style for the box.

  ##### Fires:

  - `boxend` (ol.DragBoxEvent) experimental - Triggered upon drag box end.
  - `boxstart` (ol.DragBoxEvent) experimental - Triggered upon drag box start.

### Subclasses

- ol.interaction.DragZoom

### Extends

- ol.interaction.Pointer

### Methods

#### dispatchChangeEvent() inherited experimental

src/ol/observable.js, line 41

  Dispatches a `change` event.

  ##### Fires:

  - `change` experimental

#### getGeometry(){ol.geom.Geometry} experimental

src/ol/interaction/dragboxinteraction.js, line 138

  Returns geometry of last drawn box.

  ##### Returns:

  Geometry.

#### on(type, listener, opt_this){goog.events.Key} inherited experimental

src/ol/observable.js, line 63

  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.
  `this` | Object | optional The object to use as `this` in `listener`.

  ##### Returns:

  Unique key for the listener.

#### once(type, listener, opt_this){goog.events.Key} inherited experimental

src/ol/observable.js, line 76

  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.
  `this` | Object | optional The object to use as `this` in `listener`.

  ##### Returns:

  Unique key for the listener.

#### un(type, listener, opt_this) inherited experimental

src/ol/observable.js, line 88

  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.
  `this` | Object | optional The object to use as `this` in `listener`.

#### unByKey(key) inherited experimental

src/ol/observable.js, line 98

  Removes an event listener using the key returned by `on()` or `once()`.

  Name | Type | Description
  --- | --- | ---
  `key` | goog.events.Key | Key.