From a99cc0fd0e46797f46c53007670770a764bf5f8a Mon Sep 17 00:00:00 2001 From: Jeffery Myers Date: Mon, 21 Oct 2024 08:53:17 -0700 Subject: [PATCH] Add matrix operators to raymath for C++ --- src/raymath.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/raymath.h b/src/raymath.h index 71b17cc2e..68715391c 100644 --- a/src/raymath.h +++ b/src/raymath.h @@ -2895,6 +2895,40 @@ inline const Quaternion& operator *= (Quaternion& lhs, const Matrix& rhs) lhs = QuaternionTransform(lhs, rhs); return lhs; } + +// Matrix operators +inline Matrix operator + (const Matrix& lhs, const Matrix& rhs) +{ +....return MatrixAdd(lhs, rhs); +} + +inline const Matrix& operator += (Matrix& lhs, const Matrix& rhs) +{ +....lhs = MatrixAdd(lhs, rhs); +....return lhs; +} + +inline Matrix operator - (const Matrix& lhs, const Matrix& rhs) +{ +....return MatrixSubtract(lhs, rhs); +} + +inline const Matrix& operator -= (Matrix& lhs, const Matrix& rhs) +{ +....lhs = MatrixSubtract(lhs, rhs); +....return lhs; +} + +inline Matrix operator * (const Matrix& lhs, const Matrix& rhs) +{ +....return MatrixMultiply(lhs, rhs); +} + +inline const Matrix& operator *= (Matrix& lhs, const Matrix& rhs) +{ +....lhs = MatrixMultiply(lhs, rhs); +....return lhs; +} //------------------------------------------------------------------------------- #endif // C++ operators