diff options
author | Joshua Leung <aligorith@gmail.com> | 2007-12-05 14:19:36 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2007-12-05 14:19:36 +0300 |
commit | 5c13e8214062515779cde61fb57d4a8e29cd0c57 (patch) | |
tree | 0f3d795f269bc87146fcdb28d406b4a88985ea2a /source/blender/blenkernel/intern/armature.c | |
parent | 8493fa986bfd01c4d7e98d8afbccbfec44f78d5b (diff) |
Two transform tweaks:
* [Peach Request] AutoIK now respects axis locking (rotation locks).
- Temporary DOF-Locks are turned on for those bones that are part of an AutoIK chain while transforming. These locks get cleared after transforming.
- This works for all bones except the root bone of the chain, which doesn't seem to be able to be locked.
* Limit Location constraint can now optionally affect Translations too (i.e. NKEY panel values won't change).
- LimitRot,LimitScale support (for their respective transforms) will be done at a later date
- This only works if the constraint is using World/Local space (the other spaces are not supported yet).
- I've added a temporary button in the LimitLoc panel to enable this option (it is disabled by default). This button will be properly assigned a place in that panel sometime.
Diffstat (limited to 'source/blender/blenkernel/intern/armature.c')
-rw-r--r-- | source/blender/blenkernel/intern/armature.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/armature.c b/source/blender/blenkernel/intern/armature.c index ab15770c3df..6bdb663545c 100644 --- a/source/blender/blenkernel/intern/armature.c +++ b/source/blender/blenkernel/intern/armature.c @@ -1589,11 +1589,11 @@ static void execute_posetree(Object *ob, PoseTree *tree) /* set DoF flag */ flag= 0; - if((pchan->ikflag & BONE_IK_NO_XDOF) == 0) + if(!(pchan->ikflag & BONE_IK_NO_XDOF) && !(pchan->ikflag & BONE_IK_NO_XDOF_TEMP)) flag |= IK_XDOF; - if((pchan->ikflag & BONE_IK_NO_YDOF) == 0) + if(!(pchan->ikflag & BONE_IK_NO_YDOF) && !(pchan->ikflag & BONE_IK_NO_YDOF_TEMP)) flag |= IK_YDOF; - if((pchan->ikflag & BONE_IK_NO_ZDOF) == 0) + if(!(pchan->ikflag & BONE_IK_NO_ZDOF) && !(pchan->ikflag & BONE_IK_NO_ZDOF_TEMP)) flag |= IK_ZDOF; if(tree->stretch && (pchan->ikstretch > 0.0)) { |