|
@@ -70,17 +70,15 @@ impl Track {
|
|
|
|
|
|
|
|
|
|
|
|
|
fn truncate_by_length(&mut self, length_km: f64){
|
|
fn truncate_by_length(&mut self, length_km: f64){
|
|
|
-
|
|
|
|
|
let mut sum = 0.0;
|
|
let mut sum = 0.0;
|
|
|
let mut prev_point = &self.points[0];
|
|
let mut prev_point = &self.points[0];
|
|
|
|
|
|
|
|
for i in self.points.len()..0 {
|
|
for i in self.points.len()..0 {
|
|
|
println!("{:?}", self.points[i]);
|
|
println!("{:?}", self.points[i]);
|
|
|
- let d = dist(prev_point, pt);
|
|
|
|
|
|
|
+ let d = dist(prev_point, &self.points[i]);
|
|
|
sum += d;
|
|
sum += d;
|
|
|
- prev_point = pt;
|
|
|
|
|
|
|
+ prev_point = &self.points[i];
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
fn parse(&mut self) {
|
|
fn parse(&mut self) {
|
|
@@ -112,6 +110,10 @@ impl Track {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
fn dist(p1: &Point, p2: &Point) -> f64 {
|
|
fn dist(p1: &Point, p2: &Point) -> f64 {
|
|
|
let r = 6371.0;
|
|
let r = 6371.0;
|
|
|
// println!("analyzing p1 {:?} p2 {:?}", p1, p2);
|
|
// println!("analyzing p1 {:?} p2 {:?}", p1, p2);
|