public void CenterCamera(GL_ControlBase control, List <DrawableContainer> Drawables) { if (!Runtime.FrameCamera) { return; } var spheres = new List <Vector4>(); for (int i = 0; i < Drawables.Count; i++) { foreach (var drawable in Drawables[i].Drawables) { if (drawable is IMeshContainer) { for (int m = 0; m < ((IMeshContainer)drawable).Meshes.Count; m++) { var mesh = ((IMeshContainer)drawable).Meshes[m]; var vertexPositions = mesh.vertices.Select(x => x.pos).Distinct(); spheres.Add(control.GenerateBoundingSphere(vertexPositions)); } } } } if (spheres.Count > 0) { control.FrameSelect(spheres); } }
public void CenterCamera(GL_ControlBase control) { if (!Runtime.FrameCamera) { return; } var spheres = new List <Vector4>(); for (int mdl = 0; mdl < models.Count; mdl++) { for (int shp = 0; shp < models[mdl].shapes.Count; shp++) { var vertexPositions = models[mdl].shapes[shp].vertices.Select(x => x.pos).Distinct(); spheres.Add(control.GenerateBoundingSphere(vertexPositions)); } } control.FrameSelect(spheres); }