[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25213] trunk/blender/release/scripts/ modules/rigify: minor fixes

Campbell Barton ideasman42 at gmail.com
Tue Dec 8 15:02:07 CET 2009


Revision: 25213
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25213
Author:   campbellbarton
Date:     2009-12-08 15:02:06 +0100 (Tue, 08 Dec 2009)

Log Message:
-----------
minor fixes

Modified Paths:
--------------
    trunk/blender/release/scripts/modules/rigify/__init__.py
    trunk/blender/release/scripts/modules/rigify/leg.py
    trunk/blender/release/scripts/modules/rigify/spine.py

Modified: trunk/blender/release/scripts/modules/rigify/__init__.py
===================================================================
--- trunk/blender/release/scripts/modules/rigify/__init__.py	2009-12-08 13:57:51 UTC (rev 25212)
+++ trunk/blender/release/scripts/modules/rigify/__init__.py	2009-12-08 14:02:06 UTC (rev 25213)
@@ -276,7 +276,8 @@
         if not (new_pbone.bone.connected or (False not in new_pbone.lock_location)):
             blend_location(new_pbone, from_bone_name, to_bone_name)
 
-        blend_rotation(new_pbone, from_bone_name, to_bone_name)
+        if not (False not in new_pbone.lock_rotation): # TODO. 4D chech?
+            blend_rotation(new_pbone, from_bone_name, to_bone_name)
 
 
 def add_stretch_to(obj, from_name, to_name, name):
@@ -364,7 +365,7 @@
     return poll_name
 
 
-def generate_rig(context, obj_orig, prefix="ORG-"):
+def generate_rig(context, obj_orig, prefix="ORG-", META_DEF=True):
     from collections import OrderedDict
 
     global_undo = context.user_preferences.edit.global_undo
@@ -372,15 +373,20 @@
 
     bpy.ops.object.mode_set(mode='OBJECT')
 
+    scene = context.scene
 
     # copy object and data
     obj_orig.selected = False
     obj = obj_orig.copy()
     obj.data = obj_orig.data.copy()
-    scene = context.scene
     scene.objects.link(obj)
     scene.objects.active = obj
     obj.selected = True
+    
+    if META_DEF:
+        obj_def = obj_orig.copy()
+        obj_def.data = obj_orig.data.copy()
+        scene.objects.link(obj_def)
 
     arm = obj.data
 
@@ -481,9 +487,22 @@
             if len(result_submod) == 2:
                 blend_bone_list(obj, definition, result_submod[0], result_submod[1])
 
-    # needed to update driver deps
-    # context.scene.update()
 
+    if META_DEF:
+        # for pbone in obj_def.pose.bones:
+        for bone_name, bone_name_new in base_names.items():
+            #pbone_from = bone_name
+            pbone = obj_def.pose.bones[bone_name_new]
+            
+            con = pbone.constraints.new('COPY_ROTATION')
+            con.target = obj
+            con.subtarget = bone_name
+
+            if not pbone.bone.connected:
+                con = pbone.constraints.new('COPY_LOCATION')
+                con.target = obj
+                con.subtarget = bone_name
+
     # Only for demo'ing
 
     # obj.restrict_view = True

Modified: trunk/blender/release/scripts/modules/rigify/leg.py
===================================================================
--- trunk/blender/release/scripts/modules/rigify/leg.py	2009-12-08 13:57:51 UTC (rev 25212)
+++ trunk/blender/release/scripts/modules/rigify/leg.py	2009-12-08 14:02:06 UTC (rev 25213)
@@ -225,7 +225,7 @@
     con.weight = 1.0
 
     con.target = obj
-    con.subtarget = ik.foot
+    con.subtarget = ik_chain.foot
 
     con.pole_target = obj
     con.pole_subtarget = ik.knee_target
@@ -279,7 +279,7 @@
     ex.thigh_socket = ex.thigh_socket_e.name
     ex.thigh_socket_e.tail = ex.thigh_socket_e.head + Vector(0.0, 0.0, ex.thigh_socket_e.length / 4.0)
 
-    ex.thigh_hinge_e = copy_bone_simple(arm, mt_chain.thigh, "MCH-%s_hinge" % base_names[mt_chain.thigh], parent=True)
+    ex.thigh_hinge_e = copy_bone_simple(arm, mt_chain.thigh, "MCH-%s_hinge" % base_names[mt_chain.thigh])
     ex.thigh_hinge = ex.thigh_hinge_e.name
     ex.thigh_hinge_e.tail = ex.thigh_hinge_e.head + Vector(0.0, 0.0, mt_chain.thigh_e.head.length)
     ex.thigh_hinge_e.translate(Vector( - (mt.hips_e.head.x - mt_chain.thigh_e.head.x), 0.0, 0.0))

Modified: trunk/blender/release/scripts/modules/rigify/spine.py
===================================================================
--- trunk/blender/release/scripts/modules/rigify/spine.py	2009-12-08 13:57:51 UTC (rev 25212)
+++ trunk/blender/release/scripts/modules/rigify/spine.py	2009-12-08 14:02:06 UTC (rev 25213)
@@ -360,7 +360,7 @@
     prop["soft_max"] = 1.0
 
     prop = rna_idprop_ui_prop_get(mt.ribcage_p, "pivot_slide", create=True)
-    mt.ribcage_p["pivot_slide"] = 0.5
+    mt.ribcage_p["pivot_slide"] = 1.0 / spine_chain_len
     prop["soft_min"] = 1.0 / spine_chain_len
     prop["soft_max"] = 1.0
 





More information about the Bf-blender-cvs mailing list