/// <summary> /// 添加该节点包含的三角面片 /// </summary> private void AddContainedTriangles(OctreeNode Node, List <Triangle> TriangleList) { foreach (Triangle Tri in TriangleList) { if (Intersect.IntersectTriangleAABB(Tri.v0, Tri.v1, Tri.v2, Node.Bounds)) { Node.AddTriangle(Tri); } } }
/// <summary> /// 添加该节点包含的物体 /// </summary> private void AddContainedTrianglesRoughly(OctreeNode Node, List <Triangle> TriangleList) { foreach (Triangle Tri in TriangleList) { if (Node.Bounds.Intersects(Tri.AABB)) //三角面片的包围盒与节点的包围盒相交 { Node.AddTriangle(Tri); } } }