Class: Geolocation

ol.Geolocation

Helper class for providing HTML5 Geolocation capabilities. The Geolocation API is used to locate a user's position.

To get notified of position changes, register a listener for the generic change event on your instance of ol.Geolocation.

Example:

var geolocation = new ol.Geolocation({
  // take the projection to use from the map's view
  projection: view.getProjection()
});
// listen to changes in position
geolocation.on('change', function(evt) {
  window.console.log(geolocation.getPosition());
});

new ol.Geolocation(opt_options)

src/ol/geolocation.js, line 42
Name Type Description
options

Options.

Name Type Description
tracking boolean | undefined

Start Tracking. Default is false.

trackingOptions GeolocationPositionOptions | undefined

Tracking options. See http://www.w3.org/TR/geolocation-API/#position_options_interface.

projection ol.ProjectionLike

The projection the position is reported in.

Fires:

Extends

Observable Properties

Name Type Settable ol.ObjectEvent type Description
accuracy number | undefined no change:accuracy

The accuracy of the position measurement in meters.

accuracyGeometry ol.geom.Geometry no change:accuracygeometry

A geometry of the position accuracy.

altitude number | undefined no change:altitude

The altitude of the position in meters above mean sea level.

altitudeAccuracy number | undefined no change:altitudeaccuracy

The accuracy of the altitude measurement in meters.

heading number | undefined no change:heading

The heading of the device in radians from north.

position ol.Coordinate | undefined no change:position

The current position of the device reported in the current projection.

projection ol.proj.Projection | undefined yes change:projection

The projection the position is reported in.

speed number | undefined no change:speed

The instantaneous speed of the device in meters per second.

tracking boolean yes change:tracking

The device location is being tracked.

trackingOptions GeolocationPositionOptions | undefined yes change:trackingoptions

PositionOptions as defined by the HTML5 Geolocation spec .

Methods

changed() inherited experimental

src/ol/observable.js, line 58

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

dispatchEvent(event) inherited experimental

src/ol/observable.js, line 75

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 Object | ol.events.Event | string

Event object.

get(key){*} inherited

src/ol/object.js, line 148

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

getAccuracy(){number|undefined}

src/ol/geolocation.js, line 186

Get the accuracy of the position in meters.

Returns:
The accuracy of the position measurement in meters.

getAccuracyGeometry(){ol.geom.Geometry}

src/ol/geolocation.js, line 198

Get a geometry of the position accuracy.

Returns:
A geometry of the position accuracy.

getAltitude(){number|undefined}

src/ol/geolocation.js, line 211

Get the altitude associated with the position.

Returns:
The altitude of the position in meters above mean sea level.

getAltitudeAccuracy(){number|undefined}

src/ol/geolocation.js, line 224

Get the altitude accuracy of the position.

Returns:
The accuracy of the altitude measurement in meters.

getHeading(){number|undefined}

src/ol/geolocation.js, line 236

Get the heading as radians clockwise from North.

Returns:
The heading of the device in radians from north.

getKeys(){Array.<string>} inherited

src/ol/object.js, line 162

Get a list of object property names.

Returns:
List of property names.

getPosition(){ol.Coordinate|undefined}

src/ol/geolocation.js, line 249

Get the position of the device.

Returns:
The current position of the device reported in the current projection.

getProjection(){ol.proj.Projection|undefined}

src/ol/geolocation.js, line 262

Get the projection associated with the position.

Returns:
The projection the position is reported in.

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

src/ol/object.js, line 172

Get an object of all property names and values.

Returns:
Object.

getRevision(){number} inherited experimental

src/ol/observable.js, line 84

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

Returns:
Revision.

getSpeed(){number|undefined}

src/ol/geolocation.js, line 275

Get the speed in meters per second.

Returns:
The instantaneous speed of the device in meters per second.

getTracking(){boolean}

src/ol/geolocation.js, line 287

Determine if the device location is being tracked.

Returns:
The device location is being tracked.

getTrackingOptions(){GeolocationPositionOptions|undefined}

src/ol/geolocation.js, line 302

Get the tracking options.

See:
Returns:
PositionOptions as defined by the HTML5 Geolocation spec .

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

src/ol/observable.js, line 99

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

The object to use as this in listener.

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, opt_this){ol.EventsKey|Array.<ol.EventsKey>} inherited

src/ol/observable.js, line 124

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

The object to use as this in listener.

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, opt_silent) inherited

src/ol/object.js, line 197

Sets a value.

Name Type Description
key string

Key name.

value *

Value.

silent boolean

Update without triggering an event.

setProjection(projection)

src/ol/geolocation.js, line 315

Set the projection to use for transforming the coordinates.

Name Type Description
projection ol.proj.Projection

The projection the position is reported in.

setProperties(values, opt_silent) inherited

src/ol/object.js, line 217

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

Update without triggering an event.

setTracking(tracking)

src/ol/geolocation.js, line 326

Enable or disable tracking.

Name Type Description
tracking boolean

Enable tracking.

setTrackingOptions(options)

src/ol/geolocation.js, line 340

Set the tracking options.

Name Type Description
options GeolocationPositionOptions

PositionOptions as defined by the HTML5 Geolocation spec .

See:

un(type, listener, opt_this) inherited

src/ol/observable.js, line 147

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

The object which was used as this by the listener.

unByKey(key) inherited

src/ol/observable.js, line 168

Removes an event listener using the key returned by on() or once(). Note that using the ol.Observable.unByKey static function is to be preferred.

Name Type Description
key ol.EventsKey | Array.<ol.EventsKey>

The key returned by on() or once() (or an array of keys).

unset(key, opt_silent) inherited

src/ol/object.js, line 231

Unsets a property.

Name Type Description
key string

Key name.

silent boolean

Unset without triggering an event.