Math – Find a quaternion of rotation from an orthonormal basis?


Given three unitary 3D vectors $ a $, $ b $, $ c $ such as:

$ a times b = c $

$ b times c = a $

$ c times a = b $

(that is to say $ a, b, c $ for men orthonormal basis)

How do you calculate a unit quartile $ q $ so that the product of the sand width (i.e. rotation) of $ q $ the (1,0,0) is $ a $, (0,1,0) is $ b $ and (0,0,1) is $ c $ ?