diff options
author | Ton Roosendaal <ton@blender.org> | 2005-10-24 01:36:24 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2005-10-24 01:36:24 +0400 |
commit | ec58f413b1c77bcaa0ad0db4f751e75753cb5b03 (patch) | |
tree | 472af1623136ace75ff7799344f6673491331087 /source/blender/src/header_ipo.c | |
parent | e02336653df6177dbca04e9b624b0abef8c9f910 (diff) |
Autohandles in Ipo Window still could overshoot. Added a new clamping to
ensure the handles never result in a curve that goes beyond the neighbour
control points.
http://www.blender.org/cms/Animation_Curve_Handle.717.0.html
Diffstat (limited to 'source/blender/src/header_ipo.c')
-rw-r--r-- | source/blender/src/header_ipo.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/source/blender/src/header_ipo.c b/source/blender/src/header_ipo.c index 1508c61830d..73439ec22bf 100644 --- a/source/blender/src/header_ipo.c +++ b/source/blender/src/header_ipo.c @@ -390,6 +390,9 @@ static void do_ipo_editmenu_handlemenu(void *arg, int event) case 3: sethandles_ipo(HD_VECT); break; + case 4: + sethandles_ipo(HD_AUTO_ANIM); + break; } } @@ -402,6 +405,7 @@ static uiBlock *ipo_editmenu_handlemenu(void *arg_unused) uiBlockSetButmFunc(block, do_ipo_editmenu_handlemenu, NULL); uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Auto|Shift H", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 0, ""); + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Auto Clamped|Alt H", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 4, ""); uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Aligned|H", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 1, ""); uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Free|H", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 2, ""); uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Vector|V", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 3, ""); @@ -531,6 +535,10 @@ static void do_ipo_editmenu(void *arg, int event) case 6: /*IPO Editmode*/ set_editflag_editipo(); + break; + case 7: + sethandles_ipo(HD_AUTO_ANIM); + break; } } @@ -587,9 +595,10 @@ static uiBlock *ipo_editmenu(void *arg_unused) uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Delete|X", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 0, ""); uiDefIconTextBlockBut(block, ipo_editmenu_joinmenu, NULL, ICON_RIGHTARROW_THIN, "Join", 0, yco-=20, 120, 19, ""); + uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Auto Clamped Handles|ALT H", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 7, ""); + if (!G.sipo->showkey){ - uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); - uiDefIconTextBlockBut(block, ipo_editmenu_extendmenu, NULL, ICON_RIGHTARROW_THIN, "Extend Mode", 0, yco-=20, 120, 19, ""); uiDefIconTextBlockBut(block, ipo_editmenu_intpolmenu, NULL, ICON_RIGHTARROW_THIN, "Interpolation Mode", 0, yco-=20, 120, 20, ""); if(ei != NULL && (ei->flag & IPO_EDIT)) |