[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35209] trunk/blender/source/blender/ editors: Small animation tweaks:
Joshua Leung
aligorith at gmail.com
Sun Feb 27 03:12:27 CET 2011
Ah, I wasn't aware of those problems on such keyboards. One problem we
have with using just plain pageup/down is that this means that it
would clash with PageUp/Down scroll-by-page in Outliner and similar 2D
views. There, PageUp/Down is quite a logical combination.
Anyways, this was just a thought. The current Ctrl-PageUp/Down does
indeed feel clunky
On Sun, Feb 27, 2011 at 2:56 PM, Daniel Salazar - 3Developer.com
<zanqdo at gmail.com> wrote:
> Could it ber just PageUp and PageDown? for non english keyboards the
> <> keys change all around, its a mess. I agree Ctrl Pageup/Down is too
> much of a hastle
>
> cheers
>
> Daniel Salazar
> www.3developer.com
>
>
>
> 2011/2/26 Joshua Leung <aligorith at gmail.com>:
>> Revision: 35209
>> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35209
>> Author: aligorith
>> Date: 2011-02-27 01:53:05 +0000 (Sun, 27 Feb 2011)
>> Log Message:
>> -----------
>> Small animation tweaks:
>> - Fixed problem where just trying to replace existing keyframes would
>> result in the intepolation set on that keyframe to get lost. This was
>> mostly an issue if trying to re-block some animation in the middle of
>> a shot, with the rest of the keys set to Bezier, but the first
>> keyframe in this new segment needing to be Constant so that we don't
>> get sloppy automatic interpolation in the way
>>
>> - Hooked up Media-Play/Stop/Next/Prev controls to animation playback
>> and keyframe jumping functionality in default keymap in addition the
>> existing controls. I'm also considering whether to migrate Next/Prev
>> Keyframe key mappings off the Ctrl-PageUp/Down keys for a more
>> ergonomic option (i.e. shift <, shift >)
>>
>> Modified Paths:
>> --------------
>> trunk/blender/source/blender/editors/animation/keyframes_general.c
>> trunk/blender/source/blender/editors/animation/keyframing.c
>> trunk/blender/source/blender/editors/screen/screen_ops.c
>>
>> Modified: trunk/blender/source/blender/editors/animation/keyframes_general.c
>> ===================================================================
>> --- trunk/blender/source/blender/editors/animation/keyframes_general.c 2011-02-26 22:48:17 UTC (rev 35208)
>> +++ trunk/blender/source/blender/editors/animation/keyframes_general.c 2011-02-27 01:53:05 UTC (rev 35209)
>> @@ -323,7 +323,7 @@
>> }
>>
>> /* calculate the new smoothed F-Curve's with weighted averages:
>> - * - this is done with two passes
>> + * - this is done with two passes to avoid progressive corruption errors
>> * - uses 5 points for each operation (which stores in the relevant handles)
>> * - previous: w/a ratio = 3:5:2:1:1
>> * - next: w/a ratio = 1:1:2:5:3
>>
>> Modified: trunk/blender/source/blender/editors/animation/keyframing.c
>> ===================================================================
>> --- trunk/blender/source/blender/editors/animation/keyframing.c 2011-02-26 22:48:17 UTC (rev 35208)
>> +++ trunk/blender/source/blender/editors/animation/keyframing.c 2011-02-27 01:53:05 UTC (rev 35209)
>> @@ -295,6 +295,7 @@
>> int insert_vert_fcurve (FCurve *fcu, float x, float y, short flag)
>> {
>> BezTriple beztr= {{{0}}};
>> + int oldTot = fcu->totvert;
>> int a;
>>
>> /* set all three points, for nicer start position
>> @@ -330,10 +331,16 @@
>> if ((fcu->totvert > 2) && (flag & INSERTKEY_REPLACE)==0) {
>> BezTriple *bezt= (fcu->bezt + a);
>>
>> - /* set interpolation from previous (if available) */
>> - // FIXME: this doesn't work if user tweaked the interpolation specifically, and they were just overwriting some existing key in the process...
>> - if (a > 0) bezt->ipo= (bezt-1)->ipo;
>> - else if (a < fcu->totvert-1) bezt->ipo= (bezt+1)->ipo;
>> + /* set interpolation from previous (if available), but only if we didn't just replace some keyframe
>> + * - replacement is indicated by no-change in number of verts
>> + * - when replacing, the user may have specified some interpolation that should be kept
>> + */
>> + if (fcu->totvert > oldTot) {
>> + if (a > 0)
>> + bezt->ipo= (bezt-1)->ipo;
>> + else if (a < fcu->totvert-1)
>> + bezt->ipo= (bezt+1)->ipo;
>> + }
>>
>> /* don't recalculate handles if fast is set
>> * - this is a hack to make importers faster
>>
>> Modified: trunk/blender/source/blender/editors/screen/screen_ops.c
>> ===================================================================
>> --- trunk/blender/source/blender/editors/screen/screen_ops.c 2011-02-26 22:48:17 UTC (rev 35208)
>> +++ trunk/blender/source/blender/editors/screen/screen_ops.c 2011-02-27 01:53:05 UTC (rev 35209)
>> @@ -3221,11 +3221,17 @@
>> WM_keymap_add_item(keymap, "SCREEN_OT_keyframe_jump", PAGEUPKEY, KM_PRESS, KM_CTRL, 0);
>> RNA_boolean_set(WM_keymap_add_item(keymap, "SCREEN_OT_keyframe_jump", PAGEDOWNKEY, KM_PRESS, KM_CTRL, 0)->ptr, "next", 0);
>>
>> + WM_keymap_add_item(keymap, "SCREEN_OT_keyframe_jump", MEDIALAST, KM_PRESS, 0, 0);
>> + RNA_boolean_set(WM_keymap_add_item(keymap, "SCREEN_OT_keyframe_jump", MEDIAFIRST, KM_PRESS, 0, 0)->ptr, "next", 0);
>> +
>> /* play (forward and backwards) */
>> WM_keymap_add_item(keymap, "SCREEN_OT_animation_play", AKEY, KM_PRESS, KM_ALT, 0);
>> RNA_boolean_set(WM_keymap_add_item(keymap, "SCREEN_OT_animation_play", AKEY, KM_PRESS, KM_ALT|KM_SHIFT, 0)->ptr, "reverse", 1);
>> WM_keymap_add_item(keymap, "SCREEN_OT_animation_cancel", ESCKEY, KM_PRESS, 0, 0);
>>
>> + WM_keymap_add_item(keymap, "SCREEN_OT_animation_play", MEDIAPLAY, KM_PRESS, 0, 0);
>> + WM_keymap_add_item(keymap, "SCREEN_OT_animation_cancel", MEDIASTOP, KM_PRESS, 0, 0);
>> +
>> /* Alternative keys for animation and sequencer playing */
>> #if 0 // XXX: disabled for restoring later... bad implementation
>> keymap= WM_keymap_find(keyconf, "Frames", 0, 0);
>>
>> _______________________________________________
>> Bf-blender-cvs mailing list
>> Bf-blender-cvs at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-blender-cvs
>>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
More information about the Bf-committers
mailing list