Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    timetraveller-mongodbpublic

    timetraveller-mongodb

    Store and access GeoJSON LineStrings with time components in MongoDB. Have a look at zeitpunkt to get an example of the consumed GeoJSON data.

    Although being primarily developed as database connector for timetraveller, this module can be used on its own to store and query GeoJSON LineStrings with time components, as they are used in several other tools.

    Usage

    Create a database connection:

    var Model = require('timetraveller-mongodb')
    var model = new Model({
      db: {
        host: 'localhost',
        port: 27017,
        name: 'some_db_name'
      }
    })
     
    model.connect(function onConnectionEstablished() {
      // model.connect() is called implicitly before 
      //   any other method 
    })
     
    // Do something 
     
    model.close()

    Import GeoJSON

    Use model.importGeoJSON() to import a single GeoJSON LineString.

    var geojson = {
      type: 'Feature',
      geometry: {
        type: 'LineString',
        coordinates: [ /* array of [lng,lat] coordinates */ ]
      },
      properties: {
        time: [ /* array of timestamps */ ]
      }
    }
    model.importGeoJSON(geojson, function onFinish(err) {
      console.log('Done')
    })

    Search database

    You can query the stored trajectories by calling model.findTrajectories(). It takes a boundary box and time range.

    var query = {
      bounds: { // set bounding box 
        west: 10.998195,
        east: 11.034775,
        south: 49.560791,
        north: 49.587847
      },
      time: {
        start: '2015-01-01 12:00',
        end: '2015-01-01 13:00'
      }
    }
    model.findTrajectories(query, function foundDocument(geojson) {
      console.log(geojson)
    }, function queryFinished(err) {
      console.log('Done')
    })

    Command Line

    timetraveller-mongodb provides a command line tool to import newline delimited GeoJSON streams from stdin or search in all saved entries. You can easily use the timetraveller-mongodb executable after installing it as global module:

    npm install -g timetraveller-mongodb

    The import executable timetraveller-mongodb import consumes data from stdin as produced for example by zeitpunkt or transportation.

    Call timetraveller-mongodb --help to get a list of all commands and options.

    install

    npm i timetraveller-mongodb

    Downloadsweekly downloads

    1

    version

    1.0.0

    license

    MIT

    repository

    github.com

    last publish

    collaborators

    • avatar