mirror of
https://github.com/enduro2d/enduro2d.git
synced 2026-03-22 04:44:09 +07:00
MATH: unary operator+
This commit is contained in:
@@ -179,9 +179,16 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) mat2
|
||||
// (+,-) mat2
|
||||
//
|
||||
|
||||
template < typename T >
|
||||
mat2<T> operator+(const mat2<T>& m) noexcept {
|
||||
return {
|
||||
+m.rows[0],
|
||||
+m.rows[1]};
|
||||
}
|
||||
|
||||
template < typename T >
|
||||
mat2<T> operator-(const mat2<T>& m) noexcept {
|
||||
return {
|
||||
|
||||
@@ -193,9 +193,17 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) mat3
|
||||
// (+,-) mat3
|
||||
//
|
||||
|
||||
template < typename T >
|
||||
mat3<T> operator+(const mat3<T>& m) noexcept {
|
||||
return {
|
||||
+m.rows[0],
|
||||
+m.rows[1],
|
||||
+m.rows[2]};
|
||||
}
|
||||
|
||||
template < typename T >
|
||||
mat3<T> operator-(const mat3<T>& m) noexcept {
|
||||
return {
|
||||
|
||||
@@ -210,9 +210,18 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) mat4
|
||||
// (+,-) mat4
|
||||
//
|
||||
|
||||
template < typename T >
|
||||
mat4<T> operator+(const mat4<T>& m) noexcept {
|
||||
return {
|
||||
+m.rows[0],
|
||||
+m.rows[1],
|
||||
+m.rows[2],
|
||||
+m.rows[3]};
|
||||
}
|
||||
|
||||
template < typename T >
|
||||
mat4<T> operator-(const mat4<T>& m) noexcept {
|
||||
return {
|
||||
|
||||
@@ -167,9 +167,16 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) unit
|
||||
// (+,-) unit
|
||||
//
|
||||
|
||||
template < typename T, typename Tag >
|
||||
unit<T, Tag> operator+(const unit<T, Tag>& u) noexcept {
|
||||
return {
|
||||
+u.value,
|
||||
Tag{}};
|
||||
}
|
||||
|
||||
template < typename T, typename Tag >
|
||||
unit<T, Tag> operator-(const unit<T, Tag>& u) noexcept {
|
||||
return {
|
||||
|
||||
@@ -260,9 +260,16 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) vec2
|
||||
// (+,-) vec2
|
||||
//
|
||||
|
||||
template < typename T >
|
||||
vec2<T> operator+(const vec2<T>& v) noexcept {
|
||||
return {
|
||||
+v.x,
|
||||
+v.y};
|
||||
}
|
||||
|
||||
template < typename T >
|
||||
vec2<T> operator-(const vec2<T>& v) noexcept {
|
||||
return {
|
||||
|
||||
@@ -283,9 +283,17 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) vec3
|
||||
// (+,-) vec3
|
||||
//
|
||||
|
||||
template < typename T >
|
||||
vec3<T> operator+(const vec3<T>& v) noexcept {
|
||||
return {
|
||||
+v.x,
|
||||
+v.y,
|
||||
+v.z};
|
||||
}
|
||||
|
||||
template < typename T >
|
||||
vec3<T> operator-(const vec3<T>& v) noexcept {
|
||||
return {
|
||||
|
||||
@@ -306,9 +306,18 @@ namespace e2d
|
||||
}
|
||||
|
||||
//
|
||||
// (-) vec4
|
||||
// (+,-) vec4
|
||||
//
|
||||
|
||||
template < typename T >
|
||||
vec4<T> operator+(const vec4<T>& v) noexcept {
|
||||
return {
|
||||
+v.x,
|
||||
+v.y,
|
||||
+v.z,
|
||||
+v.w};
|
||||
}
|
||||
|
||||
template < typename T >
|
||||
vec4<T> operator-(const vec4<T>& v) noexcept {
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user