diff --git a/skais/ais/ais_trajectory.py b/skais/ais/ais_trajectory.py
index 6289cabc532fcc6e63384a5b76090e85bb2788b0..9ce6082197096898c856ac87f27287fbb723ca7e 100644
--- a/skais/ais/ais_trajectory.py
+++ b/skais/ais/ais_trajectory.py
@@ -5,7 +5,7 @@ import numpy as np
 from numba import jit
 from scipy.interpolate import interp1d
 
-from skais.utils.geography import great_circle, position_from_distance
+from skais.utils.geography import great_circle, position_from_distance, get_coord
 from skais.ais.ais_points import AISPoints
 
 
@@ -229,16 +229,13 @@ class AISTrajectory(AISPoints):
         if features is not None:
             nb_channels = len(features)
         data = np.zeros((height, width, nb_channels), dtype=np.uint8)
-        if link:
-            raise ValueError("feature not implemented")
         if bounding_box != 'fit':
             raise ValueError("feature not implemented")
         positions = self.df[['longitude', 'latitude']].to_numpy()
-        range_longitude = (min(positions[:, 0]), max(positions[:, 0]))
-        range_latitude = (min(positions[:, 1]), max(positions[:, 1]))
+        min_lon, max_lon = (min(positions[:, 0]), max(positions[:, 0]))
+        min_lat, max_lat = (min(positions[:, 1]), max(positions[:, 1]))
         for longitude, latitude in positions:
-            x_coord = max(min(height - int(height * (latitude - range_latitude[0]) / (range_latitude[1] - range_latitude[0])) - 1, height - 1), 0)
-            y_coord = max(min(int((width - 1) * (longitude - range_longitude[0]) / (range_longitude[1] - range_longitude[0])), width - 1), 0)
+            x_coord, y_coord = get_coord(latitude, longitude, height, width, min_lat, max_lat, min_lon, max_lon)
 
             x_lower_bound = max(0, x_coord - node_size)
             x_upper_bound = min(height - 1, x_coord + node_size)
@@ -249,4 +246,7 @@ class AISTrajectory(AISPoints):
             for x in range(x_lower_bound, x_upper_bound + 1):
                 for y in range(y_lower_bound, y_upper_bound + 1):
                     data[x, y] = [1]
+
+        if link:
+            raise ValueError("feature not implemented")
         return data
diff --git a/skais/utils/geography.py b/skais/utils/geography.py
index 79b110194c7da6bd332b310c1e46a70beb93a2dd..de21a9aed417ba8e959aa0bb5a5780f9b879634f 100644
--- a/skais/utils/geography.py
+++ b/skais/utils/geography.py
@@ -23,6 +23,13 @@ def great_circle(lat1, lat2, long1, long2):
     return d
 
 
+def get_coord(lat, lon, height, width, min_lat, max_lat, min_lon, max_lon):
+    x_coord = max(min(height - int(height * (lat - min_lat) / (max_lat - min_lat)) - 1, height - 1), 0)
+    y_coord = max(min(int((width - 1) * (lon - min_lon) / (max_lon - min_lon)), width - 1), 0)
+
+    return x_coord, y_coord
+
+
 def position_from_distance(position, distances):
     lat = np.arcsin(
         np.sin(np.radians(position[0])) * np.cos(distances[0] / R) + np.cos(np.radians(position[0])) * np.sin(