# Box::Intersects (Ray) ```cpp bool Intersects(const Ray& ray, float& t) const ``` 检测盒体是否与射线相交。如果相交,通过 `t` 输出射线原点到交点的距离。 **参数:** - `ray` - 要检测的射线 - `t` - 输出交点距离(如果返回 true) **返回:** `bool` - 相交返回 true,否则返回 false **线程安全:** ✅ **复杂度:** O(1) **示例:** ```cpp #include #include using namespace XCEngine::Math; Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); Ray ray(Vector3(0.0f, 0.0f, -5.0f), Vector3(0.0f, 0.0f, 1.0f)); float t; if (box.Intersects(ray, t)) { Vector3 hitPoint = ray.GetPoint(t); } ``` ## 相关文档 - [Box 类总览](box.md) - 返回类总览 - [Ray::Intersects](../ray/ray.md) - 射线相交检测