Blender 3D python对于每个姿势骨骼添加一个约束不起作用

时间:2015-06-24 12:21:52

标签: python-2.7 blender blender-2.61 blender-2.67

        selected = bpy.context.selected_pose_bones
        for bone in selected:
            bpy.ops.pose.constraint_add(type='COPY_ROTATION')

每次我运行它时,相同的姿势骨上的约束力不会出现在所有姿势骨骼上。

是否有人知道如何在每个选定的姿势骨骼上添加约束。

1 个答案:

答案 0 :(得分:3)

bpy.ops.pose.constraint_add()是一个仅影响活动项的运算符,在本例中是一个姿势骨骼。在循环选择中的骨骼时,在循环时不使用对每个骨骼的引用。

您可以手动在每个特定骨骼上创建约束,并在使用时调整其他参数,而不是使用操作符。

for bone in bpy.context.selected_pose_bones:
    nc = bone.constraints.new(type='COPY_ROTATION')
    nc.target = bpy.data.objects['Armature']
    nc.subtarget = bone.parent
    nc.influence = 0.5