vec2f.h File Reference
+ Include dependency graph for vec2f.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  GfVec2f
 Basic type for a vector of 2 float components. More...
 

Functions

GF_API std::ostream & operator<< (std::ostream &, GfVec2f const &)
 Output a GfVec2f. More...
 
GfVec2f GfCompMult (GfVec2f const &v1, GfVec2f const &v2)
 Returns component-wise multiplication of vectors v1 and v2. More...
 
GfVec2f GfCompDiv (GfVec2f const &v1, GfVec2f const &v2)
 Returns component-wise quotient of vectors v1 and v2. More...
 
float GfDot (GfVec2f const &v1, GfVec2f const &v2)
 Returns the dot (inner) product of two vectors. More...
 
float GfGetLength (GfVec2f const &v)
 Returns the geometric length of v. More...
 
float GfNormalize (GfVec2f *v, float eps=GF_MIN_VECTOR_LENGTH)
 Normalizes *v in place to unit length, returning the length before normalization. More...
 
GfVec2f GfGetNormalized (GfVec2f const &v, float eps=GF_MIN_VECTOR_LENGTH)
 Returns a normalized (unit-length) vector with the same direction as v. More...
 
GfVec2f GfGetProjection (GfVec2f const &a, GfVec2f const &b)
 Returns the projection of a onto b. More...
 
GfVec2f GfGetComplement (GfVec2f const &a, GfVec2f const &b)
 Returns the orthogonal complement of a.GetProjection(b). More...
 
bool GfIsClose (GfVec2f const &v1, GfVec2f const &v2, double tolerance)
 Tests for equality within a given tolerance, returning true if the length of the difference vector is less than or equal to tolerance. More...
 

Function Documentation

◆ GfCompDiv()

GfVec2f GfCompDiv ( GfVec2f const &  v1,
GfVec2f const &  v2 
)
inline

Returns component-wise quotient of vectors v1 and v2.

Definition at line 324 of file vec2f.h.

◆ GfCompMult()

GfVec2f GfCompMult ( GfVec2f const &  v1,
GfVec2f const &  v2 
)
inline

Returns component-wise multiplication of vectors v1 and v2.

Definition at line 315 of file vec2f.h.

◆ GfDot()

float GfDot ( GfVec2f const &  v1,
GfVec2f const &  v2 
)
inline

Returns the dot (inner) product of two vectors.

Definition at line 333 of file vec2f.h.

◆ GfGetComplement()

GfVec2f GfGetComplement ( GfVec2f const &  a,
GfVec2f const &  b 
)
inline

Returns the orthogonal complement of a.GetProjection(b).

That is:

a - a.GetProjection(b)

Definition at line 378 of file vec2f.h.

◆ GfGetLength()

float GfGetLength ( GfVec2f const &  v)
inline

Returns the geometric length of v.

Definition at line 340 of file vec2f.h.

◆ GfGetNormalized()

GfVec2f GfGetNormalized ( GfVec2f const &  v,
float  eps = GF_MIN_VECTOR_LENGTH 
)
inline

Returns a normalized (unit-length) vector with the same direction as v.

If the length of this vector is smaller than eps, the vector divided by eps is returned.

Definition at line 358 of file vec2f.h.

◆ GfGetProjection()

GfVec2f GfGetProjection ( GfVec2f const &  a,
GfVec2f const &  b 
)
inline

Returns the projection of a onto b.

That is:

b * (a * b)

Definition at line 368 of file vec2f.h.

◆ GfIsClose()

bool GfIsClose ( GfVec2f const &  v1,
GfVec2f const &  v2,
double  tolerance 
)
inline

Tests for equality within a given tolerance, returning true if the length of the difference vector is less than or equal to tolerance.

Definition at line 386 of file vec2f.h.

◆ GfNormalize()

float GfNormalize ( GfVec2f v,
float  eps = GF_MIN_VECTOR_LENGTH 
)
inline

Normalizes *v in place to unit length, returning the length before normalization.

If the length of *v is smaller than eps then *v is set to *v/eps. The original length of *v is returned.

Definition at line 349 of file vec2f.h.