columbus3 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +4 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +41 -0
  7. data/Rakefile +10 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +7 -0
  10. data/bower_components/leaflet/.bower.json +34 -0
  11. data/bower_components/leaflet/CHANGELOG.md +929 -0
  12. data/bower_components/leaflet/CONTRIBUTING.md +155 -0
  13. data/bower_components/leaflet/Jakefile.js +48 -0
  14. data/bower_components/leaflet/LICENSE +23 -0
  15. data/bower_components/leaflet/PLUGIN-GUIDE.md +127 -0
  16. data/bower_components/leaflet/README.md +34 -0
  17. data/bower_components/leaflet/bower.json +24 -0
  18. data/bower_components/leaflet/component.json +20 -0
  19. data/bower_components/leaflet/dist/images/layers-2x.png +0 -0
  20. data/bower_components/leaflet/dist/images/layers.png +0 -0
  21. data/bower_components/leaflet/dist/images/marker-icon-2x.png +0 -0
  22. data/bower_components/leaflet/dist/images/marker-icon.png +0 -0
  23. data/bower_components/leaflet/dist/images/marker-shadow.png +0 -0
  24. data/bower_components/leaflet/dist/leaflet-src.js +9180 -0
  25. data/bower_components/leaflet/dist/leaflet.css +478 -0
  26. data/bower_components/leaflet/dist/leaflet.js +9 -0
  27. data/bower_components/leaflet/package.json +33 -0
  28. data/bower_components/leaflet-providers/.bower.json +35 -0
  29. data/bower_components/leaflet-providers/CONTRIBUTING.md +10 -0
  30. data/bower_components/leaflet-providers/README.md +54 -0
  31. data/bower_components/leaflet-providers/bower.json +25 -0
  32. data/bower_components/leaflet-providers/css/gh-fork-ribbon.css +127 -0
  33. data/bower_components/leaflet-providers/css/gh-fork-ribbon.ie.css +68 -0
  34. data/bower_components/leaflet-providers/leaflet-providers.js +630 -0
  35. data/bower_components/leaflet-providers/license.md +9 -0
  36. data/bower_components/leaflet-providers/package.json +38 -0
  37. data/columbus3.gemspec +28 -0
  38. data/exe/columbus3 +144 -0
  39. data/lib/columbus3/metadata/query_parser.racc +160 -0
  40. data/lib/columbus3/metadata/query_parser.tab.rb +349 -0
  41. data/lib/columbus3/metadata/sidecar.rb +48 -0
  42. data/lib/columbus3/renderer/renderer.rb +73 -0
  43. data/lib/columbus3/v900track/v900track.rb +157 -0
  44. data/lib/columbus3/v900track/v900waypoint.rb +51 -0
  45. data/lib/columbus3/version.rb +3 -0
  46. data/lib/columbus3.rb +6 -0
  47. data/lib/html/show.html.erb +84 -0
  48. data/lib/html/track.js.erb +15 -0
  49. metadata +164 -0
@@ -0,0 +1,84 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <title>Columbus 3 - Show Map</title>
5
+ <meta charset="utf-8" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
8
+ <!-- Leaflet style. REQUIRED! -->
9
+ <link rel="stylesheet" href="<%= @leaflet_css %>" />
10
+ <style>
11
+ html { height: 100% }
12
+ body { height: 100%; margin: 0; padding: 0;}
13
+ .map { height: 100% }
14
+ </style>
15
+ </head>
16
+ <body>
17
+ <div id="map" class="map"></div>
18
+
19
+ <script src="<%= @leaflet_js %>"></script>
20
+ <script src="<%= @leaflet_providers %>"></script>
21
+ <script>
22
+ var map = L.map('map', {
23
+ center: [48, -3],
24
+ zoom: 5,
25
+ zoomControl: false
26
+ });
27
+
28
+ var defaultLayer = L.tileLayer.provider('OpenStreetMap.Mapnik').addTo(map);
29
+
30
+ var baseLayers = {
31
+ 'OpenStreetMap Default': defaultLayer,
32
+ 'OpenStreetMap German Style': L.tileLayer.provider('OpenStreetMap.DE'),
33
+ 'OpenStreetMap Black and White': L.tileLayer.provider('OpenStreetMap.BlackAndWhite'),
34
+ 'OpenStreetMap H.O.T.': L.tileLayer.provider('OpenStreetMap.HOT'),
35
+ 'Thunderforest OpenCycleMap': L.tileLayer.provider('Thunderforest.OpenCycleMap'),
36
+ 'Thunderforest Transport': L.tileLayer.provider('Thunderforest.Transport'),
37
+ 'Thunderforest Landscape': L.tileLayer.provider('Thunderforest.Landscape'),
38
+ 'Hydda Full': L.tileLayer.provider('Hydda.Full'),
39
+ 'MapQuest OSM': L.tileLayer.provider('MapQuestOpen.OSM'),
40
+ 'MapQuest Aerial': L.tileLayer.provider('MapQuestOpen.Aerial'),
41
+ 'Stamen Toner': L.tileLayer.provider('Stamen.Toner'),
42
+ 'Stamen Terrain': L.tileLayer.provider('Stamen.Terrain'),
43
+ 'Stamen Watercolor': L.tileLayer.provider('Stamen.Watercolor'),
44
+ 'Esri WorldStreetMap': L.tileLayer.provider('Esri.WorldStreetMap'),
45
+ 'Esri DeLorme': L.tileLayer.provider('Esri.DeLorme'),
46
+ 'Esri WorldTopoMap': L.tileLayer.provider('Esri.WorldTopoMap'),
47
+ 'Esri WorldImagery': L.tileLayer.provider('Esri.WorldImagery'),
48
+ 'Esri WorldTerrain': L.tileLayer.provider('Esri.WorldTerrain'),
49
+ 'Esri WorldShadedRelief': L.tileLayer.provider('Esri.WorldShadedRelief'),
50
+ 'Esri WorldPhysical': L.tileLayer.provider('Esri.WorldPhysical'),
51
+ 'Esri OceanBasemap': L.tileLayer.provider('Esri.OceanBasemap'),
52
+ 'Esri NatGeoWorldMap': L.tileLayer.provider('Esri.NatGeoWorldMap'),
53
+ 'Esri WorldGrayCanvas': L.tileLayer.provider('Esri.WorldGrayCanvas'),
54
+ 'Acetate': L.tileLayer.provider('Acetate')
55
+ };
56
+ </script>
57
+ <%# insert the requested layers %>
58
+ <% @files.each do |file| %>
59
+ <script src="<%= to_leaflet_filename file %>"></script>
60
+ <% end %>
61
+ <script>
62
+ var overlayLayers = {
63
+ <% @files.each do |filename| %>
64
+ '<%= filename %>': <%= to_leaflet_layername filename %>,
65
+ <% end %>
66
+ };
67
+
68
+ var layerControl = L.control.layers(baseLayers, overlayLayers, {collapsed: true}).addTo(map);
69
+
70
+ // resize layers control to fit into view.
71
+ /* this is wrong and useless (since the layer is collapsed and the class expanded is not found */
72
+ /* function resizeLayerControl() {
73
+ var layerControlHeight = document.body.clientHeight - (10 + 50);
74
+ var layerControl = document.getElementsByClassName('leaflet-control-layers-expanded')[0];
75
+
76
+ layerControl.style.overflowY = 'auto';
77
+ layerControl.style.maxHeight = layerControlHeight + 'px';
78
+ }
79
+ map.on('resize', resizeLayerControl);
80
+ resizeLayerControl();
81
+ */
82
+ </script>
83
+ </body>
84
+ </html>
@@ -0,0 +1,15 @@
1
+
2
+
3
+
4
+ file.printf "latlong_#{sanitize filename} = ["
5
+ track.range.each do |i|
6
+ file.printf "[#{track[i].lat}, #{track[i].lon}],"
7
+ end
8
+ file.puts "];"
9
+ file.puts "start_#{sanitize filename} = L.marker(#{track.first.lat_lon}).addTo(map);"
10
+ file.puts "end_#{sanitize filename} = L.marker(#{track.last.lat_lon}).addTo(map);"
11
+ file.puts "poly_#{sanitize filename} = L.polyline(latlong_#{sanitize filename}, {color: 'red'});"
12
+ file.puts "#{sanitize filename} = L.layerGroup([start_#{sanitize filename}, end_#{sanitize filename}, poly_#{sanitize filename}]);"
13
+ file.puts "#{sanitize filename}.addTo(map);"
14
+ end
15
+
metadata ADDED
@@ -0,0 +1,164 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: columbus3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Adolfo Villafiorita
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2015-07-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.10'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.10'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: minitest
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: slop
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 3.6.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 3.6.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: geocoder
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: Some simple command line commands to manage tracks generated by the V900
84
+ family of GPS loggers (CSV format).
85
+ email:
86
+ - adolfo.villafiorita@me.com
87
+ executables:
88
+ - columbus3
89
+ extensions: []
90
+ extra_rdoc_files: []
91
+ files:
92
+ - ".gitignore"
93
+ - ".travis.yml"
94
+ - Gemfile
95
+ - LICENSE.txt
96
+ - README.md
97
+ - Rakefile
98
+ - bin/console
99
+ - bin/setup
100
+ - bower_components/leaflet-providers/.bower.json
101
+ - bower_components/leaflet-providers/CONTRIBUTING.md
102
+ - bower_components/leaflet-providers/README.md
103
+ - bower_components/leaflet-providers/bower.json
104
+ - bower_components/leaflet-providers/css/gh-fork-ribbon.css
105
+ - bower_components/leaflet-providers/css/gh-fork-ribbon.ie.css
106
+ - bower_components/leaflet-providers/leaflet-providers.js
107
+ - bower_components/leaflet-providers/license.md
108
+ - bower_components/leaflet-providers/package.json
109
+ - bower_components/leaflet/.bower.json
110
+ - bower_components/leaflet/CHANGELOG.md
111
+ - bower_components/leaflet/CONTRIBUTING.md
112
+ - bower_components/leaflet/Jakefile.js
113
+ - bower_components/leaflet/LICENSE
114
+ - bower_components/leaflet/PLUGIN-GUIDE.md
115
+ - bower_components/leaflet/README.md
116
+ - bower_components/leaflet/bower.json
117
+ - bower_components/leaflet/component.json
118
+ - bower_components/leaflet/dist/images/layers-2x.png
119
+ - bower_components/leaflet/dist/images/layers.png
120
+ - bower_components/leaflet/dist/images/marker-icon-2x.png
121
+ - bower_components/leaflet/dist/images/marker-icon.png
122
+ - bower_components/leaflet/dist/images/marker-shadow.png
123
+ - bower_components/leaflet/dist/leaflet-src.js
124
+ - bower_components/leaflet/dist/leaflet.css
125
+ - bower_components/leaflet/dist/leaflet.js
126
+ - bower_components/leaflet/package.json
127
+ - columbus3.gemspec
128
+ - exe/columbus3
129
+ - lib/columbus3.rb
130
+ - lib/columbus3/metadata/query_parser.racc
131
+ - lib/columbus3/metadata/query_parser.tab.rb
132
+ - lib/columbus3/metadata/sidecar.rb
133
+ - lib/columbus3/renderer/renderer.rb
134
+ - lib/columbus3/v900track/v900track.rb
135
+ - lib/columbus3/v900track/v900waypoint.rb
136
+ - lib/columbus3/version.rb
137
+ - lib/html/show.html.erb
138
+ - lib/html/track.js.erb
139
+ homepage: http://ict4g.net/adolfo/columbus3
140
+ licenses:
141
+ - MIT
142
+ metadata: {}
143
+ post_install_message:
144
+ rdoc_options: []
145
+ require_paths:
146
+ - lib
147
+ required_ruby_version: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ required_rubygems_version: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - ">="
155
+ - !ruby/object:Gem::Version
156
+ version: '0'
157
+ requirements: []
158
+ rubyforge_project:
159
+ rubygems_version: 2.4.5
160
+ signing_key:
161
+ specification_version: 4
162
+ summary: Manage V900 and V990 GPS tracks from the command line.
163
+ test_files: []
164
+ has_rdoc: