Fixed broken references: - texture-import-settings: Fix 16 files referencing wrong overview filename - math/rectint: Fix 9 method links (rectint-* → get*, contains, intersects) - rhi/opengl/device: Fix 8 cross-references (opengl-* → */**) - resources/mesh: Fix meshsection and vertexattribute links - rhi/d3d12/sampler: Fix RHISampler reference path - math/vector3: Fix projectonplane → project-on-plane - rhi/opengl/command-list: Remove broken ClearFlag enum ref - rhi/opengl/device: Create 2 new method docs (MakeContextCurrent, GetNativeContext) - rhi/device: Fix device-info types reference All 0 broken references remaining.
41 lines
957 B
Markdown
41 lines
957 B
Markdown
# Bounds::Encapsulate
|
||
|
||
```cpp
|
||
void Encapsulate(const Vector3& point)
|
||
void Encapsulate(const Bounds& bounds)
|
||
```
|
||
|
||
扩展包围盒以包含指定的点或另一个 Bounds。调用后,包围盒的 min/max 将被更新以确保目标被完全包含。
|
||
|
||
**参数:**
|
||
- `point` - 要包含的点
|
||
- `bounds` - 要包含的 Bounds
|
||
|
||
**返回:** `void`
|
||
|
||
**线程安全:** ✅
|
||
|
||
**复杂度:** O(1)
|
||
|
||
**示例:**
|
||
|
||
```cpp
|
||
#include <XCEngine/Core/Math/Bounds.h>
|
||
#include <XCEngine/Core/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'
|
||
```
|
||
|
||
## 相关文档
|
||
|
||
- [Bounds](bounds.md) - 返回类总览
|
||
- [Expand](expand.md) - 均匀扩展包围盒
|