# How to turn any mesh into its bounding box

I have a scene and I want to turn it into a blockout scene for presentational purposes. I want to turn every mesh into a box or a block model. Is there any way to achieve this? Scripts are also welcome

## 2 Answers

Bmesh script

Quick, n dirty little bmesh script to do this. For all mesh objects in the screen replace the mesh with the box created from the eight corners of the bounding box.

• I've used the convex hull operator which produces a triangulated mesh.
• Current version replaces mesh with hull.
• As always save before, and / or test on a copy.

script

import bpy
import bmesh
context = bpy.context
scene = context.scene
bm = bmesh.new()
mesh_obs = [o for o in scene.objects if o.type == 'MESH']
for ob in mesh_obs:
me = ob.data
#me = ob.data.copy() # create a copy

verts = [bm.verts.new(b) for b in ob.bound_box]
bmesh.ops.convex_hull(bm, input=verts)
bm.to_mesh(me)
ob.data = me # needed if copy
bm.clear()
bm.free()

• I'll change it to keep the original mesh! But thank you for your time! – Reuben X Aug 24 '18 at 8:40

You can select Bounding box in Viewport Shading setting:

This option displays all objects as it's Bounding boxes

• No. I don't want it to be for the viewport only. I want to actually deform the mesh into it's bounding box – Reuben X Aug 24 '18 at 8:34
• Do you want to render it? Do you know, that you can render OpenGL of current viewport? – Crantisz Aug 24 '18 at 8:38