#ifndef CORE_BOX_HPP #define CORE_BOX_HPP #include "core/math/Vector.hpp" #include "core/utils/ArrayString.hpp" namespace Core { class Box final { Vector3 min; Vector3 max; Box(const Vector3& min, const Vector3& max); public: Box(const Vector3& size); Box offset(const Vector3& offset) const; bool collidesWith(const Box& other) const; Box expand(const Vector3& offset) const; Box grow(const Vector3& growth) const; const Vector3& getMin() const; const Vector3& getMax() const; void toString(BufferString& s) const { s.append("Box("); s.append(min).append(", "); s.append(max).append(")"); } }; } #endif