def get_direction(self):
     pt0 = self.get_start_location()
     pt1 = self.get_end_location()
     if self.crs == '4326':
         return calculate_initial_compass_bearing(pt0, pt1)
     else:
         return azimuth(pt0, pt1)
Beispiel #2
0
 def get_direction(self):
     """Return compass bearing as float of Trajectory object."""
     pt0 = self.get_start_location()
     pt1 = self.get_end_location()
     if self.is_latlon():
         return calculate_initial_compass_bearing(pt0, pt1)
     else:
         return azimuth(pt0, pt1)
Beispiel #3
0
 def calculate_current_cog_and_sog(self):
     point1 = self.traj.get_start_location()
     point2 = self.traj.get_end_location()
     t1 = self.traj.get_start_time()
     t2 = self.traj.get_end_time()
     cog_deg = calculate_initial_compass_bearing(point1, point2)
     dist_meters = measure_distance_spherical(point1, point2)
     meters_per_sec = dist_meters / (t2 - t1).total_seconds()
     return [cog_deg, meters_per_sec]
 def compute_heading(self, row):
     pt0 = row['prev_pt']
     pt1 = row['geometry']
     if type(pt0) != Point:
         return 0.0
     if pt0 == pt1:
         return 0.0
     if self.crs == '4326':
         return calculate_initial_compass_bearing(pt0, pt1)
     else:
         return azimuth(pt0, pt1)
Beispiel #5
0
 def test_compass_bearing_south(self):
     result = calculate_initial_compass_bearing(Point(0,0), Point(0,-10))
     expected_result = 180
     self.assertEqual(result, expected_result) 
Beispiel #6
0
 def test_compass_bearing_west(self):
     result = calculate_initial_compass_bearing(Point(0,0), Point(-10,0))
     expected_result = 270
     self.assertEqual(result, expected_result) 
 def test_compass_bearing_north(self):
     result = calculate_initial_compass_bearing(Point(0, 0), Point(0, 10))
     expected_result = 0
     self.assertEqual(expected_result, result)