feat(matrix): add C33Matrix class

This commit is contained in:
VDm 2025-05-29 01:39:17 +04:00
parent f3b5a84428
commit 95bbe515dd
4 changed files with 163 additions and 11 deletions

View file

@ -5,10 +5,6 @@
class C2Vector {
public:
// Member variables
float x = 0.0f;
float y = 0.0f;
enum : uint32_t {
eComponents = 2
};
@ -21,13 +17,16 @@ class C2Vector {
static float Dot(const C2Vector& l, const C2Vector& r);
static float Cross(const C2Vector& l, const C2Vector& r);
// Member variables
float x = 0.0f;
float y = 0.0f;
// Member functions
C2Vector() = default;
C2Vector(float x, float y)
: x(x)
, y(y) {};
C2Vector(float a)
explicit C2Vector(float a)
: x(a)
, y(a) {};

View file

@ -8,11 +8,6 @@ class C44Matrix;
class C3Vector {
public:
// Member variables
float x = 0.0f;
float y = 0.0f;
float z = 0.0f;
enum : uint32_t {
eComponents = 3
};
@ -32,6 +27,10 @@ class C3Vector {
static C3Vector ProjectionOnPlane(const C3Vector& v, const C3Vector& normal);
static C3Vector NearestOnPlane(const C3Vector& p, const C3Vector& onplane, const C3Vector& normal);
// Member variables
float x = 0.0f;
float y = 0.0f;
float z = 0.0f;
// Member functions
C3Vector() = default;
@ -47,7 +46,7 @@ class C3Vector {
: x(x)
, y(y)
, z(z) {};
C3Vector(float a)
explicit C3Vector(float a)
: x(a)
, y(a)
, z(a) {};