diff --git a/navipy/database/__init__.py b/navipy/database/__init__.py
index 0a3f5fb1ae3ab758fcecad263665c16754679171..1ba96971e5f845c3eb248624b0f6e9d8a05e2242 100644
--- a/navipy/database/__init__.py
+++ b/navipy/database/__init__.py
@@ -195,6 +195,7 @@ class DataBase():
                 WHERE (rowid=?)
                 """.format(tablename), (rowid,))
             self.__viewing_dir = self.db_cursor.fetchone()[0]
+            self.__viewing_dir = np.round(self.__viewing_dir, decimals=3)
         return self.__viewing_dir.copy()
 
     @viewing_directions.setter
diff --git a/navipy/processing/test_opticflow.py b/navipy/processing/test_opticflow.py
index feb9630dadf8e77074d2b3fc10e300d7057c9cfa..989253d6c0a2df1b544b89452a88c437bca4693e 100644
--- a/navipy/processing/test_opticflow.py
+++ b/navipy/processing/test_opticflow.py
@@ -2,8 +2,8 @@ import unittest
 from navipy.processing import mcode
 import pandas as pd
 import numpy as np
-from navipy.moving.agent import posorient_columns
-from navipy.moving.agent import velocities_columns
+from navipy.trajectories import posorient_columns
+from navipy.trajectories import velocities_columns
 from navipy.scene import __spherical_indeces__
 
 
diff --git a/navipy/trajectories/__init__.py b/navipy/trajectories/__init__.py
index 1f2856db9bb50e336d39739df671a43d2623f6c6..8051f6583fa29dc93bf16c66517a939eb173798d 100644
--- a/navipy/trajectories/__init__.py
+++ b/navipy/trajectories/__init__.py
@@ -20,9 +20,30 @@ from scipy.interpolate import CubicSpline
 import warnings
 
 
+def posorient_columns(convention):
+    toreturn = [('location', 'x'),
+                ('location', 'y'),
+                ('location', 'z')]
+    if convention == 'quaternion':
+        for a in range(4):
+            toreturn.append((convention, 'q_{}'.format(a)))
+    else:
+        for a in range(3):
+            toreturn.append((convention, 'alpha_{}'.format(a)))
+    return toreturn
+
+
+def velocities_columns(convention):
+    toreturn = []
+    # Prepend d on dimention for derivative
+    for it1, it2 in posorient_columns(convention):
+        toreturn.append((it1, 'd'+it2))
+    return toreturn
+
+
 def _markers2position(x, kwargs):
-    mark0 = pd.Series(x[:3], index=['x', 'y', 'z'])
-    mark1 = pd.Series(x[3:6], index=['x', 'y', 'z'])
+    mark0 = pd.Series(x[: 3], index=['x', 'y', 'z'])
+    mark1 = pd.Series(x[3: 6], index=['x', 'y', 'z'])
     mark2 = pd.Series(x[6:], index=['x', 'y', 'z'])
     triangle_mode = kwargs['triangle_mode']
     euler_axes = kwargs['euler_axes']