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 43
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.Object.Event type Description
accuracy number | undefined no change:accuracy

The accuracy of the position measurement in meters.

accuracyGeometry ol.geom.Polygon 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

src/ol/observable.js, line 58

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

dispatchEvent(event) inherited

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 101

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

getAccuracy(){number|undefined}

src/ol/geolocation.js, line 187

Get the accuracy of the position in meters.

Returns:
The accuracy of the position measurement in meters.

getAccuracyGeometry(){ol.geom.Polygon}

src/ol/geolocation.js, line 199

Get a geometry of the position accuracy.

Returns:
A geometry of the position accuracy.

getAltitude(){number|undefined}

src/ol/geolocation.js, line 212

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 225

Get the altitude accuracy of the position.

Returns:
The accuracy of the altitude measurement in meters.

getHeading(){number|undefined}

src/ol/geolocation.js, line 237

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 115

Get a list of object property names.

Returns:
List of property names.

getPosition(){ol.Coordinate|undefined}

src/ol/geolocation.js, line 250

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 263

Get the projection associated with the position.

Returns:
The projection the position is reported in.

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

src/ol/object.js, line 125

Get an object of all property names and values.

Returns:
Object.

getRevision(){number} inherited

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 276

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 288

Determine if the device location is being tracked.

Returns:
The device location is being tracked.

getTrackingOptions(){GeolocationPositionOptions|undefined}

src/ol/geolocation.js, line 303

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 150

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 316

Set the projection to use for transforming the coordinates.

Name Type Description
projection ol.ProjectionLike

The projection the position is reported in.

setProperties(values, opt_silent) inherited

src/ol/object.js, line 170

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 327

Enable or disable tracking.

Name Type Description
tracking boolean

Enable tracking.

setTrackingOptions(options)

src/ol/geolocation.js, line 341

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.

unset(key, opt_silent) inherited

src/ol/object.js, line 184

Unsets a property.

Name Type Description
key string

Key name.

silent boolean

Unset without triggering an event.