Ejemplo n.º 1
0
 def _transform_m(self, m):
     m[0] -= M_BIAS[0]
     m[1] -= M_BIAS[1]
     m[2] -= M_BIAS[2]
     return [dot_product(M_TRANSFORMATION[0], m),
             dot_product(M_TRANSFORMATION[1], m),
             dot_product(M_TRANSFORMATION[2], m)]
Ejemplo n.º 2
0
 def _calculate_raw_heading(self, a, m, f):
     e = normalize_3d(cross_3d(m, a))
     n = normalize_3d(cross_3d(a, e))
     heading = atan2(dot_product(e, f), dot_product(n, f)) * 180 / pi
     return int(round((heading + 360) if heading < 0 else heading))