3#include <Infinity/api.h>
4#include <Infinity/Types/Core/Value.hpp>
5#include <Infinity/Types/Containers/Array.hpp>
6#include <Infinity/Types/Math/Vector3.hpp>
Dynamic contiguous container for homogeneous elements in the Infinity type system.
Definition Array.hpp:77
Template wrapper for primitive types to integrate with the Infinity type system.
Definition Value.hpp:89
INFINITY_API_TEMPLATE std::istream & operator>>(std::istream &in, Transform &t)
Stream input operator for Transform.
Definition Transform.hpp:145
INFINITY_API_TEMPLATE std::ostream & operator<<(std::ostream &out, const Transform &t)
Stream output operator for Transform.
Definition Transform.hpp:129
Template structure representing a 3-component vector.
Definition Vector3.hpp:82
Axis-aligned bounding box (AABB) representing a rectangular 3D region.
Definition Volume.hpp:71
float topBound()
Gets the maximum Y coordinate (top edge).
float height
Total height of the volume along the Y-axis.
Definition Volume.hpp:86
float depth
Total depth of the volume along the Z-axis.
Definition Volume.hpp:94
float backBound()
Gets the maximum Z coordinate (back edge).
float rightBound()
Gets the maximum X coordinate (right edge).
Volume(float w, float h, float d, Math::Vector3 position=Math::Vector3(0.0f, 0.0f, 0.0f))
Constructs a volume with specified dimensions and position.
float frontBound()
Gets the minimum Z coordinate (front edge).
float leftBound()
Gets the minimum X coordinate (left edge).
Math::Vector3 position
Center position of the volume in world space.
Definition Volume.hpp:102
float width
Total width of the volume along the X-axis.
Definition Volume.hpp:78
Volume()
Default constructor.
float volume()
Calculates the total volume (cubic units).
float bottomBound()
Gets the minimum Y coordinate (bottom edge).