Back to class index
float2[Class Summary]
x
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::ToPolarCoordinates

Syntax

float2 float2::ToPolarCoordinates() const; [8 lines of code]

Converts this euclidean (x,y) float2 to polar coordinates representation in the form (theta, length).

Note
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.

Return Value

A float2 that has the first component (x) representing the aimed angle (azimuth) of this direction vector, in radians, and is equal to atan2(this.y, this.x). The x component has a range of ]-pi/2, pi/2]. The second component (y) of the returned vector stores the length (radius) of this vector.

See Also

SetFromPolarCoordinates, FromPolarCoorindates, AimedAngle.