public Quaternion fromAxes(Vector3f[] axis) {
        if (axis.length != 3) {
            throw new IllegalArgumentException(
                    "Axis array must have three elements");
        }
        return fromAxes(axis[0], axis[1], axis[2]);
    }
Sets the quaternion from the specified orthonormal basis.

<p>The 3 basis vectors describe the axes of a rotated coordinate system.
They are assumed to be normalized, mutually orthogonal, and in right-hand
order. No error checking is performed; the caller must ensure that the
specified vectors represent a right-handed coordinate system.

@param axis the array of desired basis vectors (not null, array length=3,
    each vector having length=1, unaffected)
@return the (modified) current instance (for chaining)
@throws IllegalArgumentException if {@code axis.length != 3}
jme3-core/src/main/java/com/jme3/math/Quaternion.java