# Bounds::GetClosestPoint ```cpp Vector3 GetClosestPoint(const Vector3& point) const ``` 获取包围盒上最接近给定点的点。如果点在盒内,则返回该点本身;如果在盒外,则返回该点在盒面上的投影点。 **参数:** - `point` - 参考点 **返回:** `Vector3` - 盒上最接近的点 **线程安全:** ✅ **复杂度:** 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)); Vector3 inside = bounds.GetClosestPoint(Vector3(0.0f, 0.0f, 0.0f)); // returns (0, 0, 0) since point is inside Vector3 outside = bounds.GetClosestPoint(Vector3(10.0f, 0.0f, 0.0f)); // returns (1, 0, 0) - closest point on box surface ``` ## 相关文档 - [Bounds](bounds.md) - 返回类总览 - [Contains](contains.md) - 检测点是否在盒内