Back to class indexx | y | zero[static][const] | one[static][const] | unitX[static][const] | unitY[static][const] | nan[static][const] | inf[static][const] | ctor (+3 overloads) | ptr() (+1 overload) | operator[](index) (+1 overload) | At(index) (+1 overload) | operators +,-,*,/(v)[const] (+1 overload) | operators +=,-=,*=,/=(v) | Add/Sub/Mul/Div(v)[const] (+1 overload) | xx/xy/yx/yy()[const] | Swizzled(i,j,k,l)[const] (+2 overloads) | SetFromScalar(scalar) | Set(x,y) | SetFromPolarCoordinates(theta,length) (+1 overload) | ToPolarCoordinates()[const] | AimedAngle()[const] | Length()[const] | LengthSq()[const] | Normalize() | Normalized()[const] | ScaleToLength(newLength) | ScaledToLength(newLength)[const] | IsNormalized(epsilonSq)[const] | IsZero(epsilonSq)[const] | IsFinite()[const] | IsPerpendicular(other,epsilonSq)[const] | Equals(other,epsilon)[const] (+1 overload) | BitEquals(other)[const] | ToString()[const] | SerializeToString()[const] | SerializeToCodeString()[const] | SumOfElements()[const] | ProductOfElements()[const] | AverageOfElements()[const] | MinElement()[const] | MinElementIndex()[const] | MaxElement()[const] | MaxElementIndex()[const] | Abs()[const] | Neg()[const] | Recip()[const] | Min(ceil)[const] (+1 overload) | Max(floor)[const] (+1 overload) | Clamp(floor,ceil)[const] (+1 overload) | Clamp01()[const] | Distance(point)[const] | DistanceSq(point)[const] | Dot(v)[const] | Perp()[const] | PerpDot(rhs)[const] | Rotate90CW() | Rotated90CW()[const] | Rotate90CCW() | Rotated90CCW()[const] | Reflect(normal)[const] | Refract(...)[const] | ProjectTo(direction)[const] | ProjectToNorm(direction)[const] | AngleBetween(other)[const] | AngleBetweenNorm(normalizedVector)[const] | Decompose(...)[const] | Lerp(b,t)[const] | FromScalar(scalar)[static] | FromPolarCoordinates(theta,length)[static] (+1 overload) | FromString(str,outEndStr)[static] (+1 overload) | Lerp(a,b,t)[static] | Orthogonalize(a,b)[static] | AreOrthogonal(a,b,epsilon)[static] | Orthonormalize(a,b)[static] | OrientedCCW(a,b,c)[static] | ConvexHull(...)[static] | ConvexHullInPlace(...)[static] | ConvexHullContains(...)[static] | MinAreaRectInPlace(...)[static] | RandomDir(lcg,length)[static] | RandomBox(...)[static] |
| float2::OrthonormalizeSyntaxvoid float2::Orthonormalize(float2 &a, float2 &b); [6 lines of code]Makes the given vectors linearly independent and normalized in length. This function directly follows the Gram-Schmidt procedure on the input vectors. The vector a is first normalized, and vector b is modified to be perpendicular to a, and also normalized. Note If either of the input vectors is zero, then the resulting set of vectors cannot be made orthonormal. See Also Orthogonalize(), AreOrthogonal(), AreOrthonormal(). |