|  | 
| template<typename S, typename T> | 
| Vec2< typename promote< S, T >::type > | operator* (S scalar, const Vec2< T > &v) | 
|  | Multiply each element of the given vector by scalar and return the result. 
 | 
|  | 
| template<typename S, typename T> | 
| Vec2< typename promote< S, T >::type > | operator* (const Vec2< T > &v, S scalar) | 
|  | Multiply each element of the given vector by scalar and return the result. 
 | 
|  | 
| template<typename T0, typename T1> | 
| Vec2< typename promote< T0, T1 >::type > | operator* (const Vec2< T0 > &v0, const Vec2< T1 > &v1) | 
|  | Multiply corresponding elements of v0 and v1 and return the result. 
 | 
|  | 
| template<typename S, typename T> | 
| Vec2< typename promote< S, T >::type > | operator/ (S scalar, const Vec2< T > &v) | 
|  | Divide scalar by each element of the given vector and return the result. 
 | 
|  | 
| template<typename S, typename T> | 
| Vec2< typename promote< S, T >::type > | operator/ (const Vec2< T > &v, S scalar) | 
|  | Divide each element of the given vector by scalar and return the result. 
 | 
|  | 
| template<typename T0, typename T1> | 
| Vec2< typename promote< T0, T1 >::type > | operator/ (const Vec2< T0 > &v0, const Vec2< T1 > &v1) | 
|  | Divide corresponding elements of v0 and v1 and return the result. 
 | 
|  | 
| template<typename T0, typename T1> | 
| Vec2< typename promote< T0, T1 >::type > | operator+ (const Vec2< T0 > &v0, const Vec2< T1 > &v1) | 
|  | Add corresponding elements of v0 and v1 and return the result. 
 | 
|  | 
| template<typename S, typename T> | 
| Vec2< typename promote< S, T >::type > | operator+ (const Vec2< T > &v, S scalar) | 
|  | Add scalar to each element of the given vector and return the result. 
 | 
|  | 
| template<typename T0, typename T1> | 
| Vec2< typename promote< T0, T1 >::type > | operator- (const Vec2< T0 > &v0, const Vec2< T1 > &v1) | 
|  | Subtract corresponding elements of v0 and v1 and return the result. 
 | 
|  | 
| template<typename S, typename T> | 
| Vec2< typename promote< S, T >::type > | operator- (const Vec2< T > &v, S scalar) | 
|  | Subtract scalar from each element of the given vector and return the result. 
 | 
|  | 
| template<typename T> | 
| T | angle (const Vec2< T > &v1, const Vec2< T > &v2) | 
|  | 
| template<typename T> | 
| bool | isApproxEqual (const Vec2< T > &a, const Vec2< T > &b) | 
|  | 
| template<typename T> | 
| bool | isApproxEqual (const Vec2< T > &a, const Vec2< T > &b, const Vec2< T > &eps) | 
|  | 
| template<typename T> | 
| Vec2< T > | Abs (const Vec2< T > &v) | 
|  | 
| template<typename T> | 
| void | orthonormalize (Vec2< T > &v1, Vec2< T > &v2) | 
|  | 
| template<typename T> | 
| Vec2< T > | minComponent (const Vec2< T > &v1, const Vec2< T > &v2) | 
|  | Return component-wise minimum of the two vectors. 
 | 
|  | 
| template<typename T> | 
| Vec2< T > | maxComponent (const Vec2< T > &v1, const Vec2< T > &v2) | 
|  | Return component-wise maximum of the two vectors. 
 | 
|  | 
| template<typename T> | 
| Vec2< T > | Exp (Vec2< T > v) | 
|  | Return a vector with the exponent applied to each of the components of the input vector. 
 | 
|  | 
| template<typename T> | 
| Vec2< T > | Log (Vec2< T > v) | 
|  | Return a vector with log applied to each of the components of the input vector. 
 | 
|  |