/// <summary>
        ///
        /// </summary>
        /// <param name="r0"></param>
        /// <param name="r1"></param>
        /// <param name="p0"></param>
        /// <param name="p1"></param>
        public void Set(Vec3d p0, Quaterniond r0, Vec3d p1, Quaterniond r1)
        {
            r0.Invert();
            _r10 = r0.Apply(r1);
            _d10 = r0.Apply(p1 - p0);

            r1.Invert();
            _d01 = r1.Apply(p0 - p1);
        }