Пример #1
0
        private Tuple <Vector3, float> CreateBoundingSphere()
        {
            var rangeBuilder = new Range3Single.Range3SingleBuilder();
            var count        = TrianglesWithNormals.Count;

            for (var i = 0; i < count; i++)
            {
                var tri = TrianglesWithNormals[i];
                rangeBuilder.Update(tri.A.Point);
                rangeBuilder.Update(tri.B.Point);
                rangeBuilder.Update(tri.C.Point);
            }
            var boundingSphere = rangeBuilder.Range.BoundingSphere();

            return(boundingSphere);
        }
Пример #2
0
        protected override Tuple <Vector3, double> UpdateBoundingSphere(MeshData data, DateTime time)
        {
            var rangeBuilder = new Range3Single.Range3SingleBuilder();
            var count        = data.Triangles.Count;

            for (var i = 0; i < count; i++)
            {
                var tri = data.Triangles[i];
                rangeBuilder.Update(tri.A.Point);
                rangeBuilder.Update(tri.B.Point);
                rangeBuilder.Update(tri.C.Point);
            }
            var boundingSphere = rangeBuilder.Range.BoundingSphere();

            return(boundingSphere);
        }