AcTools.Render.Base.Utils.SlimDxExtension.ToBoundingBox C# (CSharp) Method

ToBoundingBox() public static method

public static ToBoundingBox ( this vertices ) : BoundingBox
vertices this
return BoundingBox
        public static BoundingBox ToBoundingBox(this IEnumerable<Vector3> vertices) {
            var ie = vertices.GetEnumerator();
            if (!ie.MoveNext()) return new BoundingBox();

            var v = ie.Current;
            var minX = v.X;
            var minY = v.Y;
            var minZ = v.Z;
            var maxX = v.X;
            var maxY = v.Y;
            var maxZ = v.Z;

            while (ie.MoveNext()) {
                var n = ie.Current;
                if (minX > n.X) minX = n.X;
                if (minY > n.Y) minY = n.Y;
                if (minZ > n.Z) minZ = n.Z;
                if (maxX < n.X) maxX = n.X;
                if (maxY < n.Y) maxY = n.Y;
                if (maxZ < n.Z) maxZ = n.Z;
            }

            return new BoundingBox(new Vector3(minX, minY, minZ), new Vector3(maxX, maxY, maxZ));
        }