diff --git a/RayTracer/tools/AxisAlignedBoundingBox.cpp b/RayTracer/tools/AxisAlignedBoundingBox.cpp
index 1ef77b2af8c09d53e7200ba03dd9981e4700bc27..97a387063e29aabec89aa39e646a1fb55b787853 100644
--- a/RayTracer/tools/AxisAlignedBoundingBox.cpp
+++ b/RayTracer/tools/AxisAlignedBoundingBox.cpp
@@ -127,6 +127,9 @@ bool AxisAlignedBoundingBox::partiallyContains(
 		if (contains(v)) return true;
 	return false;
 }
+float AxisAlignedBoundingBox::size() const {
+	return (maxBound() - minBound()).length();
+}
 Vec3 AxisAlignedBoundingBox::center() const {
 	return (max + min) / 2;
 }
diff --git a/RayTracer/tools/AxisAlignedBoundingBox.h b/RayTracer/tools/AxisAlignedBoundingBox.h
index bc7da01e5249cbe3ba106f199d25bba7c790bcc4..7db58b50c7aaaa771bf2ec68559506b778cf7e85 100644
--- a/RayTracer/tools/AxisAlignedBoundingBox.h
+++ b/RayTracer/tools/AxisAlignedBoundingBox.h
@@ -20,6 +20,7 @@ class AxisAlignedBoundingBox {
 	bool contains(const Vec3& v) const;
 	bool contains(const AxisAlignedBoundingBox& bb) const;
 	bool partiallyContains(const AxisAlignedBoundingBox& bb) const;
+	float size() const;
 	Vec3 center() const;
 	Vec3 minBound() const;
 	Vec3 maxBound() const;