diff options
Diffstat (limited to 'source/blender/editors/armature/pose_slide.c')
-rw-r--r-- | source/blender/editors/armature/pose_slide.c | 56 |
1 files changed, 37 insertions, 19 deletions
diff --git a/source/blender/editors/armature/pose_slide.c b/source/blender/editors/armature/pose_slide.c index 52e580a94af..7ba22fca2f6 100644 --- a/source/blender/editors/armature/pose_slide.c +++ b/source/blender/editors/armature/pose_slide.c @@ -87,28 +87,43 @@ /* Temporary data shared between these operators */ typedef struct tPoseSlideOp { - Scene *scene; /* current scene */ - ScrArea *sa; /* area that we're operating in (needed for modal()) */ - ARegion *ar; /* region that we're operating in (needed for modal()) */ - uint objects_len; /* len of the PoseSlideObject array. */ - - ListBase pfLinks; /* links between posechannels and f-curves for all the pose objects. */ - DLRBT_Tree keys; /* binary tree for quicker searching for keyframes (when applicable) */ + /** current scene */ + Scene *scene; + /** area that we're operating in (needed for modal()) */ + ScrArea *sa; + /** region that we're operating in (needed for modal()) */ + ARegion *ar; + /** len of the PoseSlideObject array. */ + uint objects_len; + + /** links between posechannels and f-curves for all the pose objects. */ + ListBase pfLinks; + /** binary tree for quicker searching for keyframes (when applicable) */ + DLRBT_Tree keys; - int cframe; /* current frame number - global time */ + /** current frame number - global time */ + int cframe; - int prevFrame; /* frame before current frame (blend-from) - global time */ - int nextFrame; /* frame after current frame (blend-to) - global time */ + /** frame before current frame (blend-from) - global time */ + int prevFrame; + /** frame after current frame (blend-to) - global time */ + int nextFrame; - short mode; /* sliding mode (ePoseSlide_Modes) */ - short flag; /* unused for now, but can later get used for storing runtime settings.... */ + /** sliding mode (ePoseSlide_Modes) */ + short mode; + /** unused for now, but can later get used for storing runtime settings.... */ + short flag; - short channels; /* which transforms/channels are affected (ePoseSlide_Channels) */ - short axislock; /* axis-limits for transforms (ePoseSlide_AxisLock) */ + /** which transforms/channels are affected (ePoseSlide_Channels) */ + short channels; + /** axis-limits for transforms (ePoseSlide_AxisLock) */ + short axislock; - float percentage; /* 0-1 value for determining the influence of whatever is relevant */ + /** 0-1 value for determining the influence of whatever is relevant */ + float percentage; - NumInput num; /* numeric input */ + /** numeric input */ + NumInput num; struct tPoseSlideObject *ob_data_array; } tPoseSlideOp; @@ -361,7 +376,8 @@ static void pose_slide_apply_val( * - numerator should be larger than denominator to 'expand' the result * - perform this weighting a number of times given by the percentage... */ - int iters = (int)ceil(10.0f * pso->percentage); /* TODO: maybe a sensitivity ctrl on top of this is needed */ + /* TODO: maybe a sensitivity ctrl on top of this is needed */ + int iters = (int)ceil(10.0f * pso->percentage); while (iters-- > 0) { (*val) = (-((sVal * w2) + (eVal * w1)) + ((*val) * 6.0f) ) / 5.0f; @@ -374,7 +390,8 @@ static void pose_slide_apply_val( * - numerator should be smaller than denominator to 'relax' the result * - perform this weighting a number of times given by the percentage... */ - int iters = (int)ceil(10.0f * pso->percentage); /* TODO: maybe a sensitivity ctrl on top of this is needed */ + /* TODO: maybe a sensitivity ctrl on top of this is needed */ + int iters = (int)ceil(10.0f * pso->percentage); while (iters-- > 0) { (*val) = ( ((sVal * w2) + (eVal * w1)) + ((*val) * 5.0f) ) / 6.0f; @@ -579,7 +596,8 @@ static void pose_slide_apply_quat(tPoseSlideOp *pso, tPChanFCurveLink *pfl) } else { float quat_interp[4], quat_orig[4]; - int iters = (int)ceil(10.0f * pso->percentage); /* TODO: maybe a sensitivity ctrl on top of this is needed */ + /* TODO: maybe a sensitivity ctrl on top of this is needed */ + int iters = (int)ceil(10.0f * pso->percentage); /* perform this blending several times until a satisfactory result is reached */ while (iters-- > 0) { |