All Projects → GlidingWeb → Igcwebview2

GlidingWeb / Igcwebview2

Licence: mit
Modularised version of IGCWebview

Programming Languages

javascript
184084 projects - #8 most used programming language

Labels

Projects that are alternatives of or similar to Igcwebview2

Comma2k19
A driving dataset for the development and validation of fused pose estimators and mapping algorithms
Stars: ✭ 391 (+3810%)
Mutual labels:  gps
Androbd
Android OBD diagnostics with any ELM327 adapter
Stars: ✭ 573 (+5630%)
Mutual labels:  gps
Zeps Gui
L'interface d'un outil de calcul d'itinéraires, principalement utilisé pour se repérer dans le Netherrail de Zcraft. Nécessite https://github.com/zDevelopers/ZePS-Core .
Stars: ✭ 5 (-50%)
Mutual labels:  gps
Gnss Ins Sim
Open-source GNSS + inertial navigation, sensor fusion simulator. Motion trajectory generator, sensor models, and navigation
Stars: ✭ 422 (+4120%)
Mutual labels:  gps
Traccar Web
Traccar GPS Tracking System
Stars: ✭ 465 (+4550%)
Mutual labels:  gps
Gpxpy
gpx-py is a python GPX parser. GPX (GPS eXchange Format) is an XML based file format for GPS tracks.
Stars: ✭ 707 (+6970%)
Mutual labels:  gps
Navit
The open source (GPL v2) turn-by-turn navigation software for many OS
Stars: ✭ 368 (+3580%)
Mutual labels:  gps
Qwiic gps Rtk2
A breakout board for the ZED-F9P RTK module from ublox.
Stars: ✭ 27 (+170%)
Mutual labels:  gps
Neogps
NMEA and ublox GPS parser for Arduino, configurable to use as few as 10 bytes of RAM
Stars: ✭ 507 (+4970%)
Mutual labels:  gps
Gnss Sdr
GNSS-SDR, an open-source software-defined GNSS receiver
Stars: ✭ 801 (+7910%)
Mutual labels:  gps
Exifr
EXIF Reader
Stars: ✭ 450 (+4400%)
Mutual labels:  gps
Traccar Client Android
Traccar Client for Android
Stars: ✭ 464 (+4540%)
Mutual labels:  gps
Locationmanager
Simplify getting user's location for Android
Stars: ✭ 730 (+7200%)
Mutual labels:  gps
Gpxsee
GPS log file viewer and analyzer with support for GPX, TCX, KML, FIT, IGC, NMEA, SLF, SML, LOC, GPI, GeoJSON and OziExplorer files.
Stars: ✭ 406 (+3960%)
Mutual labels:  gps
137 Stopmove
Algorithms to automatically discover stops and moves in GPS trajectories.
Stars: ✭ 19 (+90%)
Mutual labels:  gps
Pynmea2
Python library for parsing the NMEA 0183 protocol (GPS)
Stars: ✭ 379 (+3690%)
Mutual labels:  gps
Map Matching
The map matching functionality is now located in the main repository https://github.com/graphhopper/graphhopper#map-matching
Stars: ✭ 665 (+6550%)
Mutual labels:  gps
Esp32 Paxcounter
Wifi & BLE driven passenger flow metering with cheap ESP32 boards
Stars: ✭ 844 (+8340%)
Mutual labels:  gps
Gpsdetector Library
🌎 Android library. If GPS disabled, dialog shown and if user confirms GPS enabled. (2016)
Stars: ✭ 24 (+140%)
Mutual labels:  gps
Shiny
A Xamarin Framework for Backgrounding & Device Hardware Services (iOS, Android, UWP, Tizen, tvOS, watchOS, & more coming soon)
Stars: ✭ 763 (+7530%)
Mutual labels:  gps

IGCWebview2

This repository started as a port of IGCWebView, intended to improve load times and simplify maintenance. It has now replaced the original IGCWebview repository for all future development. It holds the code for the current version of IGC WebView, which can be found at http://glidingweb.org.

IGC Web View2 is an IGC viewer written in JavaScript and HTML 5, which is able to run in any modern Web browser. It loads in files which have been recorded on a logger carried in a glider in the standard .igc format and loads it onto an interactive map, using the Google Maps Javascript API, and also plots a graph of altitude against time. The responsive layout adjusts itself to fit any screen size, from a large widescreen monitor to a small laptop or even a smartphone.

The application also makes some use of php, and a server side MySQL database containing data on controlled airspace. The structure of this database is documented in the data_structure.txt file.

There is also a table containing turning point information, accessed via php.

Two further small php files are used for fetching elevation and timezone data from Google services. These services require keys, as will the main Google Maps API. For obvious reasons the keys used in production are not exposed here: you can obtain keys free of charge from the Google Developers Console. Registration is required.

Apart from the above, sll processing takes place in client-side script, so there is no need to upload the IGC file (or anything else) to the server.

Browser Support

The browser must support the JavaScript FileReader API, which is used to open files from the local hard drive. This API is available in most modern browsers, but not in Internet Explorer 9 or earlier versions.

Build instructions for developers

IGC Webview2 is built using Webpack, which combines all of the JavaScript source code files into a single bundle. This reduces the page load time for end users by minimising the number of HTTP requests needed to fetch the scripts. Webpack also provides a require directive which enables script files to reference each other, allowing the code to be broken up into distinct modules for easier maintenance.

Prerequisites

Install Node.js and Webpack

First install Node.js, which is a JavaScript interpreter that runs outside the browser. This is needed in order to run Webpack.

Note that many major Linux distributions (including Ubuntu) come with an outdated version of Node. To get a more recent version, and receive regular security updates, see: Installing Node.js via package manager.

Node.js is also available for Windows and Mac OS X.

Once Node is installed, use the Node Package Manager to get Webpack:

npm install -g webpack

(On Linux systems, this command must be executed with root privileges.)

Set up API keys

Create a file src/apikeys.js of the form:

module.exports = {
    googleMaps: "put your Google Maps API key here"
};

This file is excluded from source control to ensure that your key remains secret.

Build process

Open a command prompt in the directory where you cloned the Git repository and type:

npm install

This will install the required libraries (i.e. jQuery).

You can then build IGCWebView for debugging simply by typing:

webpack

This will combine the JavaScript modules into a single file, bundle.js, which is referenced by index.html but is deliberately excluded from source control.

If you would like webpack to rerun automatically whenever one of the source code files changes, open a separate terminal window and type:

webpack --watch

For production use, the JavaScript should ideally be minified (removing all white space) in order to reduce its size. This can be achieved by running:

webpack -p
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].