947 B
947 B
Bounds::Encapsulate
void Encapsulate(const Vector3& point)
void Encapsulate(const Bounds& bounds)
扩展包围盒以包含指定的点或另一个 Bounds。调用后,包围盒的 min/max 将被更新以确保目标被完全包含。
参数:
point- 要包含的点bounds- 要包含的 Bounds
返回: void
线程安全: ✅
复杂度: O(1)
示例:
#include <XCEngine/Math/Bounds.h>
#include <XCEngine/Math/Vector3.h>
using namespace XCEngine::Math;
Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f));
bounds.Encapsulate(Vector3(10.0f, 0.0f, 0.0f));
// bounds now spans from (-1,-1,-1) to (10,1,1)
Bounds other(Vector3(5.0f, 5.0f, 5.0f), Vector3(1.0f, 1.0f, 1.0f));
bounds.Encapsulate(other);
// bounds now contains both original bounds and 'other'