aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/math/je_vector3.hpp
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-12-22 11:06:03 +0800
committerchai <chaifix@163.com>2018-12-22 11:06:03 +0800
commit908ca5872294ad7c6de27bd63c1eed97be5ef37a (patch)
treedaecbfa2cef5c1a6613f081cd815a803dcf8c7a9 /src/libjin/math/je_vector3.hpp
parent6cb616689535c340b0b4f441c12ef8eb1ee42cb0 (diff)
*修改vector访问方式
Diffstat (limited to 'src/libjin/math/je_vector3.hpp')
-rw-r--r--src/libjin/math/je_vector3.hpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/libjin/math/je_vector3.hpp b/src/libjin/math/je_vector3.hpp
index 1e8f86d..b8feb1b 100644
--- a/src/libjin/math/je_vector3.hpp
+++ b/src/libjin/math/je_vector3.hpp
@@ -27,8 +27,18 @@ namespace JinEngine
data[2] = v.data[2];
}
- T &x = data[0], &y = data[1], &z = data[2]; // xyz
- T &r = data[0], &g = data[1], &b = data[2]; // rgb
+ #define _aliases(A, B, C) \
+ T& A() { return data[0]; }\
+ T& B() { return data[1]; }\
+ T& C() { return data[2]; }\
+ T A() const { return data[0]; }\
+ T B() const { return data[1]; }\
+ T C() const { return data[2]; }
+
+ _aliases(x, y, z);
+ _aliases(r, g, b);
+
+ #undef _aliases
private:
T data[3];