|
@@ -0,0 +1,51 @@
|
|
|
+extern crate xml;
|
|
|
+
|
|
|
+use std::fs::File;
|
|
|
+use std::io::BufReader;
|
|
|
+
|
|
|
+use xml::reader::{EventReader, XmlEvent};
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+struct Point {
|
|
|
+ lat: f64,
|
|
|
+ long: f64,
|
|
|
+ ele: f64
|
|
|
+}
|
|
|
+
|
|
|
+struct Tour {
|
|
|
+ points: Vec<Point>
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+fn dist(p1: Point, p2: Point) -> f64{
|
|
|
+ let R = 6371;
|
|
|
+ let dLat: f64 = p1.lat - p2.lat;
|
|
|
+ return 1.0
|
|
|
+}
|
|
|
+
|
|
|
+fn main() {
|
|
|
+ let file = File::open("data/Day1-1.gpx").unwrap();
|
|
|
+ let file = BufReader::new(file);
|
|
|
+
|
|
|
+ let parser = EventReader::new(file);
|
|
|
+ let mut depth = 0;
|
|
|
+ for e in parser {
|
|
|
+ match e {
|
|
|
+ Ok(XmlEvent::StartElement { name, attributes, namespace }) => {
|
|
|
+ println!("{:?} {:?}", name, attributes);
|
|
|
+ depth += 1;
|
|
|
+ }
|
|
|
+ Ok(XmlEvent::Characters(text)) => {
|
|
|
+ println!("{:?}", text);
|
|
|
+ }
|
|
|
+ Err(e) => {
|
|
|
+ println!("Error: {}", e);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ _ => {}
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|