diff options
Diffstat (limited to 'include/core')
| -rw-r--r-- | include/core/Basis.hpp | 2 | ||||
| -rw-r--r-- | include/core/Transform.hpp | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/include/core/Basis.hpp b/include/core/Basis.hpp index b559b00..eb1cf76 100644 --- a/include/core/Basis.hpp +++ b/include/core/Basis.hpp @@ -307,7 +307,7 @@ public: Basis(); - const Vector3 &operator[](int axis) const { + const Vector3 operator[](int axis) const { return get_axis(axis); } diff --git a/include/core/Transform.hpp b/include/core/Transform.hpp index a56a9a2..9da6366 100644 --- a/include/core/Transform.hpp +++ b/include/core/Transform.hpp @@ -58,6 +58,13 @@ public: void operator*=(const Transform &p_transform); Transform operator*(const Transform &p_transform) const; + inline Vector3 operator*(const Vector3 &p_vector) const { + return Vector3( + basis.elements[0].dot(p_vector) + origin.x, + basis.elements[1].dot(p_vector) + origin.y, + basis.elements[2].dot(p_vector) + origin.z); + } + Transform interpolate_with(const Transform &p_transform, real_t p_c) const; Transform inverse_xform(const Transform &t) const; |
