# Bounds::Encapsulate ```cpp void Encapsulate(const Vector3& point) void Encapsulate(const Bounds& bounds) ``` 扩展包围盒以包含指定的点或另一个 Bounds。调用后,包围盒的 min/max 将被更新以确保目标被完全包含。 **参数:** - `point` - 要包含的点 - `bounds` - 要包含的 Bounds **返回:** `void` **线程安全:** ✅ **复杂度:** O(1) **示例:** ```cpp #include #include 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' ``` ## 相关文档 - [Bounds](bounds.md) - 返回类总览 - [Expand](expand.md) - 均匀扩展包围盒