Ver código fonte

[Raymath] Add matrix operators to raymath for C++ (#4409)

* Add matrix operators to raymath for C++

* Fix spaces
Jeffery Myers 10 meses atrás
pai
commit
a2fcbc94fd
1 arquivos alterados com 34 adições e 0 exclusões
  1. 34 0
      src/raymath.h

+ 34 - 0
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