diff --git a/skais/ais/ais_trajectory.py b/skais/ais/ais_trajectory.py index 1f605ce0b77c60165efa7f0c11bd9d2eed0368d9..37d58bb4802d4209d1b50f22c1199c99080ba1d4 100644 --- a/skais/ais/ais_trajectory.py +++ b/skais/ais/ais_trajectory.py @@ -153,7 +153,7 @@ def generate_points_with_features(data, positions, features_vectors, bounds, nod @jit(nopython=True) -def generate_links(data, positions, height, width, lower_lat, upper_lat, lower_lon, upper_lon, values, interpolate=None): +def generate_links(data, positions, height, width, lower_lat, upper_lat, lower_lon, upper_lon, values, interpolate=False): lon, lat = positions[0, 0], positions[0, 1] current_value = values[0] @@ -164,7 +164,7 @@ def generate_links(data, positions, height, width, lower_lat, upper_lat, lower_l x_nxt, y_nxt = get_coord(latitude, longitude, height, width, lower_lat, upper_lat, lower_lon, upper_lon) lon, lat = longitude, latitude - if interpolate is not None and nxt_value != current_value: + if interpolate and (nxt_value != current_value).all() and (x_prv != x_nxt) and (y_prev!= y_nxt): dist = dist_on_grid(x_prv, y_prev, x_nxt, y_nxt) for x, y in bresenham(x_prv, y_prev, x_nxt, y_nxt): dist_prev = dist_on_grid(x_prv, y_prev, x, y) @@ -359,7 +359,7 @@ class AISTrajectory(AISPoints): return result def generate_array_from_positions(self, height=256, width=256, link=True, bounding_box='fit', ref_index=-1, - features=None, node_size=0, interpolation=None): + features=None, node_size=0, interpolation=False): positions = self.df[['longitude', 'latitude']].to_numpy() @@ -399,8 +399,8 @@ class AISTrajectory(AISPoints): else: generate_points_with_features(data, positions, features_vectors, np.array(bounds), node_size, height, width, - lower_lat, upper_lat, lower_lon, upper_lon, ) + lower_lat, upper_lat, lower_lon, upper_lon) if link: generate_links(data, positions, height, width, lower_lat, upper_lat, lower_lon, upper_lon, - generate_values(features_vectors, bounds), interpolation) + generate_values(features_vectors, bounds), interpolate=interpolation) return data