summaryrefslogtreecommitdiffstats
path: root/core/math/aabb.cc
diff options
context:
space:
mode:
authoruntodesu <kirill@untode.su>2025-09-11 16:00:57 +0500
committeruntodesu <kirill@untode.su>2025-09-11 16:00:57 +0500
commitcfa27fd8eed42599195fdff6d7d0e25586e8f18c (patch)
tree2cc0c50b5b94f38cbbd548ab47dd7ae75d64a54c /core/math/aabb.cc
parentd0fbd68055e3f4a796330cc8acc6c0954b5327ff (diff)
downloadvoxelius-cfa27fd8eed42599195fdff6d7d0e25586e8f18c.tar.bz2
voxelius-cfa27fd8eed42599195fdff6d7d0e25586e8f18c.zip
Graft header-only math::AABB<T> from qfengine
Diffstat (limited to 'core/math/aabb.cc')
-rw-r--r--core/math/aabb.cc59
1 files changed, 0 insertions, 59 deletions
diff --git a/core/math/aabb.cc b/core/math/aabb.cc
deleted file mode 100644
index 1111149..0000000
--- a/core/math/aabb.cc
+++ /dev/null
@@ -1,59 +0,0 @@
-#include "core/pch.hh"
-
-#include "core/math/aabb.hh"
-
-math::AABB::AABB(const glm::fvec3& min, const glm::fvec3& max)
-{
- set_bounds(min, max);
-}
-
-void math::AABB::set_bounds(const glm::fvec3& min, const glm::fvec3& max)
-{
- this->min = min;
- this->max = max;
-}
-
-void math::AABB::set_offset(const glm::fvec3& base, const glm::fvec3& size)
-{
- this->min = base;
- this->max = base + size;
-}
-
-bool math::AABB::contains(const glm::fvec3& point) const
-{
- auto result = true;
- result = result && (point.x >= min.x) && (point.x <= max.x);
- result = result && (point.y >= min.y) && (point.y <= max.y);
- result = result && (point.z >= min.z) && (point.z <= max.z);
- return result;
-}
-
-bool math::AABB::intersect(const AABB& other_box) const
-{
- auto result = true;
- result = result && (min.x < other_box.max.x) && (max.x > other_box.min.x);
- result = result && (min.y < other_box.max.y) && (max.y > other_box.min.y);
- result = result && (min.z < other_box.max.z) && (max.z > other_box.min.z);
- return result;
-}
-
-math::AABB math::AABB::combine_with(const math::AABB& other_box) const
-{
- AABB result;
- result.set_bounds(min, other_box.max);
- return result;
-}
-
-math::AABB math::AABB::multiply_with(const math::AABB& other_box) const
-{
- AABB result;
- result.set_bounds(other_box.min, max);
- return result;
-}
-
-math::AABB math::AABB::push(const glm::fvec3& vector) const
-{
- AABB result;
- result.set_bounds(min + vector, max + vector);
- return result;
-}