This commit is contained in:
Isuru Samarathunga
2025-09-07 18:03:01 +05:30
parent 536e9d0e58
commit 77314b62b7
3 changed files with 23 additions and 21 deletions

View File

@ -14,6 +14,8 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
#pragma once
#include <IAMath/Vec.hpp>
namespace ia::iam

View File

@ -14,7 +14,9 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
#include <iacore/string.hpp>
#pragma once
#include <IACore/String.hpp>
namespace ia::iam
{
@ -39,32 +41,32 @@ namespace ia::iam
};
};
Vec2 operator+(IN CONST Vec2<_value_type>& other)
Vec2 operator+(IN CONST Vec2<_value_type>& other) CONST
{
return { X + other.X, Y + other.Y };
}
Vec2 operator-(IN CONST Vec2<_value_type>& other)
Vec2 operator-(IN CONST Vec2<_value_type>& other) CONST
{
return { X - other.X, Y - other.Y };
}
Vec2 operator*(IN CONST Vec2<_value_type>& other)
Vec2 operator*(IN CONST Vec2<_value_type>& other) CONST
{
return { X * other.X, Y * other.Y };
}
Vec2 operator/(IN CONST Vec2<_value_type>& other)
Vec2 operator/(IN CONST Vec2<_value_type>& other) CONST
{
return { X / other.X, Y / other.Y };
}
Vec2 operator*(IN _value_type other)
Vec2 operator*(IN _value_type other) CONST
{
return { X * other, Y * other };
}
Vec2 operator/(IN _value_type other)
Vec2 operator/(IN _value_type other) CONST
{
return { X / other, Y / other };
}
@ -96,32 +98,32 @@ namespace ia::iam
};
};
Vec3 operator+(IN CONST Vec3<_value_type>& other)
Vec3 operator+(IN CONST Vec3<_value_type>& other) CONST
{
return { X + other.X, Y + other.Y, Z + other.Z };
}
Vec3 operator-(IN CONST Vec3<_value_type>& other)
Vec3 operator-(IN CONST Vec3<_value_type>& other) CONST
{
return { X - other.X, Y - other.Y, Z - other.Z };
}
Vec3 operator*(IN CONST Vec3<_value_type>& other)
Vec3 operator*(IN CONST Vec3<_value_type>& other) CONST
{
return { X * other.X, Y * other.Y, Z * other.Z };
}
Vec3 operator/(IN CONST Vec3<_value_type>& other)
Vec3 operator/(IN CONST Vec3<_value_type>& other) CONST
{
return { X / other.X, Y / other.Y, Z / other.Z };
}
Vec3 operator*(IN _value_type other)
Vec3 operator*(IN _value_type other) CONST
{
return { X * other, Y * other, Z * other };
}
Vec3 operator/(IN _value_type other)
Vec3 operator/(IN _value_type other) CONST
{
return { X / other, Y / other, Z / other };
}
@ -153,32 +155,32 @@ namespace ia::iam
};
};
Vec4 operator+(IN CONST Vec4<_value_type>& other)
Vec4 operator+(IN CONST Vec4<_value_type>& other) CONST
{
return { X + other.X, Y + other.Y, Z + other.Z, W + other.W };
}
Vec4 operator-(IN CONST Vec4<_value_type>& other)
Vec4 operator-(IN CONST Vec4<_value_type>& other) CONST
{
return { X - other.X, Y - other.Y, Z - other.Z, W - other.W };
}
Vec4 operator*(IN CONST Vec4<_value_type>& other)
Vec4 operator*(IN CONST Vec4<_value_type>& other) CONST
{
return { X * other.X, Y * other.Y, Z * other.Z, W * other.W };
}
Vec4 operator/(IN CONST Vec4<_value_type>& other)
Vec4 operator/(IN CONST Vec4<_value_type>& other) CONST
{
return { X / other.X, Y / other.Y, Z / other.Z, W / other.W };
}
Vec4 operator*(IN _value_type other)
Vec4 operator*(IN _value_type other) CONST
{
return { X * other, Y * other, Z * other, W * other };
}
Vec4 operator/(IN _value_type other)
Vec4 operator/(IN _value_type other) CONST
{
return { X / other, Y / other, Z / other, W / other };
}