StevEngine
StevEngine is a customizable C++ game engine.
Loading...
Searching...
No Matches
Range3.hpp
1#pragma once
2#include "Vector3.hpp"
3
4#ifdef StevEngine_PHYSICS
5#include <Jolt/Jolt.h>
6#include <Jolt/Geometry/AABox.h>
7#endif
8
9namespace StevEngine::Utilities {
10 class Vector3;
11
18 class Range3 {
19 public:
20 //Values
23
24 //Constructors
26 Range3();
27
37 Range3(double lowX, double highX, double lowY, double highY, double lowZ, double highZ);
38
44 Range3(const Vector3& low, const Vector3& high);
45
50 Vector3 GetCenter() const;
51
56 Vector3 GetSize() const;
57
58 //Conversions
59 #ifdef StevEngine_PHYSICS
60 operator JPH::AABox() const;
61 Range3& operator= (const JPH::AABox& other);
62 Range3(const JPH::AABox& other);
63 #endif
64 };
65}
Range3 & operator=(const JPH::AABox &other)
Assign from Jolt AABB.
Definition Range3.cpp:35
Vector3 High
Maximum point (upper bounds)
Definition Range3.hpp:22
Vector3 GetSize() const
Get size of range.
Definition Range3.cpp:27
Vector3 Low
Minimum point (lower bounds)
Definition Range3.hpp:21
Range3()
Create empty range at origin.
Definition Range3.cpp:10
Vector3 GetCenter() const
Get center point of range.
Definition Range3.cpp:23
3D vector class
Definition Vector3.hpp:19