Lines Matching full:real
43 real(tquat<T, P>()),
52 real(r),
62 real(r),
72 real(q),
107 return (&real)[i];
114 return (&real)[i];
126 this->real *= s;
137 this->real /= s;
151 return detail::tdualquat<T, P>(-q.real,-q.dual);
161 return detail::tdualquat<T, P>(q.real + p.real,q.dual + p.dual);
171 return detail::tdualquat<T, P>(p.real * o.real,p.real * o.dual + p.dual * o.real);
182 detail::tvec3<T, P> const real_v3(q.real.x,q.real.y,q.real.z);
184 return (cross(real_v3, cross(real_v3,v) + v * q.real.w + dual_v3) + dual_v3 * q.real.w - real_v3 * q.dual.w) * T(2) + v;
224 return detail::tdualquat<T, P>(q.real * s, q.dual * s);
244 return detail::tdualquat<T, P>(q.real / s, q.dual / s);
256 return (q1.real == q2.real) && (q1.dual == q2.dual);
266 return (q1.real != q2.dual) || (q1.real != q2.dual);
277 return q / length(q.real);
292 T const k = dot(x.real,y.real) < static_cast<T>(0) ? -a : a;
303 const glm::detail::tquat<T, P> real = conjugate(q.real);
305 return detail::tdualquat<T, P>(real, dual + (real * (-2.0f * dot(real,dual))));
323 detail::tquat<T, P> r = x.real / length2(x.real);
325 detail::tquat<T, P> const rr(r.w * x.real.w, r.x * x.real.x, r.y * x.real.y, r.z * x.real.z);
328 T const xy = r.x * x.real.y;
329 T const xz = r.x * x.real.z;
330 T const yz = r.y * x.real.z;
331 T const wx = r.w * x.real.x;
332 T const wy = r.w * x.real.y;
333 T const wz = r.w * x.real.z;
373 detail::tquat<T, P> real;
380 real.w = static_cast<T>(0.5) * r;
381 real.x = (x[2].y - x[1].z) * invr;
382 real.y = (x[0].z - x[2].x) * invr;
383 real.z = (x[1].x - x[0].y) * invr;
389 real.x = static_cast<T>(0.5)*r;
390 real.y = (x[1].x + x[0].y) * invr;
391 real.z = (x[0].z + x[2].x) * invr;
392 real.w = (x[2].y - x[1].z) * invr;
398 real.x = (x[1].x + x[0].y) * invr;
399 real.y = static_cast<T>(0.5) * r;
400 real.z = (x[2].y + x[1].z) * invr;
401 real.w = (x[0].z - x[2].x) * invr;
407 real.x = (x[0].z + x[2].x) * invr;
408 real.y = (x[2].y + x[1].z) * invr;
409 real.z = static_cast<T>(0.5) * r;
410 real.w = (x[1].x - x[0].y) * invr;
414 dual.x = T(0.5) * ( x[0].w * real.w + x[1].w * real.z - x[2].w * real.y);
415 dual.y = T(0.5) * (-x[0].w * real.z + x[1].w * real.w + x[2].w * real.x);
416 dual.z = T(0.5) * ( x[0].w * real.y - x[1].w * real.x + x[2].w * real.w);
417 dual.w = -T(0.5) * ( x[0].w * real.x + x[1].w * real.y + x[2].w * real.z);
418 return detail::tdualquat<T, P>(real, dual);