Back to class indexx | y | z | w | identity[static][const] | nan[static][const] | ctor (+7 overloads) | WorldX()[const] | WorldY()[const] | WorldZ()[const] | Axis()[const] | Angle()[const] | Dot(rhs)[const] | LengthSq()[const] | Length()[const] | Normalize() | Normalized()[const] | IsNormalized(epsilon)[const] | IsInvertible(epsilon)[const] | IsFinite()[const] | Equals(rhs,epsilon)[const] | BitEquals(other)[const] | ptr() (+1 overload) | Inverse() | Inverted()[const] | InverseAndNormalize() | Conjugate() | Conjugated()[const] | Transform(x,y,z)[const] (+2 overloads) | Lerp(target,t)[const] | Slerp(target,t)[const] | AngleBetween(target)[const] | AxisFromTo(target)[const] | ToAxisAngle(...)[const] (+1 overload) | SetFromAxisAngle(...) (+1 overload) | Set(matrix) (+3 overloads) | ToEulerXYX()[const] | ToFloat3x3()[const] | ToFloat3x4()[const] | ToFloat4x4()[const] (+2 overloads) | ToString()[const] | ToString2()[const] | SerializeToString()[const] | SerializeToCodeString()[const] | operator*(rhs)[const] (+2 overloads) | operator/(rhs)[const] | operator+()[const] | Mul(rhs)[const] (+3 overloads) | Neg()[const] | Lerp(source,target,t)[static] | Slerp(source,target,t)[static] | SlerpVector(from,to,t)[static] | SlerpVectorAbs(...)[static] | LookAt(...)[static] | RotateX(angleRadians)[static] | RotateY(angleRadians)[static] | RotateZ(angleRadians)[static] | RotateAxisAngle(...)[static] | RotateFromTo(...)[static] (+2 overloads) | FromEuler***(x2,y,x)[static] | RandomRotation(lcg)[static] | FromString(str,outEndStr)[static] (+1 overload) |
| Quat::RotateFromToSyntaxMUST_USE_RESULT Quat Quat::RotateFromTo(const float3 &sourceDirection, const float3 &targetDirection); [18 lines of code] MUST_USE_RESULT Quat Quat::RotateFromTo(const float4 &sourceDirection, const float4 &targetDirection); [27 lines of code]Creates a new quaternion that rotates sourceDirection vector (in world space) to coincide with the targetDirection vector (in world space). Rotation is performed around the origin. The vectors sourceDirection and targetDirection are assumed to be normalized. Note There are multiple such rotations - this function returns the rotation that has the shortest angle (when decomposed to axis-angle notation). SyntaxMUST_USE_RESULT Quat Quat::RotateFromTo(const float3 &sourceDirection, const float3 &targetDirection, const float3 &sourceDirection2, const float3 &targetDirection2); [5 lines of code]Creates a new quaternion that. rotates sourceDirection vector to coincide with the targetDirection vector, and then rotates sourceDirection2 (which was transformed by 1.) to targetDirection2, but keeping the constraint that sourceDirection must look at targetDirection.
|