Implementing Vector3 Unit Tests

This commit is contained in:
2024-01-02 16:29:19 -05:00
parent 0620c8aea5
commit 09922ac0bd
7 changed files with 298 additions and 14 deletions

View File

@@ -2,6 +2,7 @@
#include <cassert>
#include <algorithm>
#include <valarray>
#include <iostream>
namespace LinearAlgebra {
@@ -115,6 +116,7 @@ namespace LinearAlgebra {
{
auto numer = this->Dot(rhs);
auto denom = this->Magnitude() * rhs.Magnitude();
std::cout << numer << ", " << denom << std::endl;
return std::acos(numer / denom);
}
@@ -198,5 +200,37 @@ namespace LinearAlgebra {
Vector2 Vector2::Lerp(const Vector2 &lhs, const Vector2 &rhs, float alpha) { return lhs.Lerp(rhs, alpha); }
Vector2 Vector2::Div(const Vector2 &lhs, float rhs) {
return lhs.Div(rhs);
}
Vector2 Vector2::Mul(const Vector2 &lhs, float rhs) {
return lhs.Mul(rhs);
}
Vector2 Vector2::Sub(const Vector2 &lhs, const Vector2 &rhs) {
return lhs.Sub(rhs);
}
Vector2 Vector2::Add(const Vector2 &lhs, const Vector2 &rhs) {
return lhs.Add(rhs);
}
Vector2 Vector2::Add(const Vector2 &rhs) const {
return *this + rhs;
}
Vector2 Vector2::Sub(const Vector2 &rhs) const {
return *this - rhs;
}
Vector2 Vector2::Mul(float scalar) const {
return *this * scalar;
}
Vector2 Vector2::Div(float scalar) const {
return *this / scalar;
}
}