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); }
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); }