Files
UwU-Engine/Core/Math/Vector.h
T

33 lines
784 B
C++

#pragma once
#include "Game/SaveMap/ISave.h"
struct Vector3D;
struct Vector2D : public ISave {
double x = 0, y = 0;
Vector2D() = default;
Vector2D(const double x, const double y);
Vector2D(const Vector3D& vec3D);
Vector2D operator+(const Vector2D& v) const;
Vector2D operator-(const Vector2D& v) const;
std::shared_ptr<SaveMap> save() override;
void load(std::shared_ptr<SaveMap> save) override;
};
struct Vector3D : public ISave {
double x = 0, y = 0, z = 0;
Vector3D() = default;
Vector3D(const double x, const double y, const double z);
Vector3D(const Vector2D& vec2D);
Vector3D operator+(const Vector3D& v) const;
Vector3D operator-(const Vector3D& v) const;
std::shared_ptr<SaveMap> save() override;
void load(std::shared_ptr<SaveMap> save) override;
};