michael farrell
michael farrell

Reputation: 21

Log GPS Points to Map

Is it currently possible to use GEOLOCATION to enter points or polygons to a map layer, and access that information in form of SHP file, GPX, or KML?

The only examples I currently see render an IMAGE which is pretty much useless from a 'mapping' standpoint.

Thanks

Upvotes: 0

Views: 210

Answers (1)

ahocevar
ahocevar

Reputation: 5647

OpenLayers 3 provides everything you need to write such an application. To track a geolocation, you can do something like this:

var geolocation = new ol.Geolocation({
  tracking: true
});
var track;
geolocation.on('change:position', function() {
  var coordinate = geolocation.getPosition();
  if (track) {
    track.appendCoordinate(coordinate);
  } else {
    track = new ol.geom.LineString(coordinate);
  }
});

To create a GPX from the track, you can do

var gpx = new ol.format.GPX().writeFeatures([new ol.Feature(track)]);

The gpx variable now holds a string of the serialized GPX document. You can write its content to a file or upload it to a server or do whatever you want to do with it.

Upvotes: 1

Related Questions