Select layer?

How do I change the working layer with Python? I need to delete some objects in a different layer.

hi

may be this can help you:

import bpy

#change for TRUE the layer (s) that you want  activate
bpy.context.scene.layers[0] = False
bpy.context.scene.layers[1] = False
bpy.context.scene.layers[2] = False
bpy.context.scene.layers[3] = False
bpy.context.scene.layers[4] = False
bpy.context.scene.layers[5] = False
bpy.context.scene.layers[6] = False
bpy.context.scene.layers[7] = True
bpy.context.scene.layers[8] = False
bpy.context.scene.layers[9] = False
bpy.context.scene.layers[10] = False
bpy.context.scene.layers[11] = False
bpy.context.scene.layers[12] = False
bpy.context.scene.layers[13] = False
bpy.context.scene.layers[14] = False
bpy.context.scene.layers[15] = False
bpy.context.scene.layers[16] = False
bpy.context.scene.layers[17] = False
bpy.context.scene.layers[18] = False
bpy.context.scene.layers[19] = False



here for example the active layer is the #8 bpy.context.scene.layers[7] = True

best

Diego

Please don’t do it that way, you can do it smarter like this:

import bpy

l = [False] * 20
l[7] = True
bpy.context.scene.layers = l

YES, that is better :smiley:

best

Thanks for the replies, I’ll check it when I can…

For future reference, bundled as a function is very practical:


def selectLayer(layer):
        layers = [False] * 20
        layers[layer - 1] = True
        bpy.context.scene.layers = layers    

And then call it like:


selectLayer(20) #or any other layer you want