// quaternion is computed, then normalized to unit length. The result is
// the slerp of the two input quaternions with t-value of 1/2. The
// result is converted back to a rotation matrix and its columns are
// selected as the merged box axes.
final Quaternion kQ0 = Quaternion.fetchTempInstance(), kQ1 = Quaternion.fetchTempInstance();
kQ0.fromAxes(rkBox0._xAxis, rkBox0._yAxis, rkBox0._zAxis);
kQ1.fromAxes(rkBox1._xAxis, rkBox1._yAxis, rkBox1._zAxis);
if (kQ0.dot(kQ1) < 0.0) {
kQ1.multiplyLocal(-1.0);
}