BEPUphysics.BroadPhaseSystems.SortAndSweep.SortAndSweep1D.Sweep C# (CSharp) Метод

Sweep() публичный Метод

public Sweep ( int segment ) : void
segment int
Результат void
        void Sweep(int segment)
        {
            int intervalLength = entries.Count / sweepSegmentCount;
            int end;
            if (segment == sweepSegmentCount - 1)
                end = entries.Count;
            else
                end = intervalLength * (segment + 1);
            for (int i = intervalLength * segment; i < end; i++)
            {
                BoundingBox a = entries.Elements[i].boundingBox;
                for (int j = i + 1; j < entries.Count && a.Max.X >= entries.Elements[j].boundingBox.Min.X; j++)
                {
                    if (!(a.Min.Y > entries.Elements[j].boundingBox.Max.Y || a.Max.Y < entries.Elements[j].boundingBox.Min.Y ||
                          a.Min.Z > entries.Elements[j].boundingBox.Max.Z || a.Max.Z < entries.Elements[j].boundingBox.Min.Z))
                    {
                        TryToAddOverlap(entries.Elements[i], entries.Elements[j]);
                    }
                }
            }
        }