Back to class index
float3[Class Summary]
x
y
z
zero[static][const]
one[static][const]
unitX[static][const]
unitY[static][const]
unitZ[static][const]
nan[static][const]
inf[static][const]
ctor (+4 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/xz/..()[const]
xyz/xzy/yzx/..()[const]
Swizzled(i,j,k,l)[const] (+2 overloads)
SetFromScalar(scalar)
Set(x,y,z)
SetFromSphericalCoordinates(...) (+2 overloads)
ToPos4()[const]
ToDir4()[const]
ToSphericalCoordinates()[const]
ToSphericalCoordinatesNormalized()[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]
ClampLength(maxLength)[const] (+1 overload)
Distance(point)[const] (+9 overloads)
DistanceSq(point)[const]
Dot(v)[const]
Cross(v)[const]
OuterProduct(rhs)[const]
Perpendicular(hint,hint2)[const]
AnotherPerpendicular(hint,hint2)[const]
PerpendicularBasis(outB,outC)[const]
RandomPerpendicular(rng)[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]
FromSphericalCoordinates(...)[static] (+2 overloads)
AreCollinear(p1,p2,p3,epsilonSq)[static]
FromString(str,outEndStr)[static] (+1 overload)
ScalarTripleProduct(u,v,w)[static]
Lerp(a,b,t)[static]
Orthogonalize(a,b)[static] (+1 overload)
AreOrthogonal(a,b,epsilon)[static] (+1 overload)
Orthonormalize(a,b)[static] (+1 overload)
AreOrthonormal(a,b,epsilon)[static] (+1 overload)
RandomDir(lcg,length)[static]
RandomSphere(lcg,center,radius)[static]
RandomBox(...)[static] (+2 overloads)
RandomGeneral(...)[static]

float3::Normalize

Syntax

float float3::Normalize(); [15 lines of code]

Normalizes this float3.

In the case of failure, this vector is set to (1, 0, 0), so calling this function will never result in an unnormalized vector.

Note
If this function fails to normalize the vector, no error message is printed, the vector is set to (1,0,0) and an error code 0 is returned. This is different than the behavior of the Normalized() function, which prints an error if normalization fails. This function operates in-place.

Return Value

The old length of this vector, or 0 if normalization failed.

See Also

Normalized().