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::ToSphericalCoordinates

Syntax

float3 float3::ToSphericalCoordinates() const; [11 lines of code]

Converts this euclidean (x,y,z) float3 to spherical coordinates representation in the form (azimuth, inclination, radius).

Note
This corresponds to the matrix operation R_y * R_x * (0,0,radius), where R_y is a rotation about the y-axis by azimuth, and R_x is a rotation about the x-axis by inclination. It is valid for the magnitude of this vector to be (very close to) zero, in which case the return value is the zero vector.

See Also

FromSphericalCoordinates, SetFromSphericalCoordinates, ToSphericalCoordinatesNormalized.