Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2005-07-24 15:36:05 +0400
committerTon Roosendaal <ton@blender.org>2005-07-24 15:36:05 +0400
commit4d273d8d5b9eb471f82ee49819905eedb68d6a4f (patch)
treec27fb4ba1f2dff92f75e998d8c03dd9ad627053a /source/blender/src/space.c
parent1d27a7676b261cd5eecde5828a396398376f6af1 (diff)
Armature-Pose IK goodies!
- Added option to the IK buttons, to have it use the 'tip' as end of the IK chain. I never really understood this old convention (IK didn't work on the Bone itself). Old files still will read OK though. But I made the "To Tip" a default when adding new IK constraints. - Hotkey CTRL+I: add IK, with option to have it adding an Empty target, or use a selected Bone as target. With the new non-modal PoseMode, it gives instant access to playing with the IK chain. - Hotkey ALT+I: clears IK, on all selected Bones - Hotkey ALT+C: clears Constraints on all selected Bones (incl IK)
Diffstat (limited to 'source/blender/src/space.c')
-rw-r--r--source/blender/src/space.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/source/blender/src/space.c b/source/blender/src/space.c
index 895a292bffa..c112fd059fc 100644
--- a/source/blender/src/space.c
+++ b/source/blender/src/space.c
@@ -103,6 +103,7 @@
#include "BIF_meshtools.h"
#include "BIF_mywindow.h"
#include "BIF_oops.h"
+#include "BIF_poseobject.h"
#include "BIF_outliner.h"
#include "BIF_resources.h"
#include "BIF_screen.h"
@@ -1122,7 +1123,10 @@ static void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
copy_attr_menu();
}
else if(G.qual==LR_ALTKEY) {
- convertmenu(); /* editobject.c */
+ if(ob && (ob->flag & OB_POSEMODE))
+ pose_clear_constraints(); /* poseobject.c */
+ else
+ convertmenu(); /* editobject.c */
}
else if((G.qual==LR_SHIFTKEY)) {
view3d_home(1);
@@ -1295,6 +1299,17 @@ static void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
}
break;
case IKEY:
+ if(G.obedit);
+ else if(G.qual==LR_CTRLKEY) {
+ if(ob && ob->type==OB_ARMATURE)
+ if(ob->flag & OB_POSEMODE)
+ pose_add_IK();
+ }
+ else if(G.qual==LR_ALTKEY) {
+ if(ob && ob->type==OB_ARMATURE)
+ if(ob->flag & OB_POSEMODE)
+ pose_clear_IK();
+ }
break;
case JKEY: