[Bf-extensions-cvs] [ee49cd3] master: correct a bug and add a new visualization option to make the object in the layer in wire o in solid mode
anfeo
noreply at git.blender.org
Wed Apr 30 13:28:03 CEST 2014
Commit: ee49cd3abba1abd2da2af847d4226f7ae0224f54
Author: anfeo
Date: Wed Apr 30 13:27:49 2014 +0200
https://developer.blender.org/rBACee49cd3abba1abd2da2af847d4226f7ae0224f54
correct a bug and add a new visualization option to make the object in the layer in wire o in solid mode
===================================================================
M ui_layer_manager.py
===================================================================
diff --git a/ui_layer_manager.py b/ui_layer_manager.py
index e6d8cce..188bf2f 100644
--- a/ui_layer_manager.py
+++ b/ui_layer_manager.py
@@ -41,6 +41,9 @@ EDIT = ["EDIT_MESH", "EDIT_CURVE", "EDIT_SURFACE", "EDIT_METABALL", "EDIT_TEXT",
class LayerGroups(bpy.types.PropertyGroup):
toggle = BoolProperty(name="", default=False)
+ wire = BoolProperty(name="", default=False)
+
+
lock = BoolProperty(name="", default=False)
@@ -123,9 +126,9 @@ class LayerToggle(bpy.types.Operator):
#prop definition
#layer number
- layerN = bpy.props.IntProperty()
- spacecheck = bpy.props.BoolProperty()
- index_group = bpy.props.IntProperty()
+ layerN = IntProperty()
+ spacecheck = BoolProperty()
+ index_group = IntProperty()
@classmethod
@@ -146,25 +149,25 @@ class LayerToggle(bpy.types.Operator):
else:
space = context.scene
- if layerN==-1:
+ if layerN == -1:
index = self.index_group
groups = scene.layergroups[index].layer_groups
layergroups = scene.layergroups[index]
layers = space.layers
- union= [False]*20
+ union = [False]*20
if not layergroups.toggle:
for i in range(0,20):
- union[i]= groups[i] or layers[i]
+ union[i] = groups[i] or layers[i]
- space.layers=union
- layergroups.toggle=True
+ space.layers = union
+ layergroups.toggle = True
else:
for i in range(0,20):
- union[i]= not groups[i] and layers[i]
+ union[i] = not groups[i] and layers[i]
space.layers=union
layergroups.toggle=False
@@ -177,14 +180,14 @@ class LayerToggle(bpy.types.Operator):
toggle = False
else:
- toggle= True
- space.layers[layerN]=toggle
+ toggle = True
+ space.layers[layerN] = toggle
else:
layer = [False]*20
- layer[layerN]=True
- space.layers=layer
+ layer[layerN] = True
+ space.layers = layer
if space.layers[layerN]:
toggle = False
@@ -202,7 +205,7 @@ class MergeSelected(bpy.types.Operator):
#prop definition
#layer number
- layerN = bpy.props.IntProperty()
+ layerN = IntProperty()
@classmethod
@@ -214,18 +217,18 @@ class MergeSelected(bpy.types.Operator):
layerN = self.layerN
- scene= context.scene
+ scene = context.scene
#cyecle all object in the layer
for obj in scene.objects:
if obj.select:
- visible=False
+ visible = False
for i in range(0,20):
if obj.layers[i] and scene.layers[i]:
- visible=True
+ visible = True
break
if visible:
@@ -241,8 +244,8 @@ class MergeSelected(bpy.types.Operator):
else:
layer = [False]*20
- layer[layerN]=True
- obj.layers=layer
+ layer[layerN] = True
+ obj.layers = layer
if obj.layers[layerN]:
toggle = False
@@ -254,6 +257,77 @@ class MergeSelected(bpy.types.Operator):
return self.execute(context)
+class MakeWireLayer(bpy.types.Operator):
+ '''Make Wire All Objects on this Layer'''
+ bl_idname = "object.wirelayer"
+ bl_label = "Make Wire Draw the object on this layer"
+
+ #prop definition
+ #layer number
+ layerN = IntProperty()
+
+ #lock status
+ wire = BoolProperty()
+
+ index_group = IntProperty()
+
+ @classmethod
+
+ def poll(cls, context):
+
+ return context.scene
+
+ def execute(self, context):
+
+ scene = context.scene
+ layerN = self.layerN
+ wire = self.wire
+
+ view_3d = context.area.spaces.active
+
+ #check if layer have some thing
+ if view_3d.layers_used[layerN] or layerN == -1:
+
+ if wire:
+ display = 'WIRE'
+
+ else:
+ display = 'TEXTURED'
+ #cyecle all object in the layer
+ for obj in context.scene.objects:
+
+ if layerN == -1:
+
+ index = self.index_group
+ groups = scene.layergroups[index].layer_groups
+ layers = obj.layers
+
+ layergroup = [False]*20
+
+ for i in range (0,20):
+ layergroup[i] = layers[i] and groups[i]
+
+ if True in layergroup:
+ obj.draw_type = display
+
+
+ scene.layergroups[index].wire = not wire
+
+ else:
+ if obj.layers[layerN]:
+
+ obj.draw_type = display
+
+
+ scene.WireLayer[layerN] = not wire
+
+ return {'FINISHED'}
+
+
+
+
+
+
class LockSelected(bpy.types.Operator):
'''Loock All Objects on this Layer'''
bl_idname = "object.lockselected"
@@ -261,12 +335,12 @@ class LockSelected(bpy.types.Operator):
#prop definition
#layer number
- layerN = bpy.props.IntProperty()
+ layerN = IntProperty()
#lock status
- lock = bpy.props.BoolProperty()
+ lock = BoolProperty()
- index_group = bpy.props.IntProperty()
+ index_group = IntProperty()
@classmethod
@@ -278,39 +352,39 @@ class LockSelected(bpy.types.Operator):
scene = context.scene
layerN = self.layerN
- lock =self.lock
+ lock = self.lock
view_3d = context.area.spaces.active
#check if layer have some thing
- if view_3d.layers_used[layerN] or layerN==-1:
+ if view_3d.layers_used[layerN] or layerN == -1:
#cyecle all object in the layer
for obj in context.scene.objects:
- if layerN==-1:
+ if layerN == -1:
index = self.index_group
groups = scene.layergroups[index].layer_groups
layers = obj.layers
- layergroup=[False]*20
+ layergroup = [False]*20
for i in range (0,20):
- layergroup[i]= layers[i] and groups[i]
+ layergroup[i] = layers[i] and groups[i]
if True in layergroup:
- obj.hide_select=not lock
- obj.select=False
+ obj.hide_select = not lock
+ obj.select = False
- scene.layergroups[index].lock=not lock
+ scene.layergroups[index].lock = not lock
else:
if obj.layers[layerN]:
- obj.hide_select=not lock
- obj.select=False
+ obj.hide_select = not lock
+ obj.select = False
- scene.LockLayer[layerN]= not lock
+ scene.LockLayer[layerN] = not lock
return {'FINISHED'}
@@ -329,7 +403,7 @@ class SelectObjectsLayer(bpy.types.Operator):
def execute(self, context):
view_3d = context.area.spaces.active
- select_obj= self.select_obj
+ select_obj = self.select_obj
layerN = self.layerN
scene = context.scene
i = 0
@@ -358,7 +432,7 @@ class SelectObjectsLayer(bpy.types.Operator):
else:
- shift= self.shift
+ shift = self.shift
bpy.ops.object.select_by_layer(extend=shift, layers=layerN+1)
@@ -374,7 +448,7 @@ class AllLayersSelect(bpy.types.Operator):
bl_idname = "scene.layersselect"
bl_label = "Select All Layer"
- vis = bpy.props.BoolProperty()
+ vis = BoolProperty()
@classmethod
def poll(cls, context):
@@ -393,7 +467,7 @@ class AllLayersSelect(bpy.types.Operator):
space= scene
else:
- space= view_3d
+ space = view_3d
if not vis:
for i in range (0,20):
@@ -425,44 +499,48 @@ class LayerName(bpy.types.Panel):
bl_options = {'DEFAULT_CLOSED'}
bl_category = "Layer"
# layer name prop definition
- bpy.types.Scene.LayerName1 = bpy.props.StringProperty(name="Layer Name", default='layer1')
- bpy.types.Scene.LayerName2 = bpy.props.StringProperty(name="Layer Name", default='layer2')
- bpy.types.Scene.LayerName3 = bpy.props.StringProperty(name="Layer Name", default='layer3')
- bpy.types.Scene.LayerName4 = bpy.props.StringProperty(name="Layer Name", default='layer4')
- bpy.types.Scene.LayerName5 = bpy.props.StringProperty(name="Layer Name", default='layer5')
- bpy.types.Scene.LayerName6 = bpy.props.StringProperty(name="Layer Name", default='layer6')
- bpy.types.Scene.LayerName7 = bpy.props.StringProperty(name="Layer Name", default='layer7')
- bpy.types.Scene.LayerName8 = bpy.props.StringProperty(name="Layer Name", default='layer8')
- bpy.types.Scene.LayerName9 = bpy.props.StringProperty(name="Layer Name", default='layer9')
- bpy.types.Scene.LayerName10 = bpy.props.StringProperty(name="Layer Name", default='layer10')
- bpy.types.Scene.LayerName11 = bpy.props.StringProperty(name="Layer Name", default='layer11')
- bpy.types.Scene.LayerName12 = bpy.props.StringProperty(name="Layer Name", default='layer12')
- bpy.types.Scene.LayerName13 = bpy.props.StringProperty(name="Layer Name", default='layer13')
- bpy.types.Scene.LayerName14 = bpy.props.StringProperty(name="Layer Name", default='layer14')
- bpy.types.Scene.LayerName15 = bpy.props.StringProperty(name
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list