# How can I "normalize" the scale of what seems to be either an infinitely large or infinitely small object

I'm having issues with an obj file I've imported into Blender. At first I thought the import was broken in some way because the import would go smoothly, but there was no model to be seen. Eventually I figured out that I could snap my view to the object by pressing . on the numpad and it was in fact there, just extremely small or large (I can't tell). I've tried scaling, but the sizes are so extreme that it doesn't seem to be working. Also due to the extreme nature of the object I can only see certain parts of it at a time depending on the angle in which im viewing it at it starts to de-render the parts not directly in front of the camera.

Normalize dimensions.

Look at the dimensions in N panel and choose the largest eg for (1, 2, 3) is 3. Then scale by 1 / 3 = 0.3333 to make the largest dimension 1. If the dimension is (0, 0, 0) there's nothing can be done.

Script to do this, scales such that largest dimension of selected mesh objects is set to max_dim. (Used 2 as default to correlate with cube sphere etc)

import bpy

max_dim = 2

context = bpy.context

mesh_obs = (o for o in context.selected_objects
if o.type == 'MESH' and o.dimensions.length)

for o in mesh_obs:
o.scale *= max_dim / max(o.dimensions)