[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2366] trunk/py/scripts/addons/ io_import_scene_mhx.py: MHX importer: forced update of blinking and expression pinning.
Thomas Larsson
thomas_larsson_01 at hotmail.com
Wed Sep 28 04:23:53 CEST 2011
Revision: 2366
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2366
Author: thomasl
Date: 2011-09-28 02:23:50 +0000 (Wed, 28 Sep 2011)
Log Message:
-----------
MHX importer: forced update of blinking and expression pinning.
Modified Paths:
--------------
trunk/py/scripts/addons/io_import_scene_mhx.py
Modified: trunk/py/scripts/addons/io_import_scene_mhx.py
===================================================================
--- trunk/py/scripts/addons/io_import_scene_mhx.py 2011-09-27 16:57:42 UTC (rev 2365)
+++ trunk/py/scripts/addons/io_import_scene_mhx.py 2011-09-28 02:23:50 UTC (rev 2366)
@@ -26,7 +26,7 @@
"""
Abstract
MHX (MakeHuman eXchange format) importer for Blender 2.5x.
-Version 1.8.1
+Version 1.8.2
This script should be distributed with Blender.
If not, place it in the .blender/scripts/addons dir
@@ -39,7 +39,7 @@
bl_info = {
'name': 'Import: MakeHuman (.mhx)',
'author': 'Thomas Larsson',
- 'version': (1, 8, 1),
+ 'version': (1, 8, 2),
"blender": (2, 5, 9),
"api": 40335,
'location': "File > Import > MakeHuman (.mhx)",
@@ -52,7 +52,7 @@
MAJOR_VERSION = 1
MINOR_VERSION = 8
-SUB_VERSION = 1
+SUB_VERSION = 2
BLENDER_VERSION = (2, 59, 2)
#
@@ -3204,6 +3204,7 @@
else:
setBoneLocation(context, pbones[b+'_L'], scale, loc, False, setKey, frame)
setBoneLocation(context, pbones[b+'_R'], scale, loc, True, setKey, frame)
+ updatePose(rig)
return
def setBoneLocation(context, pb, scale, loc, mirror, setKey, frame):
@@ -3251,7 +3252,8 @@
vis = mohoVisemes[words[1]]
setViseme(context, vis, True, int(words[0])+offs)
fp.close()
- setInterpolation(context.object)
+ setInterpolation(rig)
+ updatePose(rig)
print("Moho file %s loaded" % filepath)
return
@@ -3268,7 +3270,8 @@
vis = magpieVisemes[words[3]]
setViseme(context, vis, True, int(words[0])+offs)
fp.close()
- setInterpolation(context.object)
+ setInterpolation(rig)
+ updatePose(rig)
print("Magpie file %s loaded" % filepath)
return
@@ -3343,8 +3346,29 @@
row = layout.row()
row.operator("mhx.pose_load_moho")
row.operator("mhx.pose_load_magpie")
+ layout.operator("mhx.update")
return
+
+#
+# updatePose(rig):
+# class VIEW3D_OT_MhxUpdateButton(bpy.types.Operator):
+#
+def updatePose(rig):
+ pb = rig.pose.bones["PFaceDisp"]
+ pb.location = pb.location
+ return
+
+class VIEW3D_OT_MhxUpdateButton(bpy.types.Operator):
+ bl_idname = "mhx.update"
+ bl_label = "Update"
+
+ def execute(self, context):
+ rig = getMhxRig(context.object)
+ updatePose(rig)
+ return{'FINISHED'}
+
+
###################################################################################
#
# Expression panel
@@ -3363,7 +3387,7 @@
props = getShapeProps(rig)
for (prop, name) in props:
rig[prop] = 0.0
- rig.update_tag()
+ updatePose(rig)
return{'FINISHED'}
#
@@ -3380,7 +3404,7 @@
frame = context.scene.frame_current
for (prop, name) in props:
rig.keyframe_insert('["%s"]' % prop, frame=frame)
- rig.update_tag()
+ updatePose(rig)
return{'FINISHED'}
#
# class VIEW3D_OT_MhxPinExpressionButton(bpy.types.Operator):
@@ -3410,7 +3434,7 @@
rig[prop] = 1.0
else:
rig[prop] = 0.0
- rig.update_tag()
+ updatePose(rig)
return{'FINISHED'}
#
@@ -3450,6 +3474,7 @@
layout.label(text="Expressions")
layout.operator("mhx.pose_reset_expressions")
layout.operator("mhx.pose_key_expressions")
+ #layout.operator("mhx.update")
layout.separator()
for (prop, name) in props:
row = layout.split(0.85)
More information about the Bf-extensions-cvs
mailing list