gooby 0.9.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. data/README +242 -0
  2. data/bin/example_usage.rb +38 -0
  3. data/bin/tests_gen.rb +16 -0
  4. data/data/20050305_corporate_cup_hm.csv +251 -0
  5. data/data/20050305_corporate_cup_hm.xml +2208 -0
  6. data/data/20050430_nashville_marathon.csv +1208 -0
  7. data/data/20050430_nashville_marathon.xml +10043 -0
  8. data/data/20051119_dowd_ymca_hm.csv +251 -0
  9. data/data/20051119_dowd_ymca_hm.xml +2210 -0
  10. data/data/20051124_hyatt_turkey_trot_8K.csv +321 -0
  11. data/data/20051124_hyatt_turkey_trot_8K.xml +2651 -0
  12. data/data/2007_03_03.tcx +6207 -0
  13. data/data/forerunner_2007.xml +259014 -0
  14. data/data/geo_data.txt +171 -0
  15. data/data/phx.csv +1280 -0
  16. data/data/phx.xml +10620 -0
  17. data/data/run_2007_01_01_16_38_27.xml +2020 -0
  18. data/data/run_2007_01_06_15_27_31.xml +2020 -0
  19. data/data/run_2007_01_10_12_25_47.xml +820 -0
  20. data/data/run_2007_01_10_22_44_54.csv +112 -0
  21. data/data/run_2007_01_10_22_44_54.xml +908 -0
  22. data/data/run_2007_01_11_10_48_45.xml +1292 -0
  23. data/data/run_2007_01_13_15_37_06.xml +1964 -0
  24. data/data/run_2007_01_14_15_46_02.xml +1368 -0
  25. data/data/run_2007_01_15_14_01_48.xml +1868 -0
  26. data/data/run_2007_01_20_16_22_05.xml +1702 -0
  27. data/data/run_2007_01_27_17_32_13.xml +3626 -0
  28. data/data/run_2007_01_28_19_14_52.xml +2538 -0
  29. data/data/run_2007_02_03_14_30_20.xml +2016 -0
  30. data/data/run_2007_02_04_18_02_30.xml +1476 -0
  31. data/data/run_2007_02_17_16_29_35.xml +1236 -0
  32. data/data/run_2007_02_19_14_44_33.xml +1816 -0
  33. data/data/run_2007_02_23_15_53_55.xml +36 -0
  34. data/data/run_2007_02_23_15_55_20.xml +1296 -0
  35. data/data/run_2007_02_24_15_01_35.csv +484 -0
  36. data/data/run_2007_02_24_15_01_35.xml +3884 -0
  37. data/data/test1.txt +4 -0
  38. data/img/gicons/blank.png +0 -0
  39. data/img/gicons/dd-end.png +0 -0
  40. data/img/gicons/dd-start.png +0 -0
  41. data/img/gicons/marker.png +0 -0
  42. data/img/gicons/marker0.png +0 -0
  43. data/img/gicons/marker00.png +0 -0
  44. data/img/gicons/marker01.png +0 -0
  45. data/img/gicons/marker02.png +0 -0
  46. data/img/gicons/marker03.png +0 -0
  47. data/img/gicons/marker04.png +0 -0
  48. data/img/gicons/marker05.png +0 -0
  49. data/img/gicons/marker06.png +0 -0
  50. data/img/gicons/marker07.png +0 -0
  51. data/img/gicons/marker08.png +0 -0
  52. data/img/gicons/marker09.png +0 -0
  53. data/img/gicons/marker1.png +0 -0
  54. data/img/gicons/marker10.png +0 -0
  55. data/img/gicons/marker11.png +0 -0
  56. data/img/gicons/marker12.png +0 -0
  57. data/img/gicons/marker13.png +0 -0
  58. data/img/gicons/marker14.png +0 -0
  59. data/img/gicons/marker15.png +0 -0
  60. data/img/gicons/marker16.png +0 -0
  61. data/img/gicons/marker17.png +0 -0
  62. data/img/gicons/marker18.png +0 -0
  63. data/img/gicons/marker19.png +0 -0
  64. data/img/gicons/marker2.png +0 -0
  65. data/img/gicons/marker20.png +0 -0
  66. data/img/gicons/marker21.png +0 -0
  67. data/img/gicons/marker22.png +0 -0
  68. data/img/gicons/marker23.png +0 -0
  69. data/img/gicons/marker24.png +0 -0
  70. data/img/gicons/marker25.png +0 -0
  71. data/img/gicons/marker26.png +0 -0
  72. data/img/gicons/marker27.png +0 -0
  73. data/img/gicons/marker28.png +0 -0
  74. data/img/gicons/marker29.png +0 -0
  75. data/img/gicons/marker3.png +0 -0
  76. data/img/gicons/marker30.png +0 -0
  77. data/img/gicons/marker31.png +0 -0
  78. data/img/gicons/marker32.png +0 -0
  79. data/img/gicons/marker33.png +0 -0
  80. data/img/gicons/marker34.png +0 -0
  81. data/img/gicons/marker35.png +0 -0
  82. data/img/gicons/marker36.png +0 -0
  83. data/img/gicons/marker37.png +0 -0
  84. data/img/gicons/marker38.png +0 -0
  85. data/img/gicons/marker39.png +0 -0
  86. data/img/gicons/marker4.png +0 -0
  87. data/img/gicons/marker40.png +0 -0
  88. data/img/gicons/marker41.png +0 -0
  89. data/img/gicons/marker42.png +0 -0
  90. data/img/gicons/marker43.png +0 -0
  91. data/img/gicons/marker44.png +0 -0
  92. data/img/gicons/marker45.png +0 -0
  93. data/img/gicons/marker46.png +0 -0
  94. data/img/gicons/marker47.png +0 -0
  95. data/img/gicons/marker48.png +0 -0
  96. data/img/gicons/marker49.png +0 -0
  97. data/img/gicons/marker5.png +0 -0
  98. data/img/gicons/marker50.png +0 -0
  99. data/img/gicons/marker51.png +0 -0
  100. data/img/gicons/marker52.png +0 -0
  101. data/img/gicons/marker53.png +0 -0
  102. data/img/gicons/marker54.png +0 -0
  103. data/img/gicons/marker55.png +0 -0
  104. data/img/gicons/marker56.png +0 -0
  105. data/img/gicons/marker57.png +0 -0
  106. data/img/gicons/marker58.png +0 -0
  107. data/img/gicons/marker59.png +0 -0
  108. data/img/gicons/marker6.png +0 -0
  109. data/img/gicons/marker60.png +0 -0
  110. data/img/gicons/marker61.png +0 -0
  111. data/img/gicons/marker62.png +0 -0
  112. data/img/gicons/marker63.png +0 -0
  113. data/img/gicons/marker64.png +0 -0
  114. data/img/gicons/marker65.png +0 -0
  115. data/img/gicons/marker66.png +0 -0
  116. data/img/gicons/marker67.png +0 -0
  117. data/img/gicons/marker68.png +0 -0
  118. data/img/gicons/marker69.png +0 -0
  119. data/img/gicons/marker7.png +0 -0
  120. data/img/gicons/marker70.png +0 -0
  121. data/img/gicons/marker71.png +0 -0
  122. data/img/gicons/marker72.png +0 -0
  123. data/img/gicons/marker73.png +0 -0
  124. data/img/gicons/marker74.png +0 -0
  125. data/img/gicons/marker75.png +0 -0
  126. data/img/gicons/marker76.png +0 -0
  127. data/img/gicons/marker77.png +0 -0
  128. data/img/gicons/marker78.png +0 -0
  129. data/img/gicons/marker79.png +0 -0
  130. data/img/gicons/marker8.png +0 -0
  131. data/img/gicons/marker80.png +0 -0
  132. data/img/gicons/marker81.png +0 -0
  133. data/img/gicons/marker82.png +0 -0
  134. data/img/gicons/marker83.png +0 -0
  135. data/img/gicons/marker84.png +0 -0
  136. data/img/gicons/marker85.png +0 -0
  137. data/img/gicons/marker86.png +0 -0
  138. data/img/gicons/marker87.png +0 -0
  139. data/img/gicons/marker88.png +0 -0
  140. data/img/gicons/marker89.png +0 -0
  141. data/img/gicons/marker9.png +0 -0
  142. data/img/gicons/marker90.png +0 -0
  143. data/img/gicons/marker91.png +0 -0
  144. data/img/gicons/marker92.png +0 -0
  145. data/img/gicons/marker93.png +0 -0
  146. data/img/gicons/marker94.png +0 -0
  147. data/img/gicons/marker95.png +0 -0
  148. data/img/gicons/marker96.png +0 -0
  149. data/img/gicons/marker97.png +0 -0
  150. data/img/gicons/marker98.png +0 -0
  151. data/img/gicons/marker99.png +0 -0
  152. data/img/gicons/markerA.png +0 -0
  153. data/img/gicons/markerB.png +0 -0
  154. data/img/gicons/markerC.png +0 -0
  155. data/img/gicons/markerD.png +0 -0
  156. data/img/gicons/markerE.png +0 -0
  157. data/img/gicons/markerF.png +0 -0
  158. data/img/gicons/markerG.png +0 -0
  159. data/img/gicons/markerH.png +0 -0
  160. data/img/gicons/markerI.png +0 -0
  161. data/img/gicons/markerJ.png +0 -0
  162. data/img/gicons/mm_20_red.png +0 -0
  163. data/img/gicons/mm_20_shadow.png +0 -0
  164. data/img/gicons/readme.txt +11 -0
  165. data/img/gicons/shadow50.png +0 -0
  166. data/lib/gooby/cls_counter_hash.rb +78 -0
  167. data/lib/gooby/cls_delim_line.rb +35 -0
  168. data/lib/gooby/cls_dttm.rb +79 -0
  169. data/lib/gooby/cls_duration.rb +79 -0
  170. data/lib/gooby/cls_forerunner_xml_parser.rb +178 -0
  171. data/lib/gooby/cls_forerunner_xml_splitter.rb +109 -0
  172. data/lib/gooby/cls_geo_data.rb +181 -0
  173. data/lib/gooby/cls_gooby_command.rb +35 -0
  174. data/lib/gooby/cls_gooby_object.rb +18 -0
  175. data/lib/gooby/cls_google_map_generator.rb +363 -0
  176. data/lib/gooby/cls_history.rb +33 -0
  177. data/lib/gooby/cls_lap.rb +22 -0
  178. data/lib/gooby/cls_line.rb +75 -0
  179. data/lib/gooby/cls_options.rb +67 -0
  180. data/lib/gooby/cls_position.rb +44 -0
  181. data/lib/gooby/cls_run.rb +194 -0
  182. data/lib/gooby/cls_simple_xml_parser.rb +41 -0
  183. data/lib/gooby/cls_test_regen.rb +182 -0
  184. data/lib/gooby/cls_track.rb +47 -0
  185. data/lib/gooby/cls_trackpoint.rb +200 -0
  186. data/lib/gooby/mod_introspect.rb +26 -0
  187. data/lib/gooby/mod_io.rb +58 -0
  188. data/lib/gooby/mod_project_info.rb +80 -0
  189. data/lib/gooby/mod_string.rb +19 -0
  190. data/lib/gooby/mod_test_helper.rb +15 -0
  191. data/lib/gooby.rb +2265 -0
  192. data/pkg/code_header.txt +21 -0
  193. data/pkg/pkg.rb +236 -0
  194. data/pkg/test_header.txt +19 -0
  195. data/samples/20041113_richmond_marathon.html +532 -0
  196. data/samples/20050305_corporate_cup_hm.html +448 -0
  197. data/samples/20050430_nashville_marathon.html +530 -0
  198. data/samples/gps_point_capture.html +54 -0
  199. data/samples/phoenix_marathon.html +542 -0
  200. data/samples/run_2007_01_10_22_44_54.html +201 -0
  201. data/samples/run_2007_02_24_15_01_35.html +298 -0
  202. data/tests/tc_cls_counter_hash.rb +107 -0
  203. data/tests/tc_cls_delim_line.rb +74 -0
  204. data/tests/tc_cls_dttm.rb +131 -0
  205. data/tests/tc_cls_duration.rb +51 -0
  206. data/tests/tc_cls_forerunner_xml_parser.rb +70 -0
  207. data/tests/tc_cls_geo_data.xxx +71 -0
  208. data/tests/tc_cls_gooby_object.rb +26 -0
  209. data/tests/tc_cls_google_map_generator.rb +109 -0
  210. data/tests/tc_cls_history.rb +46 -0
  211. data/tests/tc_cls_lap.rb +38 -0
  212. data/tests/tc_cls_line.rb +110 -0
  213. data/tests/tc_cls_options.rb +79 -0
  214. data/tests/tc_cls_position.rb +66 -0
  215. data/tests/tc_cls_run.rb +142 -0
  216. data/tests/tc_cls_simple_xml_parser.rb +50 -0
  217. data/tests/tc_cls_track.rb +70 -0
  218. data/tests/tc_cls_trackpoint.rb +145 -0
  219. data/tests/tc_mod_introspect.rb +32 -0
  220. data/tests/tc_mod_io.rb +53 -0
  221. data/tests/tc_mod_project_info.rb +79 -0
  222. data/tests/tc_mod_string.rb +58 -0
  223. data/tests/ts_gooby.rb +1237 -0
  224. metadata +270 -0
data/README ADDED
@@ -0,0 +1,242 @@
1
+ = Gooby -- Google APIs + Ruby
2
+
3
+ Version: 0.9.3
4
+
5
+ This package contains 'Gooby', a set of Ruby code to assist you with using and
6
+ producing content for the various Google APIs. The initial focus of version
7
+ Gooby is on the Google Maps API, version 2.0.
8
+
9
+ Google Maps can be produced using Gooby from either CSV files, or from exported
10
+ and parsed Garmin ForerunnerLogbook XML files. Both file formats will contain
11
+ your own Global Positioning System (GPS) data.
12
+
13
+ Support for Garmin TrainingCenter *.tcx files will be in the next release.
14
+ The exported XML file formats from Garmin ForerunnerLogbook and Garmin
15
+ TrainingCenter are different, yet altering the Gooby parsing code shouldn't
16
+ require a major effort.
17
+
18
+ Google maps are applicable really to any outdoor activity for which GPS data
19
+ can be obtained. The focus of Gooby is on running, because the author is a
20
+ marathon runner, and the Garmin Forerunner (I use both models 201 and 205)
21
+ is primarily intended for running. Therefore the names of the classes and
22
+ methods are running oriented (ex. - Run, Track, Trackpoint, pace, distance,
23
+ etc).
24
+
25
+ Other activities, such as cycling, hiking, walking, driving, and even golfing
26
+ are also well suited for Gooby. Given a waterproof GPS receiver, sailing and
27
+ swimming Google Maps can also be created with Gooby. Please let me know how
28
+ you use Gooby!
29
+
30
+ All Gooby 0.9.3 functionality is intended to be invoked from a command line.
31
+ Web and Rails integration may be done in a later release.
32
+
33
+ See the Goals/Requirements and Usage sections below for the complete list of
34
+ Gooby functionality.
35
+
36
+ = General
37
+
38
+ Author:: Chris Joakim <chris@joakimsoftware.com>
39
+ Requires:: Ruby 1.8.0 or later
40
+ License:: Copyright 2007 by Chris Joakim.
41
+ GNU General Public License (GPL) license.
42
+ See http://www.gnu.org/copyleft/gpl.html
43
+
44
+ == License
45
+
46
+ Gooby is available under GNU General Public License (GPL) license.
47
+
48
+ == Download
49
+
50
+ The latest version of gooby can be found at
51
+ * http://rubyforge/
52
+
53
+ == Installation
54
+
55
+ Gooby is packaged and installed as a Gem.
56
+
57
+ == Development vs Gem Packaging
58
+
59
+ In development, the coding standard for Gooby is to have a separate *.rb source
60
+ file for each class or module. There also a one-to-one mapping between 'base'
61
+ code files and 'tc_*.rb' test case files. The CVS repository contains these
62
+ separate files.
63
+
64
+ As of release 0.9.3 all gem-packaged code is merged into file 'gooby.rb',
65
+ and all tests are merged into file 'ts_gooby.rb'. The idea here is to simplify
66
+ the eventual deployed gem and directory structure on the user's computer.
67
+
68
+ == Running the Gooby Test Suite
69
+
70
+ To execute the test suite, run the following command from the main 'gooby'
71
+ directory:
72
+
73
+ > ruby tests/ts_gooby.rb
74
+
75
+ == Online Resources
76
+
77
+ * The Gooby home page http://rubyforge.org/projects/gooby/.
78
+ RubyForge provides CVS hosting for the project.
79
+
80
+ Sample Gooby-generated Google Maps are at www.joakimsoftware.com, below:
81
+
82
+ http://www.joakimsoftware.com/gmap/gps_point_capture.html
83
+ http://www.joakimsoftware.com/gmap/20041113_richmond_marathon.html
84
+ http://www.joakimsoftware.com/gmap/20050305_corporate_cup_hm.html
85
+ http://www.joakimsoftware.com/gmap/20050430_nashville_marathon.html
86
+ http://www.joakimsoftware.com/gmap/phoenix_marathon.html
87
+ http://www.joakimsoftware.com/gmap/run_2007_02_24_15_01_35.html
88
+
89
+
90
+ === Road Map / TODO List
91
+
92
+ * IE BUG - Larger maps appear properly in Safari and Firefox browser, but not on
93
+ Inernet Explorer.
94
+
95
+ * IE or Google Bug - The Google Map v2 JavaScript has not run properly in
96
+ Internet Explorer at times. Script error after loading the map background,
97
+ but before the map route is drawn.
98
+
99
+ * Incomplete, WIP - Google Map generation from your data/geo_data.txt file.
100
+
101
+ * Incomplete, WIP - Support sources of GPS data other than Garmin Forerunner
102
+ XML from Forerunner Logbook. Training Center and Forerunner 205 data is
103
+ expected in March 2007.
104
+
105
+ * BUG - TestGenerator adds two space lines to top-of-file upon test code
106
+ regeneration.
107
+
108
+ * Add more regression tests.
109
+
110
+ * Add other Google APIs (earth, search, sitemaps, froogle, etc).
111
+
112
+ * Add Rails support for realtime dynamic map/content generation.
113
+
114
+ == Support
115
+
116
+ Please see http://rubyforge.org/projects/gooby/ to submit a request or report
117
+ a bug, on the Tracker page.
118
+
119
+ ----
120
+
121
+ = Usage
122
+
123
+ See file 'bin/example_usage.rb' in the gem distribution. Most of this file
124
+ is shown below. You will probably have to change the input filenames (yaml,
125
+ xml, csv) to your own filenames on your computer.
126
+
127
+ require 'gooby'
128
+
129
+ include REXML
130
+
131
+ # First, create a GoobyCommand object.
132
+ gooby = Gooby::GoobyCommand.new
133
+
134
+ # Next, create an Options object from the given yaml file - see the sample
135
+ # 'gooby_options.yaml' file in the distribution.
136
+ options_file = 'gooby_options.yaml'
137
+ options = gooby.options(options_file)
138
+
139
+ # Optionally display some of its values.
140
+ n = 'gmap_approx_max_points'
141
+ v = options.get(n)
142
+ puts "option '#{n}' = #{v}"
143
+
144
+ # Split a large ForerunnerLogbook XML file into individual r 'run' files.
145
+ # In this example, '/temp' is the output directory.
146
+ gooby.split_forerunner_xml('data/forerunner_2007.xml', '/temp')
147
+
148
+ # Parse a ForerunnerLogbook XML file, or 'split' subset, into CSV.
149
+ # You may want to redirect this output to a file.
150
+ gooby.parse_forerunner_xml 'data/run_2007_01_01_16_38_27.xml'
151
+
152
+ # Generate a Google Map from your CSV file data, and the Options per
153
+ # your yaml file.
154
+ gooby.generate_google_map('data/phx.csv', options)
155
+
156
+
157
+ == Goals / Requirements
158
+
159
+ === Functional Requirements
160
+
161
+ f1. Provide the ability to parse exported XML data from a Garmin Forerunner
162
+ GPS receiver, specifically model 201. Garmin ForerunnerLogbook is the
163
+ software used to export this XML. Parse the XML into less-verbose and
164
+ more-editable CSV format.
165
+
166
+ f2. Provide the ability to "split" a large Garmin ForerunnerLogbook XML file
167
+ containing many "runs" into individual run files. The individual files
168
+ can then be processed separately, and can optionally be stored in your
169
+ personal records directory or source control system.
170
+
171
+ f3. Provide the ability to generate Google Map HTML content from your GPS
172
+ data in CSV or other simple text format, using the Google Map API v2.0.
173
+ The generated content should be viewable in most current web browsers,
174
+ including Apple Safari 2 and Windows Internet Explorer 6.
175
+
176
+ f4. Provide the ability to define your own points-of-interest (POI), route
177
+ segments, and routes as a collection of GPS data in a simple text file.
178
+ Allow "routes" to be composed from "reusable route segments", and
179
+ annotated with your own POI.
180
+
181
+ f5. Provide the ability to generate Google Maps (requirement f3) from your
182
+ collection of GPS data (requirement f4).
183
+
184
+ f6. Provide the ability (i.e. - an Internet web page) for a user to easily
185
+ obtain GPS coordinates for their particular POI, segments, and routes.
186
+
187
+ f7. Provide the ability to alter appropriate Gooby behavior via a simple
188
+ configuration file (i.e. - gooby_options.yaml) rather than modifying
189
+ the source code. Specific configuration requirements are:
190
+ a. Allow the user to specify roughly how many points appear on a map.
191
+ b. Allow the user to specify a distance unit-of-measure in either
192
+ miles, kilometers, or yards.
193
+
194
+ f8. Provide adequate user documentation and scripts, so that someone other
195
+ than the author can actually use Gooby.
196
+
197
+ f9. Provide sample files - xml, csv, images.
198
+
199
+ Currently out-of-scope but intended for a future release:
200
+ ---------------------------------------------------------
201
+
202
+ f50. Parsing of other XML GPS formats other than Garmin Forerunner.
203
+
204
+ f51. Other Google APIs, such as Google Earth.
205
+
206
+ f52. Rails framework integration.
207
+
208
+ === Technical Requirements
209
+
210
+ t1. Conform to consistent coding and naming standards throughout the code.
211
+
212
+ t2. Strive to implement the code in the "standard Ruby way", and to try to
213
+ discover exactly what that is during the development of Gooby.
214
+
215
+ t3. Implement a reasonably complete set of regression tests using the
216
+ 'test/unit' framework.
217
+
218
+ t4. Implement a way to generate/regenerate regression tests so that as the
219
+ tested classes/modules evolve, the corresponding test class will
220
+ similarly automatically evolve. New test method "stubs" will be
221
+ created, obsolete methods will be flagged, and current test method
222
+ implementations will be retained. Writing tests shouldn't hurt.
223
+
224
+ t5. Enable adequate runtime diagnostics; including:
225
+ a. Configurible logging mechanism, similar to Java's log4j.
226
+ b. Leverage Ruby profiling functionality.
227
+ c. Leverage Ruby tracing functionality.
228
+
229
+ t6. Use the RubyForge CVS repository as the SCM after initial development;
230
+ use local SCM during the initial development.
231
+
232
+ t7. Implement a Ruby-standard directory structure - code, tests, data,
233
+ documentation, etc.
234
+
235
+ t8. Implement a Ruby-standard packaging mechanism, so that users can easily
236
+ download and install Gooby.
237
+
238
+ == Warranty
239
+
240
+ This software is provided "as is" and without any express or implied warranties,
241
+ including, without limitation, the implied warranties of merchantibility and
242
+ fitness for a particular purpose.
@@ -0,0 +1,38 @@
1
+ =begin rdoc
2
+
3
+ This file contains examples of how to use Gooby.
4
+
5
+ You will probably have to change the input filenames (yaml, xml, csv)
6
+ to your own filenames on your computer.
7
+
8
+ =end
9
+
10
+ require 'gooby'
11
+
12
+ include REXML
13
+
14
+ # First, create a GoobyCommand object.
15
+ gooby = Gooby::GoobyCommand.new
16
+
17
+ # Next, create an Options object from the given yaml file - see the sample
18
+ # 'gooby_options.yaml' file in the distribution.
19
+ options_file = 'gooby_options.yaml'
20
+ options = gooby.options(options_file)
21
+
22
+ # Optionally display some of its values.
23
+ n = 'gmap_approx_max_points'
24
+ v = options.get(n)
25
+ puts "option '#{n}' = #{v}"
26
+
27
+ # Split a large ForerunnerLogbook XML file into individual r 'run' files.
28
+ # In this example, '/temp' is the output directory.
29
+ gooby.split_forerunner_xml('data/forerunner_2007.xml', '/temp')
30
+
31
+ # Parse a ForerunnerLogbook XML file, or 'split' subset, into CSV.
32
+ # You may want to redirect this output to a file.
33
+ gooby.parse_forerunner_xml 'data/run_2007_01_01_16_38_27.xml'
34
+
35
+ # Generate a Google Map from your CSV file data, and the Options per
36
+ # your yaml file.
37
+ gooby.generate_google_map('data/phx.csv', options)
38
+
data/bin/tests_gen.rb ADDED
@@ -0,0 +1,16 @@
1
+ require 'gooby'
2
+
3
+ =begin
4
+
5
+ Gooby - Copyright 2007 by Chris Joakim.
6
+ Gooby is available under GNU General Public License (GPL) license.
7
+
8
+ Example command line:
9
+ ruby bin/tests_gen.rb
10
+
11
+ =end
12
+
13
+ # The following prefixes ../lib to the active ruby load path
14
+ $:.unshift File.join(File.dirname(__FILE__), "..", "lib")
15
+
16
+ generator = Gooby::TestGenerator.new
@@ -0,0 +1,251 @@
1
+ # Run: 1 date: 2005-03-05 dist: 13.3807489594998 dur: 01:46:57 trks: 1 tkpts: 250 laps: 14
2
+ 1 | 2005-03-05T13:00:29Z | 1 | 35.22101 | -80.84566 | 219.799 | 0.0
3
+ 1 | 2005-03-05T13:00:49Z | 2 | 35.22054 | -80.84506 | 225.567 | 0.046918021941152
4
+ 1 | 2005-03-05T13:01:10Z | 3 | 35.21998 | -80.84446 | 227.970 | 0.0983360698469204
5
+ 1 | 2005-03-05T13:01:54Z | 4 | 35.22094 | -80.84309 | 232.776 | 0.200210979979266
6
+ 1 | 2005-03-05T13:02:09Z | 5 | 35.22127 | -80.84268 | 232.296 | 0.232697037336493
7
+ 1 | 2005-03-05T13:02:19Z | 6 | 35.22155 | -80.84270 | 229.412 | 0.252075125089657
8
+ 1 | 2005-03-05T13:02:29Z | 7 | 35.22185 | -80.84283 | 226.528 | 0.274062567291757
9
+ 1 | 2005-03-05T13:02:41Z | 8 | 35.22219 | -80.84317 | 226.528 | 0.304395193657625
10
+ 1 | 2005-03-05T13:03:10Z | 9 | 35.22283 | -80.84416 | 224.605 | 0.375650926768755
11
+ 1 | 2005-03-05T13:03:53Z | 10 | 35.22395 | -80.84504 | 231.815 | 0.467600066437587
12
+ 1 | 2005-03-05T13:03:57Z | 11 | 35.22403 | -80.84515 | 232.296 | 0.475912452222793
13
+ 1 | 2005-03-05T13:04:04Z | 12 | 35.22425 | -80.84502 | 232.296 | 0.492790426980333
14
+ 1 | 2005-03-05T13:05:11Z | 13 | 35.22560 | -80.84729 | 230.854 | 0.651262953423234
15
+ 1 | 2005-03-05T13:05:27Z | 14 | 35.22601 | -80.84770 | 231.334 | 0.687839739739913
16
+ 1 | 2005-03-05T13:05:54Z | 15 | 35.22661 | -80.84843 | 230.373 | 0.746285122724138
17
+ 1 | 2005-03-05T13:06:16Z | 16 | 35.22715 | -80.84901 | 219.318 | 0.795918233953314
18
+ 1 | 2005-03-05T13:06:38Z | 17 | 35.22663 | -80.84963 | 223.644 | 0.846069376187672
19
+ 1 | 2005-03-05T13:07:01Z | 18 | 35.22614 | -80.85034 | 223.644 | 0.898526894757261
20
+ 1 | 2005-03-05T13:07:06Z | 19 | 35.22601 | -80.85045 | 224.125 | 0.909445268471631
21
+ 1 | 2005-03-05T13:07:17Z | 20 | 35.22577 | -80.85079 | 228.450 | 0.934806000876925
22
+ 1 | 2005-03-05T13:07:29Z | 21 | 35.22545 | -80.85105 | 230.373 | 0.961341335304109
23
+ 1 | 2005-03-05T13:07:42Z | 22 | 35.22506 | -80.85122 | 231.815 | 0.989943630017703
24
+ 1 | 2005-03-05T13:07:49Z | 23 | 35.22487 | -80.85137 | 227.489 | 1.00556377588005
25
+ 1 | 2005-03-05T13:07:54Z | 24 | 35.22474 | -80.85146 | 227.009 | 1.01588215675517
26
+ 1 | 2005-03-05T13:08:08Z | 25 | 35.22444 | -80.85184 | 222.202 | 1.04570805809106
27
+ 1 | 2005-03-05T13:08:18Z | 26 | 35.22434 | -80.85217 | 221.241 | 1.06557326927759
28
+ 1 | 2005-03-05T13:09:09Z | 27 | 35.22399 | -80.85405 | 214.992 | 1.17440056804311
29
+ 1 | 2005-03-05T13:09:55Z | 28 | 35.22506 | -80.85521 | 212.589 | 1.27314970425493
30
+ 1 | 2005-03-05T13:10:28Z | 29 | 35.22592 | -80.85596 | 212.108 | 1.34610297134886
31
+ 1 | 2005-03-05T13:11:07Z | 30 | 35.22695 | -80.85671 | 209.705 | 1.42890298309629
32
+ 1 | 2005-03-05T13:11:23Z | 31 | 35.22734 | -80.85633 | 213.550 | 1.46334106463099
33
+ 1 | 2005-03-05T13:12:35Z | 32 | 35.22897 | -80.85440 | 214.511 | 1.62001531054915
34
+ 1 | 2005-03-05T13:13:04Z | 33 | 35.22964 | -80.85371 | 215.953 | 1.68050655491899
35
+ 1 | 2005-03-05T13:14:48Z | 34 | 35.23200 | -80.85109 | 221.241 | 1.90061711602528
36
+ 1 | 2005-03-05T13:14:54Z | 35 | 35.23193 | -80.85088 | 221.241 | 1.91341734302992
37
+ 1 | 2005-03-05T13:15:36Z | 36 | 35.23105 | -80.84968 | 224.125 | 2.00442699838485
38
+ 1 | 2005-03-05T13:16:08Z | 37 | 35.23032 | -80.84895 | 226.047 | 2.06955003935657
39
+ 1 | 2005-03-05T13:16:20Z | 38 | 35.22998 | -80.84882 | 228.450 | 2.0941595900545
40
+ 1 | 2005-03-05T13:16:28Z | 39 | 35.22974 | -80.84888 | 228.450 | 2.11108337231424
41
+ 1 | 2005-03-05T13:16:44Z | 40 | 35.22925 | -80.84893 | 228.450 | 2.14505489093239
42
+ 1 | 2005-03-05T13:16:58Z | 41 | 35.22882 | -80.84886 | 228.931 | 2.17502504361516
43
+ 1 | 2005-03-05T13:17:10Z | 42 | 35.22850 | -80.84862 | 229.412 | 2.20095299731342
44
+ 1 | 2005-03-05T13:17:40Z | 43 | 35.22781 | -80.84785 | 228.931 | 2.26545956261107
45
+ 1 | 2005-03-05T13:18:33Z | 44 | 35.22674 | -80.84648 | 219.799 | 2.37243340465649
46
+ 1 | 2005-03-05T13:18:49Z | 45 | 35.22640 | -80.84611 | 218.357 | 2.40386385307936
47
+ 1 | 2005-03-05T13:20:41Z | 46 | 35.22397 | -80.84317 | 217.876 | 2.63991390888025
48
+ 1 | 2005-03-05T13:20:51Z | 47 | 35.22363 | -80.84294 | 217.876 | 2.66675264078349
49
+ 1 | 2005-03-05T13:21:04Z | 48 | 35.22331 | -80.84260 | 217.876 | 2.69602795767016
50
+ 1 | 2005-03-05T13:21:23Z | 49 | 35.22294 | -80.84212 | 220.760 | 2.73327613433162
51
+ 1 | 2005-03-05T13:22:08Z | 50 | 35.22182 | -80.84090 | 231.334 | 2.83685803071362
52
+ 1 | 2005-03-05T13:22:27Z | 51 | 35.22142 | -80.84038 | 228.450 | 2.8771710819106
53
+ 1 | 2005-03-05T13:23:19Z | 52 | 35.22013 | -80.83905 | 178.462 | 2.99369860184411
54
+ 1 | 2005-03-05T13:23:27Z | 53 | 35.22000 | -80.83886 | 185.672 | 3.00768703301529
55
+ 1 | 2005-03-05T13:24:10Z | 54 | 35.21910 | -80.83770 | 193.843 | 3.0979826551601
56
+ 1 | 2005-03-05T13:24:32Z | 55 | 35.21850 | -80.83717 | 203.456 | 3.14910358253967
57
+ 1 | 2005-03-05T13:24:47Z | 56 | 35.21820 | -80.83676 | 203.456 | 3.18017053416113
58
+ 1 | 2005-03-05T13:25:22Z | 57 | 35.21730 | -80.83577 | 203.937 | 3.2637709317134
59
+ 1 | 2005-03-05T13:26:10Z | 58 | 35.21622 | -80.83451 | 203.456 | 3.36685273369255
60
+ 1 | 2005-03-05T13:27:06Z | 59 | 35.21532 | -80.83287 | 205.379 | 3.47836872674983
61
+ 1 | 2005-03-05T13:28:00Z | 60 | 35.21431 | -80.83142 | 208.263 | 3.58592481990532
62
+ 1 | 2005-03-05T13:28:35Z | 61 | 35.21348 | -80.83064 | 217.395 | 3.65822231694953
63
+ 1 | 2005-03-05T13:28:48Z | 62 | 35.21322 | -80.83034 | 212.108 | 3.68290929709234
64
+ 1 | 2005-03-05T13:29:00Z | 63 | 35.21298 | -80.83006 | 213.069 | 3.70581685363569
65
+ 1 | 2005-03-05T13:29:23Z | 64 | 35.21260 | -80.82940 | 208.263 | 3.75139371097094
66
+ 1 | 2005-03-05T13:29:37Z | 65 | 35.21225 | -80.82908 | 208.743 | 3.7815769596586
67
+ 1 | 2005-03-05T13:30:00Z | 66 | 35.21157 | -80.82863 | 217.395 | 3.83498558070155
68
+ 1 | 2005-03-05T13:30:27Z | 67 | 35.21099 | -80.82798 | 213.069 | 3.8893184152624
69
+ 1 | 2005-03-05T13:30:42Z | 68 | 35.21071 | -80.82757 | 213.069 | 3.91948275228275
70
+ 1 | 2005-03-05T13:31:20Z | 69 | 35.21015 | -80.82644 | 212.589 | 3.99408715367927
71
+ 1 | 2005-03-05T13:31:24Z | 70 | 35.21007 | -80.82633 | 214.511 | 4.00240016732769
72
+ 1 | 2005-03-05T13:31:37Z | 71 | 35.20979 | -80.82599 | 216.915 | 4.02965092287953
73
+ 1 | 2005-03-05T13:32:37Z | 72 | 35.20837 | -80.82466 | 204.898 | 4.15319027560221
74
+ 1 | 2005-03-05T13:32:52Z | 73 | 35.20794 | -80.82436 | 209.705 | 4.18738689295133
75
+ 1 | 2005-03-05T13:33:11Z | 74 | 35.20736 | -80.82414 | 209.224 | 4.22933945730162
76
+ 1 | 2005-03-05T13:33:21Z | 75 | 35.20704 | -80.82410 | 208.743 | 4.25156316199676
77
+ 1 | 2005-03-05T13:33:35Z | 76 | 35.20659 | -80.82410 | 207.782 | 4.28265362467911
78
+ 1 | 2005-03-05T13:33:51Z | 77 | 35.20607 | -80.82414 | 206.340 | 4.31865129835617
79
+ 1 | 2005-03-05T13:34:38Z | 78 | 35.20470 | -80.82448 | 208.743 | 4.41523110646448
80
+ 1 | 2005-03-05T13:35:42Z | 79 | 35.20286 | -80.82489 | 219.799 | 4.5444466773487
81
+ 1 | 2005-03-05T13:36:29Z | 80 | 35.20142 | -80.82511 | 224.125 | 4.64470853975442
82
+ 1 | 2005-03-05T13:36:52Z | 81 | 35.20073 | -80.82528 | 224.605 | 4.69333712696039
83
+ 1 | 2005-03-05T13:37:35Z | 82 | 35.19947 | -80.82569 | 225.086 | 4.78341534575197
84
+ 1 | 2005-03-05T13:38:07Z | 83 | 35.19850 | -80.82612 | 228.931 | 4.8546942210228
85
+ 1 | 2005-03-05T13:38:18Z | 84 | 35.19822 | -80.82633 | 219.318 | 4.87738353125698
86
+ 1 | 2005-03-05T13:38:21Z | 85 | 35.19809 | -80.82629 | 222.682 | 4.88664508854348
87
+ 1 | 2005-03-05T13:38:26Z | 86 | 35.19794 | -80.82633 | 224.605 | 4.89725196852619
88
+ 1 | 2005-03-05T13:39:20Z | 87 | 35.19646 | -80.82706 | 220.760 | 5.00749881672153
89
+ 1 | 2005-03-05T13:39:40Z | 88 | 35.19588 | -80.82734 | 216.915 | 5.050576534569
90
+ 1 | 2005-03-05T13:40:07Z | 89 | 35.19507 | -80.82760 | 221.241 | 5.10843268542583
91
+ 1 | 2005-03-05T13:41:10Z | 90 | 35.19331 | -80.82835 | 223.644 | 5.23719334496019
92
+ 1 | 2005-03-05T13:41:17Z | 91 | 35.19311 | -80.82839 | 226.047 | 5.25119470467369
93
+ 1 | 2005-03-05T13:41:31Z | 92 | 35.19305 | -80.82790 | 226.047 | 5.27916957701965
94
+ 1 | 2005-03-05T13:41:54Z | 93 | 35.19286 | -80.82712 | 226.047 | 5.32512429470667
95
+ 1 | 2005-03-05T13:42:07Z | 94 | 35.19281 | -80.82665 | 224.125 | 5.35188512689578
96
+ 1 | 2005-03-05T13:42:47Z | 95 | 35.19341 | -80.82526 | 222.682 | 5.44064176601869
97
+ 1 | 2005-03-05T13:42:52Z | 96 | 35.19339 | -80.82506 | 222.682 | 5.45201819754931
98
+ 1 | 2005-03-05T13:43:15Z | 97 | 35.19262 | -80.82457 | 221.721 | 5.51198131194714
99
+ 1 | 2005-03-05T13:43:41Z | 98 | 35.19200 | -80.82410 | 224.125 | 5.56237103993908
100
+ 1 | 2005-03-05T13:44:00Z | 99 | 35.19150 | -80.82378 | 222.202 | 5.60135579217499
101
+ 1 | 2005-03-05T13:44:53Z | 100 | 35.18996 | -80.82313 | 220.760 | 5.71390631630715
102
+ 1 | 2005-03-05T13:45:14Z | 101 | 35.18932 | -80.82279 | 224.605 | 5.76211154544005
103
+ 1 | 2005-03-05T13:46:05Z | 102 | 35.18790 | -80.82223 | 215.953 | 5.86518904360886
104
+ 1 | 2005-03-05T13:46:10Z | 103 | 35.18781 | -80.82225 | 209.705 | 5.87150921538085
105
+ 1 | 2005-03-05T13:47:20Z | 104 | 35.18571 | -80.82131 | 209.224 | 6.02600216440376
106
+ 1 | 2005-03-05T13:47:50Z | 105 | 35.18490 | -80.82105 | 194.324 | 6.08385879638182
107
+ 1 | 2005-03-05T13:48:06Z | 106 | 35.18447 | -80.82088 | 192.401 | 6.11507981370546
108
+ 1 | 2005-03-05T13:48:29Z | 107 | 35.18376 | -80.82045 | 207.782 | 6.16981423395522
109
+ 1 | 2005-03-05T13:48:40Z | 108 | 35.18344 | -80.82032 | 212.589 | 6.19310985522704
110
+ 1 | 2005-03-05T13:48:56Z | 109 | 35.18301 | -80.82017 | 210.666 | 6.22400249414074
111
+ 1 | 2005-03-05T13:49:08Z | 110 | 35.18271 | -80.82011 | 202.014 | 6.24500459583866
112
+ 1 | 2005-03-05T13:50:13Z | 111 | 35.18101 | -80.81938 | 207.301 | 6.36948149803506
113
+ 1 | 2005-03-05T13:51:53Z | 112 | 35.17850 | -80.81846 | 208.743 | 6.550512405446
114
+ 1 | 2005-03-05T13:52:22Z | 113 | 35.17769 | -80.81798 | 220.279 | 6.61269444995211
115
+ 1 | 2005-03-05T13:52:36Z | 114 | 35.17734 | -80.81770 | 217.876 | 6.64158687021785
116
+ 1 | 2005-03-05T13:52:42Z | 115 | 35.17719 | -80.81781 | 218.837 | 6.65366946336068
117
+ 1 | 2005-03-05T13:52:50Z | 116 | 35.17706 | -80.81807 | 215.953 | 6.67088160702726
118
+ 1 | 2005-03-05T13:53:36Z | 117 | 35.17599 | -80.81925 | 212.589 | 6.77040907973266
119
+ 1 | 2005-03-05T13:53:54Z | 118 | 35.17563 | -80.81976 | 209.224 | 6.80846379300353
120
+ 1 | 2005-03-05T13:54:10Z | 119 | 35.17515 | -80.82002 | 217.395 | 6.8447321568443
121
+ 1 | 2005-03-05T13:54:25Z | 120 | 35.17483 | -80.82045 | 209.705 | 6.87757273270934
122
+ 1 | 2005-03-05T13:54:41Z | 121 | 35.17445 | -80.82082 | 205.379 | 6.91112718199423
123
+ 1 | 2005-03-05T13:54:58Z | 122 | 35.17400 | -80.82114 | 200.092 | 6.94708839683731
124
+ 1 | 2005-03-05T13:55:24Z | 123 | 35.17322 | -80.82146 | 201.053 | 7.00392808652734
125
+ 1 | 2005-03-05T13:55:39Z | 124 | 35.17286 | -80.82178 | 200.572 | 7.03467282378939
126
+ 1 | 2005-03-05T13:55:55Z | 125 | 35.17254 | -80.82219 | 203.937 | 7.06668767280766
127
+ 1 | 2005-03-05T13:56:23Z | 126 | 35.17215 | -80.82315 | 198.169 | 7.12723097967067
128
+ 1 | 2005-03-05T13:57:23Z | 127 | 35.17035 | -80.82251 | 211.147 | 7.25673914000319
129
+ 1 | 2005-03-05T13:57:37Z | 128 | 35.16996 | -80.82245 | 208.743 | 7.28389646203507
130
+ 1 | 2005-03-05T13:57:52Z | 129 | 35.16955 | -80.82245 | 202.975 | 7.31222335157005
131
+ 1 | 2005-03-05T13:58:08Z | 130 | 35.16908 | -80.82249 | 201.534 | 7.34477414431401
132
+ 1 | 2005-03-05T13:58:36Z | 131 | 35.16831 | -80.82264 | 201.534 | 7.39864378608744
133
+ 1 | 2005-03-05T13:58:45Z | 132 | 35.16807 | -80.82288 | 203.456 | 7.42006061565282
134
+ 1 | 2005-03-05T13:58:58Z | 133 | 35.16786 | -80.82328 | 205.859 | 7.4469098467018
135
+ 1 | 2005-03-05T14:00:12Z | 134 | 35.16743 | -80.82599 | 205.379 | 7.60282457704534
136
+ 1 | 2005-03-05T14:00:27Z | 135 | 35.16737 | -80.82659 | 202.014 | 7.63696467666009
137
+ 1 | 2005-03-05T14:00:30Z | 136 | 35.16743 | -80.82665 | 203.456 | 7.64231920897222
138
+ 1 | 2005-03-05T14:00:36Z | 137 | 35.16764 | -80.82674 | 201.534 | 7.6576928224623
139
+ 1 | 2005-03-05T14:01:06Z | 138 | 35.16846 | -80.82747 | 194.324 | 7.72776080256192
140
+ 1 | 2005-03-05T14:01:21Z | 139 | 35.16865 | -80.82800 | 193.843 | 7.76044621745516
141
+ 1 | 2005-03-05T14:01:35Z | 140 | 35.16874 | -80.82854 | 197.208 | 7.7915719134302
142
+ 1 | 2005-03-05T14:01:50Z | 141 | 35.16872 | -80.82908 | 197.208 | 7.82210143346606
143
+ 1 | 2005-03-05T14:02:02Z | 142 | 35.16859 | -80.82953 | 196.246 | 7.84905710916142
144
+ 1 | 2005-03-05T14:02:21Z | 143 | 35.16852 | -80.83021 | 195.766 | 7.88776576241967
145
+ 1 | 2005-03-05T14:02:34Z | 144 | 35.16855 | -80.83064 | 194.324 | 7.91213983611875
146
+ 1 | 2005-03-05T14:02:38Z | 145 | 35.16861 | -80.83077 | 194.324 | 7.9205715017907
147
+ 1 | 2005-03-05T14:02:43Z | 146 | 35.16876 | -80.83081 | 195.285 | 7.93117838177341
148
+ 1 | 2005-03-05T14:02:55Z | 147 | 35.16915 | -80.83077 | 197.208 | 7.95821802360938
149
+ 1 | 2005-03-05T14:03:11Z | 148 | 35.16958 | -80.83064 | 203.456 | 7.98882051211451
150
+ 1 | 2005-03-05T14:03:37Z | 149 | 35.17026 | -80.83036 | 202.014 | 8.03839171773265
151
+ 1 | 2005-03-05T14:03:58Z | 150 | 35.17082 | -80.83004 | 196.727 | 8.08109496236739
152
+ 1 | 2005-03-05T14:04:13Z | 151 | 35.17118 | -80.82994 | 196.246 | 8.10660050751473
153
+ 1 | 2005-03-05T14:04:27Z | 152 | 35.17153 | -80.82991 | 198.169 | 8.13084131307244
154
+ 1 | 2005-03-05T14:04:42Z | 153 | 35.17191 | -80.83000 | 202.495 | 8.15758302522269
155
+ 1 | 2005-03-05T14:04:54Z | 154 | 35.17219 | -80.83017 | 207.301 | 8.17917959949849
156
+ 1 | 2005-03-05T14:05:23Z | 155 | 35.17277 | -80.83103 | 207.782 | 8.24214574357516
157
+ 1 | 2005-03-05T14:05:57Z | 156 | 35.17344 | -80.83221 | 204.898 | 8.32328626319684
158
+ 1 | 2005-03-05T14:06:00Z | 157 | 35.17352 | -80.83230 | 204.898 | 8.33079526926888
159
+ 1 | 2005-03-05T14:06:33Z | 158 | 35.17406 | -80.83341 | 200.572 | 8.40374450603997
160
+ 1 | 2005-03-05T14:07:03Z | 159 | 35.17427 | -80.83440 | 197.688 | 8.46150615929062
161
+ 1 | 2005-03-05T14:08:03Z | 160 | 35.17419 | -80.83650 | 199.611 | 8.58023122986756
162
+ 1 | 2005-03-05T14:08:05Z | 161 | 35.17423 | -80.83654 | 200.572 | 8.58380080977036
163
+ 1 | 2005-03-05T14:08:13Z | 162 | 35.17440 | -80.83659 | 202.975 | 8.59588081085456
164
+ 1 | 2005-03-05T14:08:42Z | 163 | 35.17526 | -80.83644 | 202.495 | 8.65589902578633
165
+ 1 | 2005-03-05T14:09:29Z | 164 | 35.17653 | -80.83631 | 215.953 | 8.74394991696125
166
+ 1 | 2005-03-05T14:09:43Z | 165 | 35.17689 | -80.83635 | 227.009 | 8.76892464945857
167
+ 1 | 2005-03-05T14:09:51Z | 166 | 35.17711 | -80.83631 | 227.009 | 8.78429124515253
168
+ 1 | 2005-03-05T14:09:54Z | 167 | 35.17719 | -80.83622 | 227.489 | 8.79180001953306
169
+ 1 | 2005-03-05T14:10:01Z | 168 | 35.17741 | -80.83616 | 225.567 | 8.80737286936987
170
+ 1 | 2005-03-05T14:10:42Z | 169 | 35.17859 | -80.83564 | 226.047 | 8.89402644251433
171
+ 1 | 2005-03-05T14:11:24Z | 170 | 35.17990 | -80.83532 | 212.589 | 8.98632069221351
172
+ 1 | 2005-03-05T14:11:54Z | 171 | 35.18080 | -80.83517 | 216.915 | 9.04907599898347
173
+ 1 | 2005-03-05T14:12:22Z | 172 | 35.18166 | -80.83476 | 211.627 | 9.11284481374281
174
+ 1 | 2005-03-05T14:12:55Z | 173 | 35.18256 | -80.83455 | 218.357 | 9.17614648510883
175
+ 1 | 2005-03-05T14:13:54Z | 174 | 35.18423 | -80.83403 | 219.318 | 9.29520453074226
176
+ 1 | 2005-03-05T14:14:09Z | 175 | 35.18462 | -80.83371 | 214.992 | 9.32764750241309
177
+ 1 | 2005-03-05T14:15:02Z | 176 | 35.18565 | -80.83227 | 212.108 | 9.43570220637116
178
+ 1 | 2005-03-05T14:15:19Z | 177 | 35.18599 | -80.83189 | 208.743 | 9.46751770659419
179
+ 1 | 2005-03-05T14:15:30Z | 178 | 35.18629 | -80.83197 | 208.743 | 9.48873130253847
180
+ 1 | 2005-03-05T14:15:42Z | 179 | 35.18657 | -80.83225 | 208.743 | 9.51371536776566
181
+ 1 | 2005-03-05T14:15:56Z | 180 | 35.18687 | -80.83260 | 209.705 | 9.5423541952161
182
+ 1 | 2005-03-05T14:16:09Z | 181 | 35.18702 | -80.83305 | 209.224 | 9.56979593557512
183
+ 1 | 2005-03-05T14:16:20Z | 182 | 35.18648 | -80.83350 | 219.318 | 9.61493553806241
184
+ 1 | 2005-03-05T14:16:45Z | 183 | 35.18597 | -80.83414 | 215.953 | 9.66540881829436
185
+ 1 | 2005-03-05T14:16:58Z | 184 | 35.18573 | -80.83451 | 210.666 | 9.69208180658561
186
+ 1 | 2005-03-05T14:17:39Z | 185 | 35.18483 | -80.83549 | 213.550 | 9.77532067654695
187
+ 1 | 2005-03-05T14:17:52Z | 186 | 35.18451 | -80.83566 | 213.550 | 9.79942350765473
188
+ 1 | 2005-03-05T14:18:06Z | 187 | 35.18412 | -80.83577 | 214.511 | 9.82707536807506
189
+ 1 | 2005-03-05T14:18:30Z | 188 | 35.18342 | -80.83590 | 215.473 | 9.87599231512961
190
+ 1 | 2005-03-05T14:19:03Z | 189 | 35.18249 | -80.83618 | 212.108 | 9.94216278012939
191
+ 1 | 2005-03-05T14:19:33Z | 190 | 35.18157 | -80.83635 | 214.992 | 10.0064464032095
192
+ 1 | 2005-03-05T14:19:43Z | 191 | 35.18129 | -80.83646 | 215.953 | 10.0267643972185
193
+ 1 | 2005-03-05T14:19:47Z | 192 | 35.18125 | -80.83661 | 216.434 | 10.0356740064459
194
+ 1 | 2005-03-05T14:20:11Z | 193 | 35.18136 | -80.83751 | 214.511 | 10.0870616612511
195
+ 1 | 2005-03-05T14:20:20Z | 194 | 35.18144 | -80.83790 | 214.511 | 10.1097677575187
196
+ 1 | 2005-03-05T14:20:43Z | 195 | 35.18174 | -80.83865 | 212.589 | 10.1569196199737
197
+ 1 | 2005-03-05T14:21:08Z | 196 | 35.18236 | -80.83940 | 215.473 | 10.2171572709319
198
+ 1 | 2005-03-05T14:21:26Z | 197 | 35.18284 | -80.83978 | 214.511 | 10.2566572213943
199
+ 1 | 2005-03-05T14:21:39Z | 198 | 35.18320 | -80.84004 | 217.395 | 10.2855395238321
200
+ 1 | 2005-03-05T14:21:53Z | 199 | 35.18365 | -80.84008 | 209.224 | 10.3167119123429
201
+ 1 | 2005-03-05T14:22:10Z | 200 | 35.18414 | -80.84019 | 208.743 | 10.3511311454717
202
+ 1 | 2005-03-05T14:22:13Z | 201 | 35.18417 | -80.84036 | 214.511 | 10.360951764936
203
+ 1 | 2005-03-05T14:22:25Z | 202 | 35.18447 | -80.84060 | 217.876 | 10.3857160026808
204
+ 1 | 2005-03-05T14:22:42Z | 203 | 35.18500 | -80.84062 | 217.395 | 10.4223511038034
205
+ 1 | 2005-03-05T14:23:17Z | 204 | 35.18608 | -80.84045 | 216.915 | 10.4975832401729
206
+ 1 | 2005-03-05T14:23:31Z | 205 | 35.18651 | -80.84043 | 218.837 | 10.5273134433703
207
+ 1 | 2005-03-05T14:23:48Z | 206 | 35.18696 | -80.84021 | 222.682 | 10.5607938751304
208
+ 1 | 2005-03-05T14:24:03Z | 207 | 35.18736 | -80.84021 | 223.644 | 10.5884298761554
209
+ 1 | 2005-03-05T14:24:18Z | 208 | 35.18771 | -80.84011 | 219.799 | 10.6132619550072
210
+ 1 | 2005-03-05T14:24:56Z | 209 | 35.18867 | -80.83955 | 222.682 | 10.6867400519163
211
+ 1 | 2005-03-05T14:26:33Z | 210 | 35.19116 | -80.83779 | 224.125 | 10.8854138818426
212
+ 1 | 2005-03-05T14:26:56Z | 211 | 35.19176 | -80.83738 | 222.682 | 10.9328937584589
213
+ 1 | 2005-03-05T14:27:14Z | 212 | 35.19228 | -80.83708 | 220.279 | 10.9726134949364
214
+ 1 | 2005-03-05T14:27:30Z | 213 | 35.19273 | -80.83687 | 218.357 | 11.0058882486447
215
+ 1 | 2005-03-05T14:27:48Z | 214 | 35.19322 | -80.83676 | 215.953 | 11.0403073301359
216
+ 1 | 2005-03-05T14:28:01Z | 215 | 35.19365 | -80.83678 | 165.484 | 11.0700374748156
217
+ 1 | 2005-03-05T14:28:07Z | 216 | 35.19387 | -80.83684 | 204.898 | 11.0856101012175
218
+ 1 | 2005-03-05T14:28:34Z | 217 | 35.19462 | -80.83697 | 199.130 | 11.1379448656822
219
+ 1 | 2005-03-05T14:28:44Z | 218 | 35.19485 | -80.83674 | 197.688 | 11.158466654738
220
+ 1 | 2005-03-05T14:30:09Z | 219 | 35.19562 | -80.83384 | 197.688 | 11.3306260112061
221
+ 1 | 2005-03-05T14:30:31Z | 220 | 35.19597 | -80.83330 | 195.285 | 11.3695396087745
222
+ 1 | 2005-03-05T14:30:56Z | 221 | 35.19644 | -80.83272 | 195.766 | 11.4156565260447
223
+ 1 | 2005-03-05T14:31:14Z | 222 | 35.19674 | -80.83230 | 196.727 | 11.4471510623899
224
+ 1 | 2005-03-05T14:31:24Z | 223 | 35.19700 | -80.83219 | 197.208 | 11.4661576750723
225
+ 1 | 2005-03-05T14:31:45Z | 224 | 35.19753 | -80.83210 | 202.014 | 11.5031262424333
226
+ 1 | 2005-03-05T14:31:59Z | 225 | 35.19796 | -80.83208 | 204.417 | 11.5328563871129
227
+ 1 | 2005-03-05T14:32:19Z | 226 | 35.19850 | -80.83223 | 213.069 | 11.5711140454601
228
+ 1 | 2005-03-05T14:32:47Z | 227 | 35.19929 | -80.83225 | 212.589 | 11.6257068382031
229
+ 1 | 2005-03-05T14:33:06Z | 228 | 35.19983 | -80.83212 | 214.511 | 11.6637304969813
230
+ 1 | 2005-03-05T14:33:36Z | 229 | 35.20062 | -80.83172 | 215.473 | 11.722798828852
231
+ 1 | 2005-03-05T14:33:48Z | 230 | 35.20097 | -80.83174 | 214.511 | 11.7470067417448
232
+ 1 | 2005-03-05T14:34:05Z | 231 | 35.20138 | -80.83204 | 216.434 | 11.7800107114036
233
+ 1 | 2005-03-05T14:35:00Z | 232 | 35.20277 | -80.83322 | 207.782 | 11.8968891531704
234
+ 1 | 2005-03-05T14:35:19Z | 233 | 35.20316 | -80.83363 | 206.340 | 11.9324108248346
235
+ 1 | 2005-03-05T14:36:13Z | 234 | 35.20419 | -80.83504 | 208.743 | 12.0391830723979
236
+ 1 | 2005-03-05T14:36:50Z | 235 | 35.20500 | -80.83601 | 198.650 | 12.1174804265797
237
+ 1 | 2005-03-05T14:37:22Z | 236 | 35.20565 | -80.83687 | 197.208 | 12.1836152827885
238
+ 1 | 2005-03-05T14:37:56Z | 237 | 35.20631 | -80.83768 | 199.130 | 12.2481924440512
239
+ 1 | 2005-03-05T14:39:06Z | 238 | 35.20775 | -80.83910 | 207.782 | 12.3759579346014
240
+ 1 | 2005-03-05T14:40:19Z | 239 | 35.20934 | -80.84051 | 214.031 | 12.5116160401105
241
+ 1 | 2005-03-05T14:41:34Z | 240 | 35.21088 | -80.84197 | 214.992 | 12.6462009665708
242
+ 1 | 2005-03-05T14:42:18Z | 241 | 35.21189 | -80.84279 | 215.473 | 12.7299382667899
243
+ 1 | 2005-03-05T14:42:34Z | 242 | 35.21225 | -80.84317 | 214.992 | 12.7627826566699
244
+ 1 | 2005-03-05T14:43:44Z | 243 | 35.21393 | -80.84459 | 215.953 | 12.9038408253177
245
+ 1 | 2005-03-05T14:43:49Z | 244 | 35.21406 | -80.84450 | 214.992 | 12.9141595434003
246
+ 1 | 2005-03-05T14:44:05Z | 245 | 35.21431 | -80.84399 | 211.627 | 12.9477315128867
247
+ 1 | 2005-03-05T14:45:00Z | 246 | 35.21537 | -80.84242 | 209.705 | 13.0626968352779
248
+ 1 | 2005-03-05T14:45:30Z | 247 | 35.21586 | -80.84159 | 209.224 | 13.1204983528532
249
+ 1 | 2005-03-05T14:46:29Z | 248 | 35.21695 | -80.83998 | 209.705 | 13.2385232480761
250
+ 1 | 2005-03-05T14:46:43Z | 249 | 35.21728 | -80.83957 | 209.705 | 13.2710100551754
251
+ 1 | 2005-03-05T14:47:26Z | 250 | 35.21831 | -80.83809 | 208.263 | 13.3807489594998