|
|
|
@ -117,7 +117,7 @@ namespace glm |
|
|
|
|
// -- Explicit basic constructors --
|
|
|
|
|
|
|
|
|
|
GLM_FUNC_DECL explicit tvec3(ctor); |
|
|
|
|
GLM_FUNC_DECL explicit tvec3(T const & s); |
|
|
|
|
GLM_FUNC_DECL explicit tvec3(T const & scalar); |
|
|
|
|
GLM_FUNC_DECL tvec3(T const & a, T const & b, T const & c); |
|
|
|
|
|
|
|
|
|
// -- Conversion scalar constructors --
|
|
|
|
@ -160,15 +160,15 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
template <int E0, int E1> |
|
|
|
|
GLM_FUNC_DECL tvec3(detail::_swizzle<2, T, P, tvec2<T, P>, E0, E1, -1, -2> const & v, T const & s) |
|
|
|
|
GLM_FUNC_DECL tvec3(detail::_swizzle<2, T, P, tvec2<T, P>, E0, E1, -1, -2> const & v, T const & scalar) |
|
|
|
|
{ |
|
|
|
|
*this = tvec3<T, P>(v(), s); |
|
|
|
|
*this = tvec3<T, P>(v(), scalar); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
template <int E0, int E1> |
|
|
|
|
GLM_FUNC_DECL tvec3(T const & s, detail::_swizzle<2, T, P, tvec2<T, P>, E0, E1, -1, -2> const & v) |
|
|
|
|
GLM_FUNC_DECL tvec3(T const & scalar, detail::_swizzle<2, T, P, tvec2<T, P>, E0, E1, -1, -2> const & v) |
|
|
|
|
{ |
|
|
|
|
*this = tvec3<T, P>(s, v()); |
|
|
|
|
*this = tvec3<T, P>(scalar, v()); |
|
|
|
|
} |
|
|
|
|
# endif// GLM_HAS_ANONYMOUS_UNION && defined(GLM_SWIZZLE)
|
|
|
|
|
|
|
|
|
@ -179,25 +179,25 @@ namespace glm |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator+=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator+=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator+=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator+=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator-=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator-=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator-=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator-=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator*=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator*=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator*=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator*=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator/=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator/=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator/=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
@ -213,37 +213,37 @@ namespace glm |
|
|
|
|
// -- Unary bit operators --
|
|
|
|
|
|
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator%=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator%=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator%=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator%=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator&=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator&=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator&=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator&=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator|=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator|=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator|=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator|=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator^=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator^=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator^=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator^=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator<<=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator<<=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator<<=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator<<=(tvec3<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator>>=(U s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator>>=(U scalar); |
|
|
|
|
template <typename U> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> & operator>>=(tvec1<U, P> const & v); |
|
|
|
|
template <typename U> |
|
|
|
@ -258,151 +258,151 @@ namespace glm |
|
|
|
|
// -- Binary operators --
|
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v, T const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v, T const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v, tvec1<T, P> const & s); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v, tvec1<T, P> const & scalar); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(T const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(T const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec1<T, P> const & s, tvec3<T, P> const & v); |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec1<T, P> const & scalar, tvec3<T, P> const & v); |
|
|
|
|
|
|
|
|
|
template <typename T, precision P> |
|
|
|
|
GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v1, tvec3<T, P> const & v2); |
|
|
|
|