When using a gridded printed map on the field, this quick app tells you the grid square or the location in kilometers on a parcours where you are currently standing.
Demo :
- build grid or parcours : https://grid.my-poppy.eu
- display & locate on grid : https://grid.my-poppy.eu/?0,0,100,45,50,4
- display & locate on grid (new url format) : https://grid.my-poppy.eu/?scr=0&del=100&bea=45&LAT=50&LNG=4&Nx=10&Ny=15&invxy=1&revy=0&bm=mapnik
- display & locate on parcours : https://grid.my-poppy.eu/?lineblob=6b1041ce-68ca-11e8-94d5-3b046b2be916
where
- D7b is the grid square of the map where you are currently standing
- 1.5 km is the kilometric index where you are currently standing
Usage :
-
to create the grid / parcours :
- go to [url]
- use 'Créer grille : créer', 'Créer parcours' ou 'Importer parcours'
- draw the grid or the parcours
- click on 'Partager' to show the url & QR-code
-
to know your current location :
- enable geolocation
- open the url, eg. [url]?scr,0,bea,del,LAT,LNG,Nx,Ny,invxy,revy
Where
- scr is the reference coordinate system (available options : 31370 : Lambert 72), or 0 for local TMercator
- 0 is currently not used
- del is the grid square length in meters
- bea is the map azimuth in degrees
- LAT,LNG are the WGS84 coordinates of the origin of the local TMercator coordinates system
- Nx is the number of squares in X direction (horizontal)
- Ny is the number of squares in Y direction (vertical)
- invxy : if 0, use letters in x and figures in y. if 1, use figures in x and letters in y
- revy : if 0, y coordinates is from top to bottom, if 0 from bottom to top
- bm : the basemap to use (among the available basemaps)
The graphical user interface only allow to produces a grid in TMercator, with letters in x and figures in y (from top to bottom). But you may tweak the link afterwards.
Full example : https://grid.my-poppy.eu/?31370,0,100,0,50.45019,5.95576,18,27,0,0
To use it operationnally
-
the x0, y0,delta,bearing should correspond to your printed map
-
x0,y0,delta,bearing,X0,Y0,Nx,Ny are generated by drawing a rectangle using [url]
-
you could send the link to your personnel by SMS/Whatsapp/...
-
or display it as a QR code
-
ideally, they can store the link on their smartphone home screen to use it when they need it
Enjoy !
Credits :
- font-awesome-4.7.0
- Leaflet.EasyButton-1.1.1
- leaflet-1.3.1 (fork from va2ron1 2018-04-06)
- Leaflet.Omnivore-0.3.3
- Proj4Leaflet-0.7.0
- hammer-2.0.8.js
- jquery-2.1.1
- tokml.js
- download2.js
Contact: info@my-poppy.eu
Presented @ FOSS4G-FR 15-17/5/2018 @ ENSG Paris
in Leaflet, modification of the toGeoJSON function, to also export the names of the elements :
LH.toGeoJSON = function (precision) {
...
this.eachLayer(function (layer) {
if (layer.toGeoJSON) {
var json = layer.toGeoJSON(precision);
/*THIS SHOULD BE ADDED ->*/ if (layer.options.name != null) if (layer.options.name != '') json.properties.name = layer.options.name
...
to patch the minified code :
var o=i.toGeoJSON(t);
should be replaced by
var o=i.toGeoJSON(t); if(i.options.name!=null) if(i.options.name!='') o.properties.name=i.options.name;