Select all objects and layers (visible and unvisible or locked) without changing their state


Is there an option to select everything in all layers, even if hidden or locked, without changing this state of visibility?
The reason I’m asking is, I’d like to scale entire document without turning visibility and locked states objects and layers.

Hello - if you are scaling according to units used (inches/mm) you can scale by changing the units in DocumentProperties > Units page.

here’s a script to scale everything in the file at once

import Rhino
import scriptcontext as sc
import rhinoscriptsyntax as rs

def ScaleEverything():
    factor = 1
    if sc.sticky.has_key('SCALEALLFACTOR'):
        factor = sc.sticky['SCALEALLFACTOR']
    ids = rs.AllObjects()
    if not ids: return
    factor = rs.GetReal("Scale factor", factor)
    if not factor: return
    sc.sticky['SCALEALLFACTOR'] = factor
    rs.ScaleObjects(ids, Rhino.Geometry.Plane.WorldXY.Origin, [factor, factor, factor])
if __name__ == '__main__': ScaleEverything() (529 Bytes)

To use the Python script use RunPythonScript, or a macro:

_-RunPythonScript "Full path to py file inside double-quotes"


Or type Units in the command line which goes to DocumentProperties > Units page.

You can also change to “Custom” units with the unit size defined relative to a meter. So if you are currently in millimeters and need to scale by a factor of 3.667 change the units to Custom, define a new custom unit (with any name desired) specified as 3667 units to the meter, and when completing the command click Yes to the queston about scaling by a factor of 3.667. Then you can go back to mm by going to the Units page, selecting mm, and click no when asked if you wish to scale by a factor of … (ie change the units but not the numerical size).

1 Like

Thanks for both suggestions. Much appreciated!