XNA中"包含"究竟是什么意思?

cyb*_*nte 1 c# xna

一个非常具体的问题,如果有人知道答案:在BoundingSphere1.Contains(BoundingSphere2)的上下文中,"包含"究竟是什么意思?

如果我在一个较大的球体内有一个较小的球体,较小的球体是否"包含"较大的球体,因为它的整个体积也是较大球体的体积?会返回ContainmentType.Contains吗?

谢谢!

Ahm*_*eed 5

从带有BoundingSphere参数的BoundingSphere.Contains方法的MSDN页面:

检查当前BoundingSphere是否包含指定的BoundingSphere.

它返回一个ContainmentType列举

指示边界体积相交或相互包含的范围.

特别:

包含:表示一个边界卷完全包含另一个.

不相交:表示边界卷之间没有重叠.

相交:表示边界体积部分重叠.

如果BoundingSphere1小于BoundingSphere2,那么我想BoundingSphere1.Contains(BoundingSphere2)会返回ContainmentType.Intersects结果而不是ContainmentType.Contains结果,因为它不会"完全"包含另一个.另一方面,BoundingSphere2.Contains(BoundingSphere1)应该返回ContainmentType.Contains,因为它"完全包含另一个".

编辑:我再次审阅文档后更新了我的答案.最初听起来含糊不清但现在我认为分别对于"包含"和"相交"的"完全"和"部分"的枚举细节的重点强化了我的期望.我无法测试这个,但这听起来很合理.